diff --git a/apis/v1alpha1/ack-generate-metadata.yaml b/apis/v1alpha1/ack-generate-metadata.yaml index 681aea9..92b4462 100755 --- a/apis/v1alpha1/ack-generate-metadata.yaml +++ b/apis/v1alpha1/ack-generate-metadata.yaml @@ -1,8 +1,8 @@ ack_generate_info: - build_date: "2022-06-15T16:33:46Z" - build_hash: 53ebfaca89abd8cedbeb8e48ac76954a8e1841dd + build_date: "2022-06-17T17:58:32Z" + build_hash: a45f3b900849ec03c5e16ed2778c0b8e2923ffee go_version: go1.17.5 - version: v0.19.0-2-g53ebfac + version: v0.19.1 api_directory_checksum: c69d75f37400a8d4d6eb4362eb743005531a7b2c api_version: v1alpha1 aws_sdk_go_version: v1.42.0 diff --git a/config/controller/kustomization.yaml b/config/controller/kustomization.yaml index dd59fc6..85ad7e0 100644 --- a/config/controller/kustomization.yaml +++ b/config/controller/kustomization.yaml @@ -6,4 +6,4 @@ kind: Kustomization images: - name: controller newName: public.ecr.aws/aws-controllers-k8s/apigatewayv2-controller - newTag: v0.1.1 + newTag: v0.1.2 diff --git a/go.mod b/go.mod index e89fe98..f03d2ac 100644 --- a/go.mod +++ b/go.mod @@ -3,7 +3,7 @@ module github.com/aws-controllers-k8s/apigatewayv2-controller go 1.17 require ( - github.com/aws-controllers-k8s/runtime v0.19.0 + github.com/aws-controllers-k8s/runtime v0.19.1 github.com/aws/aws-sdk-go v1.42.0 github.com/go-logr/logr v1.2.0 github.com/google/go-cmp v0.5.5 diff --git a/go.sum b/go.sum index 07c7d30..38cfb6a 100644 --- a/go.sum +++ b/go.sum @@ -64,8 +64,8 @@ github.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e/go.mod h1:3U/XgcO3hC github.com/armon/go-metrics v0.0.0-20180917152333-f0300d1749da/go.mod h1:Q73ZrmVTwzkszR9V5SSuryQ31EELlFMUz1kKyl939pY= github.com/armon/go-radix v0.0.0-20180808171621-7fddfc383310/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8= github.com/asaskevich/govalidator v0.0.0-20190424111038-f61b66f89f4a/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY= -github.com/aws-controllers-k8s/runtime v0.19.0 h1:+O5a6jBSBAd8XTNMrVCIYu4G+ZUPZe/G5eopVFO18Dc= -github.com/aws-controllers-k8s/runtime v0.19.0/go.mod h1:oA8ML1/LL3chPn26P6SzBNu1CUI2nekB+PTqykNs0qU= +github.com/aws-controllers-k8s/runtime v0.19.1 h1:OBV7vbIbLFRpXdAwJfoPGphhjTa7xSc3pS/kuYlKzRU= +github.com/aws-controllers-k8s/runtime v0.19.1/go.mod h1:oA8ML1/LL3chPn26P6SzBNu1CUI2nekB+PTqykNs0qU= github.com/aws/aws-sdk-go v1.42.0 h1:BMZws0t8NAhHFsfnT3B40IwD13jVDG5KerlRksctVIw= github.com/aws/aws-sdk-go v1.42.0/go.mod h1:585smgzpB/KqRA+K3y/NL/oYRqQvpNJYvLm+LY1U59Q= github.com/benbjohnson/clock v1.0.3/go.mod h1:bGMdMPoPVvcYyt1gHDf4J2KE153Yf9BuiUKYMaxlTDM= diff --git a/helm/Chart.yaml b/helm/Chart.yaml index 90a8040..cd2d3d8 100644 --- a/helm/Chart.yaml +++ b/helm/Chart.yaml @@ -1,8 +1,8 @@ apiVersion: v1 name: apigatewayv2-chart description: A Helm chart for the ACK service controller for Amazon API Gateway (APIGWv2) -version: v0.1.1 -appVersion: v0.1.1 +version: v0.1.2 +appVersion: v0.1.2 home: https://github.com/aws-controllers-k8s/apigatewayv2-controller icon: https://raw.githubusercontent.com/aws/eks-charts/master/docs/logo/aws.png sources: diff --git a/helm/templates/NOTES.txt b/helm/templates/NOTES.txt index 652ced9..c4c9115 100644 --- a/helm/templates/NOTES.txt +++ b/helm/templates/NOTES.txt @@ -1,5 +1,5 @@ {{ .Chart.Name }} has been installed. -This chart deploys "public.ecr.aws/aws-controllers-k8s/apigatewayv2-controller:v0.1.1". +This chart deploys "public.ecr.aws/aws-controllers-k8s/apigatewayv2-controller:v0.1.2". Check its status by running: kubectl --namespace {{ .Release.Namespace }} get pods -l "app.kubernetes.io/instance={{ .Release.Name }}" diff --git a/helm/values.yaml b/helm/values.yaml index dded9c7..0195965 100644 --- a/helm/values.yaml +++ b/helm/values.yaml @@ -4,7 +4,7 @@ image: repository: public.ecr.aws/aws-controllers-k8s/apigatewayv2-controller - tag: v0.1.1 + tag: v0.1.2 pullPolicy: IfNotPresent pullSecrets: [] diff --git a/pkg/resource/api/manager.go b/pkg/resource/api/manager.go index 720848a..0b8d283 100644 --- a/pkg/resource/api/manager.go +++ b/pkg/resource/api/manager.go @@ -126,6 +126,9 @@ func (rm *resourceManager) Create( } created, err := rm.sdkCreate(ctx, r) if err != nil { + if created != nil { + return rm.onError(created, err) + } return rm.onError(r, err) } return rm.onSuccess(created) @@ -153,6 +156,9 @@ func (rm *resourceManager) Update( } updated, err := rm.sdkUpdate(ctx, desired, latest, delta) if err != nil { + if updated != nil { + return rm.onError(updated, err) + } return rm.onError(latest, err) } return rm.onSuccess(updated) diff --git a/pkg/resource/api/sdk.go b/pkg/resource/api/sdk.go index ecbf1bc..f0e591a 100644 --- a/pkg/resource/api/sdk.go +++ b/pkg/resource/api/sdk.go @@ -54,7 +54,9 @@ func (rm *resourceManager) sdkFind( ) (latest *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkFind") - defer exit(err) + defer func() { + exit(err) + }() // If any required fields in the input shape are missing, AWS resource is // not created yet. Return NotFound here to indicate to callers that the // resource isn't yet created. @@ -260,7 +262,9 @@ func (rm *resourceManager) sdkCreate( ) (created *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkCreate") - defer exit(err) + defer func() { + exit(err) + }() created, err = rm.customCreateApi(ctx, desired) if created != nil || err != nil { return created, err @@ -545,7 +549,9 @@ func (rm *resourceManager) sdkDelete( ) (latest *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkDelete") - defer exit(err) + defer func() { + exit(err) + }() input, err := rm.newDeleteRequestPayload(r) if err != nil { return nil, err diff --git a/pkg/resource/authorizer/manager.go b/pkg/resource/authorizer/manager.go index dc766d1..4214b14 100644 --- a/pkg/resource/authorizer/manager.go +++ b/pkg/resource/authorizer/manager.go @@ -126,6 +126,9 @@ func (rm *resourceManager) Create( } created, err := rm.sdkCreate(ctx, r) if err != nil { + if created != nil { + return rm.onError(created, err) + } return rm.onError(r, err) } return rm.onSuccess(created) @@ -153,6 +156,9 @@ func (rm *resourceManager) Update( } updated, err := rm.sdkUpdate(ctx, desired, latest, delta) if err != nil { + if updated != nil { + return rm.onError(updated, err) + } return rm.onError(latest, err) } return rm.onSuccess(updated) diff --git a/pkg/resource/authorizer/sdk.go b/pkg/resource/authorizer/sdk.go index 5d0ff2c..76d53c3 100644 --- a/pkg/resource/authorizer/sdk.go +++ b/pkg/resource/authorizer/sdk.go @@ -54,7 +54,9 @@ func (rm *resourceManager) sdkFind( ) (latest *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkFind") - defer exit(err) + defer func() { + exit(err) + }() // If any required fields in the input shape are missing, AWS resource is // not created yet. Return NotFound here to indicate to callers that the // resource isn't yet created. @@ -196,7 +198,9 @@ func (rm *resourceManager) sdkCreate( ) (created *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkCreate") - defer exit(err) + defer func() { + exit(err) + }() input, err := rm.newCreateRequestPayload(ctx, desired) if err != nil { return nil, err @@ -366,7 +370,9 @@ func (rm *resourceManager) sdkUpdate( ) (updated *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkUpdate") - defer exit(err) + defer func() { + exit(err) + }() input, err := rm.newUpdateRequestPayload(ctx, desired) if err != nil { return nil, err @@ -536,7 +542,9 @@ func (rm *resourceManager) sdkDelete( ) (latest *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkDelete") - defer exit(err) + defer func() { + exit(err) + }() input, err := rm.newDeleteRequestPayload(r) if err != nil { return nil, err diff --git a/pkg/resource/deployment/manager.go b/pkg/resource/deployment/manager.go index aa3e88d..b38df2d 100644 --- a/pkg/resource/deployment/manager.go +++ b/pkg/resource/deployment/manager.go @@ -126,6 +126,9 @@ func (rm *resourceManager) Create( } created, err := rm.sdkCreate(ctx, r) if err != nil { + if created != nil { + return rm.onError(created, err) + } return rm.onError(r, err) } return rm.onSuccess(created) @@ -153,6 +156,9 @@ func (rm *resourceManager) Update( } updated, err := rm.sdkUpdate(ctx, desired, latest, delta) if err != nil { + if updated != nil { + return rm.onError(updated, err) + } return rm.onError(latest, err) } return rm.onSuccess(updated) diff --git a/pkg/resource/deployment/sdk.go b/pkg/resource/deployment/sdk.go index 10240b9..6389f9a 100644 --- a/pkg/resource/deployment/sdk.go +++ b/pkg/resource/deployment/sdk.go @@ -54,7 +54,9 @@ func (rm *resourceManager) sdkFind( ) (latest *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkFind") - defer exit(err) + defer func() { + exit(err) + }() // If any required fields in the input shape are missing, AWS resource is // not created yet. Return NotFound here to indicate to callers that the // resource isn't yet created. @@ -152,7 +154,9 @@ func (rm *resourceManager) sdkCreate( ) (created *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkCreate") - defer exit(err) + defer func() { + exit(err) + }() input, err := rm.newCreateRequestPayload(ctx, desired) if err != nil { return nil, err @@ -235,7 +239,9 @@ func (rm *resourceManager) sdkUpdate( ) (updated *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkUpdate") - defer exit(err) + defer func() { + exit(err) + }() input, err := rm.newUpdateRequestPayload(ctx, desired) if err != nil { return nil, err @@ -315,7 +321,9 @@ func (rm *resourceManager) sdkDelete( ) (latest *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkDelete") - defer exit(err) + defer func() { + exit(err) + }() input, err := rm.newDeleteRequestPayload(r) if err != nil { return nil, err diff --git a/pkg/resource/integration/manager.go b/pkg/resource/integration/manager.go index 3e6f953..d7e64c0 100644 --- a/pkg/resource/integration/manager.go +++ b/pkg/resource/integration/manager.go @@ -126,6 +126,9 @@ func (rm *resourceManager) Create( } created, err := rm.sdkCreate(ctx, r) if err != nil { + if created != nil { + return rm.onError(created, err) + } return rm.onError(r, err) } return rm.onSuccess(created) @@ -153,6 +156,9 @@ func (rm *resourceManager) Update( } updated, err := rm.sdkUpdate(ctx, desired, latest, delta) if err != nil { + if updated != nil { + return rm.onError(updated, err) + } return rm.onError(latest, err) } return rm.onSuccess(updated) diff --git a/pkg/resource/integration/sdk.go b/pkg/resource/integration/sdk.go index 3617993..e1b69e4 100644 --- a/pkg/resource/integration/sdk.go +++ b/pkg/resource/integration/sdk.go @@ -54,7 +54,9 @@ func (rm *resourceManager) sdkFind( ) (latest *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkFind") - defer exit(err) + defer func() { + exit(err) + }() // If any required fields in the input shape are missing, AWS resource is // not created yet. Return NotFound here to indicate to callers that the // resource isn't yet created. @@ -248,7 +250,9 @@ func (rm *resourceManager) sdkCreate( ) (created *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkCreate") - defer exit(err) + defer func() { + exit(err) + }() input, err := rm.newCreateRequestPayload(ctx, desired) if err != nil { return nil, err @@ -498,7 +502,9 @@ func (rm *resourceManager) sdkUpdate( ) (updated *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkUpdate") - defer exit(err) + defer func() { + exit(err) + }() input, err := rm.newUpdateRequestPayload(ctx, desired) if err != nil { return nil, err @@ -748,7 +754,9 @@ func (rm *resourceManager) sdkDelete( ) (latest *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkDelete") - defer exit(err) + defer func() { + exit(err) + }() input, err := rm.newDeleteRequestPayload(r) if err != nil { return nil, err diff --git a/pkg/resource/route/manager.go b/pkg/resource/route/manager.go index 4bfa316..4686a97 100644 --- a/pkg/resource/route/manager.go +++ b/pkg/resource/route/manager.go @@ -126,6 +126,9 @@ func (rm *resourceManager) Create( } created, err := rm.sdkCreate(ctx, r) if err != nil { + if created != nil { + return rm.onError(created, err) + } return rm.onError(r, err) } return rm.onSuccess(created) @@ -153,6 +156,9 @@ func (rm *resourceManager) Update( } updated, err := rm.sdkUpdate(ctx, desired, latest, delta) if err != nil { + if updated != nil { + return rm.onError(updated, err) + } return rm.onError(latest, err) } return rm.onSuccess(updated) diff --git a/pkg/resource/route/sdk.go b/pkg/resource/route/sdk.go index b1ebb65..9e0a11b 100644 --- a/pkg/resource/route/sdk.go +++ b/pkg/resource/route/sdk.go @@ -54,7 +54,9 @@ func (rm *resourceManager) sdkFind( ) (latest *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkFind") - defer exit(err) + defer func() { + exit(err) + }() // If any required fields in the input shape are missing, AWS resource is // not created yet. Return NotFound here to indicate to callers that the // resource isn't yet created. @@ -207,7 +209,9 @@ func (rm *resourceManager) sdkCreate( ) (created *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkCreate") - defer exit(err) + defer func() { + exit(err) + }() input, err := rm.newCreateRequestPayload(ctx, desired) if err != nil { return nil, err @@ -392,7 +396,9 @@ func (rm *resourceManager) sdkUpdate( ) (updated *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkUpdate") - defer exit(err) + defer func() { + exit(err) + }() input, err := rm.newUpdateRequestPayload(ctx, desired) if err != nil { return nil, err @@ -577,7 +583,9 @@ func (rm *resourceManager) sdkDelete( ) (latest *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkDelete") - defer exit(err) + defer func() { + exit(err) + }() input, err := rm.newDeleteRequestPayload(r) if err != nil { return nil, err diff --git a/pkg/resource/stage/manager.go b/pkg/resource/stage/manager.go index 6161707..f72c1a0 100644 --- a/pkg/resource/stage/manager.go +++ b/pkg/resource/stage/manager.go @@ -126,6 +126,9 @@ func (rm *resourceManager) Create( } created, err := rm.sdkCreate(ctx, r) if err != nil { + if created != nil { + return rm.onError(created, err) + } return rm.onError(r, err) } return rm.onSuccess(created) @@ -153,6 +156,9 @@ func (rm *resourceManager) Update( } updated, err := rm.sdkUpdate(ctx, desired, latest, delta) if err != nil { + if updated != nil { + return rm.onError(updated, err) + } return rm.onError(latest, err) } return rm.onSuccess(updated) diff --git a/pkg/resource/stage/sdk.go b/pkg/resource/stage/sdk.go index 1358c77..b7c2ea7 100644 --- a/pkg/resource/stage/sdk.go +++ b/pkg/resource/stage/sdk.go @@ -54,7 +54,9 @@ func (rm *resourceManager) sdkFind( ) (latest *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkFind") - defer exit(err) + defer func() { + exit(err) + }() // If any required fields in the input shape are missing, AWS resource is // not created yet. Return NotFound here to indicate to callers that the // resource isn't yet created. @@ -247,7 +249,9 @@ func (rm *resourceManager) sdkCreate( ) (created *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkCreate") - defer exit(err) + defer func() { + exit(err) + }() input, err := rm.newCreateRequestPayload(ctx, desired) if err != nil { return nil, err @@ -504,7 +508,9 @@ func (rm *resourceManager) sdkUpdate( ) (updated *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkUpdate") - defer exit(err) + defer func() { + exit(err) + }() input, err := rm.newUpdateRequestPayload(ctx, desired) if err != nil { return nil, err @@ -753,7 +759,9 @@ func (rm *resourceManager) sdkDelete( ) (latest *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkDelete") - defer exit(err) + defer func() { + exit(err) + }() input, err := rm.newDeleteRequestPayload(r) if err != nil { return nil, err diff --git a/pkg/resource/vpc_link/manager.go b/pkg/resource/vpc_link/manager.go index 96d2452..9228f6c 100644 --- a/pkg/resource/vpc_link/manager.go +++ b/pkg/resource/vpc_link/manager.go @@ -126,6 +126,9 @@ func (rm *resourceManager) Create( } created, err := rm.sdkCreate(ctx, r) if err != nil { + if created != nil { + return rm.onError(created, err) + } return rm.onError(r, err) } return rm.onSuccess(created) @@ -153,6 +156,9 @@ func (rm *resourceManager) Update( } updated, err := rm.sdkUpdate(ctx, desired, latest, delta) if err != nil { + if updated != nil { + return rm.onError(updated, err) + } return rm.onError(latest, err) } return rm.onSuccess(updated) diff --git a/pkg/resource/vpc_link/sdk.go b/pkg/resource/vpc_link/sdk.go index 1b7d42e..f1986d0 100644 --- a/pkg/resource/vpc_link/sdk.go +++ b/pkg/resource/vpc_link/sdk.go @@ -54,7 +54,9 @@ func (rm *resourceManager) sdkFind( ) (latest *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkFind") - defer exit(err) + defer func() { + exit(err) + }() // If any required fields in the input shape are missing, AWS resource is // not created yet. Return NotFound here to indicate to callers that the // resource isn't yet created. @@ -182,7 +184,9 @@ func (rm *resourceManager) sdkCreate( ) (created *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkCreate") - defer exit(err) + defer func() { + exit(err) + }() input, err := rm.newCreateRequestPayload(ctx, desired) if err != nil { return nil, err @@ -319,7 +323,9 @@ func (rm *resourceManager) sdkUpdate( ) (updated *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkUpdate") - defer exit(err) + defer func() { + exit(err) + }() if latest.ko.Status.VPCLinkStatus != nil && *latest.ko.Status.VPCLinkStatus != svcsdk.VpcLinkStatusAvailable { return nil, waitForAvailableRequeue } @@ -432,7 +438,9 @@ func (rm *resourceManager) sdkDelete( ) (latest *resource, err error) { rlog := ackrtlog.FromContext(ctx) exit := rlog.Trace("rm.sdkDelete") - defer exit(err) + defer func() { + exit(err) + }() input, err := rm.newDeleteRequestPayload(r) if err != nil { return nil, err