Skip to content

Commit 30445c8

Browse files
committed
Autogen Makefile targets
1 parent ddc97d1 commit 30445c8

File tree

1 file changed

+17
-7
lines changed

1 file changed

+17
-7
lines changed

Makefile

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -170,6 +170,7 @@ RELEASE_ALLINONE := config/release/$(ENV)/allinone
170170
RELEASE_CLUSTERWIDE := config/release/$(ENV)/clusterwide
171171
RELEASE_OPENSHIFT := config/release/$(ENV)/openshift
172172
RELEASE_NAMESPACED := config/release/$(ENV)/namespaced
173+
RELEASE_AUTOGENERATED := config/generated
173174

174175
# --- File Targets ---
175176
ALL_IN_ONE_CONFIG := $(TARGET_DIR)/all-in-one.yaml
@@ -179,6 +180,7 @@ NAMESPACED_CONFIG := $(NAMESPACED_DIR)/namespaced-config.yaml
179180
NAMESPACED_CRDS := $(NAMESPACED_DIR)/crds.yaml
180181
OPENSHIFT_CONFIG := $(OPENSHIFT_DIR)/openshift.yaml
181182
OPENSHIFT_CRDS := $(OPENSHIFT_DIR)/crds.yaml
183+
ALL_IN_ONE_AUTOGENERATED_CONFIG := $(TARGET_DIR)/generated/all-in-one.yaml
182184
CSV_FILE := $(BUNDLE_MANIFESTS_DIR)/mongodb-atlas-kubernetes.clusterserviceversion.yaml
183185
BUNDLE_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
825833
gen-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

Comments
 (0)