Browse Source

fix: improve portability of Makefile

Kellin McAvoy 5 years ago
parent
commit
35f52ca1f5

+ 16 - 4
Makefile

@@ -45,7 +45,13 @@ deploy: manifests ## Deploy controller in the Kubernetes cluster of current cont
 	kustomize build config/default | kubectl apply -f -
 	kustomize build config/default | kubectl apply -f -
 
 
 manifests: controller-gen ## Generate manifests e.g. CRD, RBAC etc.
 manifests: controller-gen ## Generate manifests e.g. CRD, RBAC etc.
-	$(CONTROLLER_GEN) $(CRD_OPTIONS) rbac:roleName=manager-role webhook paths="./..." output:crd:artifacts:config=config/crd/bases
+	$(CONTROLLER_GEN) $(CRD_OPTIONS) rbac:roleName=manager-role webhook paths="./..." output:crd:artifacts:config=$(CRD_DIR)
+# Remove extra header lines in generated CRDs
+	@for i in $(CRD_DIR)/*.yaml; do \
+  		tail -n +3 <"$$i" >"$$i.bkp" && \
+  		cp "$$i.bkp" "$$i" && \
+  		rm "$$i.bkp"; \
+  	done
 
 
 lint/check: # Check install of golanci-lint
 lint/check: # Check install of golanci-lint
 	@if ! golangci-lint --version > /dev/null 2>&1; then \
 	@if ! golangci-lint --version > /dev/null 2>&1; then \
@@ -84,11 +90,17 @@ helm-docs: ## Generate helm docs
 	docker run --rm -v $(shell pwd)/$(HELM_DIR):/helm-docs -u $(shell id -u) jnorwood/helm-docs:latest
 	docker run --rm -v $(shell pwd)/$(HELM_DIR):/helm-docs -u $(shell id -u) jnorwood/helm-docs:latest
 
 
 crds-to-chart: # Copy crds to helm chart directory
 crds-to-chart: # Copy crds to helm chart directory
-	cp $(CRD_DIR)/*.yaml $(HELM_DIR)/templates/crds/; \
-	for i in $(HELM_DIR)/templates/crds/*.yaml; do \
-		sed -i '1s/.*/{{- if .Values.installCRDs }}/;$$a{{- end }}' $$i; \
+	cp $(CRD_DIR)/*.yaml $(HELM_DIR)/templates/crds/
+# Add helm chart if statement for installing CRDs
+	@for i in $(HELM_DIR)/templates/crds/*.yaml; do \
+		cp "$$i" "$$i.bkp" && \
+		echo "{{- if .Values.installCRDs }}" > "$$i" && \
+		cat "$$i.bkp" >> "$$i" && \
+		echo "{{- end }}" >> "$$i" && \
+		rm "$$i.bkp"; \
 	done
 	done
 
 
+
 # find or download controller-gen
 # find or download controller-gen
 # download controller-gen if necessary
 # download controller-gen if necessary
 controller-gen:
 controller-gen:

+ 0 - 2
config/crd/bases/external-secrets.io_externalsecrets.yaml

@@ -1,5 +1,3 @@
-
----
 apiVersion: apiextensions.k8s.io/v1
 apiVersion: apiextensions.k8s.io/v1
 kind: CustomResourceDefinition
 kind: CustomResourceDefinition
 metadata:
 metadata:

+ 0 - 2
config/crd/bases/external-secrets.io_secretstores.yaml

@@ -1,5 +1,3 @@
-
----
 apiVersion: apiextensions.k8s.io/v1
 apiVersion: apiextensions.k8s.io/v1
 kind: CustomResourceDefinition
 kind: CustomResourceDefinition
 metadata:
 metadata: