From 9590072678fcd7f517347fb31dc99eebed251821 Mon Sep 17 00:00:00 2001 From: Muvaffak Onus Date: Fri, 12 Mar 2021 20:14:08 +0300 Subject: [PATCH] crossplane: fix the controller template for attribute-based APIs Signed-off-by: Muvaffak Onus --- templates/crossplane/pkg/controller.go.tpl | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/templates/crossplane/pkg/controller.go.tpl b/templates/crossplane/pkg/controller.go.tpl index 921d0fb3..6406adc4 100644 --- a/templates/crossplane/pkg/controller.go.tpl +++ b/templates/crossplane/pkg/controller.go.tpl @@ -180,22 +180,30 @@ func newExternal(kube client.Client, client svcsdkapi.{{ .SDKAPIInterfaceTypeNam e := &external{ kube: kube, client: client, - {{- if or .CRD.Ops.ReadOne .CRD.Ops.GetAttributes .CRD.Ops.ReadMany }} + {{- if .CRD.Ops.ReadOne }} preObserve: nopPreObserve, postObserve: nopPostObserve, lateInitialize: nopLateInitialize, isUpToDate: alwaysUpToDate, + {{- else if .CRD.Ops.GetAttributes }} + preObserve: nopPreObserve, + postObserve: nopPostObserve, + lateInitialize: nopLateInitialize, + isUpToDate: alwaysUpToDate, + {{- else if .CRD.Ops.ReadMany }} + preObserve: nopPreObserve, + postObserve: nopPostObserve, + lateInitialize: nopLateInitialize, + isUpToDate: alwaysUpToDate, + filterList: nopFilterList, {{- else }} observe: nopObserve, {{- end }} - {{- if and .CRD.Ops.ReadMany (not .CRD.Ops.ReadOne) }} - filterList: nopFilterList, - {{- end}} preCreate: nopPreCreate, postCreate: nopPostCreate, {{- if .CRD.Ops.Delete }} preDelete: nopPreDelete, - postDelete: nopPostDelete, + postDelete: nopPostDelete, {{- else }} delete: nopDelete, {{- end }}