@@ -170,6 +170,7 @@ RELEASE_ALLINONE := config/release/$(ENV)/allinone
170170RELEASE_CLUSTERWIDE := config/release/$(ENV ) /clusterwide
171171RELEASE_OPENSHIFT := config/release/$(ENV ) /openshift
172172RELEASE_NAMESPACED := config/release/$(ENV ) /namespaced
173+ RELEASE_AUTOGENERATED := config/generated
173174
174175# --- File Targets ---
175176ALL_IN_ONE_CONFIG := $(TARGET_DIR ) /all-in-one.yaml
@@ -179,6 +180,7 @@ NAMESPACED_CONFIG := $(NAMESPACED_DIR)/namespaced-config.yaml
179180NAMESPACED_CRDS := $(NAMESPACED_DIR ) /crds.yaml
180181OPENSHIFT_CONFIG := $(OPENSHIFT_DIR ) /openshift.yaml
181182OPENSHIFT_CRDS := $(OPENSHIFT_DIR ) /crds.yaml
183+ ALL_IN_ONE_AUTOGENERATED_CONFIG := $(TARGET_DIR ) /generated/all-in-one.yaml
182184CSV_FILE := $(BUNDLE_MANIFESTS_DIR ) /mongodb-atlas-kubernetes.clusterserviceversion.yaml
183185BUNDLE_DOCKERFILE := bundle.Dockerfile
184186
@@ -816,14 +818,22 @@ clean-bundle:
816818 @rm -f $(BUNDLE_DOCKERFILE )
817819 @echo " ✅ Cleanup complete."
818820
819- autogenerated-manifests : manifests update-manager-kustomization
821+ rbac-autogen :
822+ $(CONTROLLER_GEN ) rbac:roleName=generated-manager-role paths=" ./internal/generated/controller/..." output:rbac:artifacts:config=config/generated/rbac
823+ @$(AWK ) ' /---/{f="xx0"int(++i);} {if(NF!=0)print > f};' config/generated/rbac/role.yaml # Keeping only ClusterRole part while building only all-in-one config
824+ @rm config/generated/rbac/role.yaml
825+ @mv xx01 config/generated/rbac/role.yaml
826+
827+ $(ALL_IN_ONE_AUTOGENERATED_CONFIG ) : manifests update-manager-kustomization rbac-autogen
820828 @echo " Creating directory..."
821829 @mkdir -p $(TARGET_DIR ) /generated
822- @$(KUSTOMIZE ) build --load-restrictor LoadRestrictionsNone config/generated > $(TARGET_DIR ) /generated/allinone.yaml
830+ @$(KUSTOMIZE ) build --load-restrictor LoadRestrictionsNone $(RELEASE_AUTOGENERATED ) > $@
831+ @echo " Created $@ "
823832
824- .PHONY : gen-all
825833gen-all :
826- $(MAKE ) -C tools/openapi2crd crds-force
827- $(MAKE ) -C tools/crd2go build
828- cd tools/crd2go && ./crd2go -input ../openapi2crd/crds.yaml -output ../../internal/nextapi/v1
829- $(MAKE ) -C tools/scaffolder generate-all
834+ BINARY_DIR=$(realpath ./bin) CRD_FILE=$(realpath ./config/generated/crd/bases/crds.yaml) $(MAKE ) -C tools/openapi2crd crds
835+ BINARY_DIR=$(realpath ./bin) CRD_FILE=$(realpath ./config/generated/crd/bases/crds.yaml) OUTPUT_DIR=$(realpath ./internal/nextapi/generated/v1) $(MAKE ) -C tools/crd2go generate
836+ BINARY_DIR=$(realpath ./bin) CRD_FILE=$(realpath ./config/generated/crd/bases/crds.yaml) $(MAKE ) -C tools/scaffolder generate-all
837+
838+ build-autogen : gen-all $(ALL_IN_ONE_AUTOGENERATED_CONFIG )
839+ EXPERIMENTAL=1 VERSION=$(shell $(JQ ) -r .next $(VERSION_FILE ) ) -EXPERIMENTAL-${GITCOMMIT} $(MAKE ) image
0 commit comments