Skip to content

Commit 1423dc8

Browse files
authored
Merge pull request #114 from kumargauravsharma/delete-api-change
Returning the latest resource from the Delete() call
2 parents 901c958 + f29b01f commit 1423dc8

File tree

4 files changed

+12
-10
lines changed

4 files changed

+12
-10
lines changed

Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ GO111MODULE=on
66
AWS_SERVICE=$(shell echo $(SERVICE) | tr '[:upper:]' '[:lower:]')
77

88
# Build ldflags
9-
VERSION ?= "v0.4.0"
9+
VERSION ?= "v0.5.0"
1010
GITCOMMIT=$(shell git rev-parse HEAD)
1111
BUILDDATE=$(shell date -u +'%Y-%m-%dT%H:%M:%SZ')
1212
IMPORT_PATH=github.com/aws-controllers-k8s/code-generator

go.mod

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ module github.com/aws-controllers-k8s/code-generator
33
go 1.14
44

55
require (
6-
github.com/aws-controllers-k8s/runtime v0.4.0
6+
github.com/aws-controllers-k8s/runtime v0.5.0
77
github.com/aws/aws-sdk-go v1.37.4
88
github.com/dlclark/regexp2 v1.4.0
99
// pin to v0.1.1 due to release problem with v0.1.2

templates/pkg/resource/manager.go.tpl

+3-2
Original file line numberDiff line numberDiff line change
@@ -129,11 +129,12 @@ func (rm *resourceManager) Update(
129129
}
130130
131131
// Delete attempts to destroy the supplied AWSResource in the backend AWS
132-
// service API.
132+
// service API, returning an AWSResource representing the
133+
// resource being deleted (if delete is asynchronous and takes time)
133134
func (rm *resourceManager) Delete(
134135
ctx context.Context,
135136
res acktypes.AWSResource,
136-
) error {
137+
) (acktypes.AWSResource, error) {
137138
r := rm.concreteResource(res)
138139
if r.ko == nil {
139140
// Should never happen... if it does, it's buggy code.

templates/pkg/resource/sdk.go.tpl

+7-6
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ func (rm *resourceManager) newCreateRequestPayload(
125125
func (rm *resourceManager) sdkDelete(
126126
ctx context.Context,
127127
r *resource,
128-
) (err error) {
128+
) (latest *resource, err error) {
129129
rlog := ackrtlog.FromContext(ctx)
130130
exit := rlog.Trace("rm.sdkDelete")
131131
defer exit(err)
@@ -136,25 +136,26 @@ func (rm *resourceManager) sdkDelete(
136136
{{- end }}
137137
{{- if $customMethod := .CRD.GetCustomImplementation .CRD.Ops.Delete }}
138138
if err = rm.{{ $customMethod }}(ctx, r); err != nil {
139-
return err
139+
return nil, err
140140
}
141141
{{- end }}
142142
input, err := rm.newDeleteRequestPayload(r)
143143
if err != nil {
144-
return err
144+
return nil, err
145145
}
146146
{{- if $hookCode := Hook .CRD "sdk_delete_post_build_request" }}
147147
{{ $hookCode }}
148148
{{- end }}
149-
_, err = rm.sdkapi.{{ .CRD.Ops.Delete.Name }}WithContext(ctx, input)
149+
var resp {{ .CRD.GetOutputShapeGoType .CRD.Ops.Delete }}; _ = resp;
150+
resp, err = rm.sdkapi.{{ .CRD.Ops.Delete.Name }}WithContext(ctx, input)
150151
rm.metrics.RecordAPICall("DELETE", "{{ .CRD.Ops.Delete.Name }}", err)
151152
{{- if $hookCode := Hook .CRD "sdk_delete_post_request" }}
152153
{{ $hookCode }}
153154
{{- end }}
154-
return err
155+
return nil, err
155156
{{- else }}
156157
// TODO(jaypipes): Figure this out...
157-
return nil
158+
return nil, nil
158159
{{ end }}
159160
}
160161

0 commit comments

Comments
 (0)