diff --git a/.helm/starter/README.md b/.helm/starter/README.md index 8fca8b49..31e48bd7 100644 --- a/.helm/starter/README.md +++ b/.helm/starter/README.md @@ -235,6 +235,11 @@ AWX: |---|---|---| | `extraDeploy` | array of additional resources to be deployed (supports YAML or literal "\|") | - | +### Operator +| Value | Description | Default | +|---|---|---| +| `Operator.replicas` | Number of controller-manager instance replicas | `1` | + ### customSecrets | Value | Description | Default | |---|---|---| diff --git a/Makefile b/Makefile index 844be3c2..4ab08783 100644 --- a/Makefile +++ b/Makefile @@ -370,14 +370,21 @@ helm-chart-generate: kustomize helm kubectl-slice yq charts for file in charts/$(CHART_NAME)/raw-files/*rolebinding*; do\ $(YQ) -i '.subjects[0].namespace = "{{ .Release.Namespace }}"' $${file};\ done + # Add .spec.replicas for the controller-manager deployment + for file in charts/$(CHART_NAME)/raw-files/deployment-*-controller-manager.yaml; do\ + $(YQ) -i '.spec.replicas = "{{ (.Values.Operator).replicas | default 1 }}"' $${file};\ + done # Correct .metadata.name for cluster scoped resources cluster_scoped_files="charts/$(CHART_NAME)/raw-files/clusterrolebinding-awx-operator-proxy-rolebinding.yaml charts/$(CHART_NAME)/raw-files/clusterrole-awx-operator-metrics-reader.yaml charts/$(CHART_NAME)/raw-files/clusterrole-awx-operator-proxy-role.yaml";\ for file in $${cluster_scoped_files}; do\ $(YQ) -i '.metadata.name += "-{{ .Release.Name }}"' $${file};\ done - # Correct the reference for the clusterrolebinding $(YQ) -i '.roleRef.name += "-{{ .Release.Name }}"' 'charts/$(CHART_NAME)/raw-files/clusterrolebinding-awx-operator-proxy-rolebinding.yaml' + # Correct .spec.replicas type for the controller-manager deployment + for file in charts/$(CHART_NAME)/raw-files/deployment-*-controller-manager.yaml; do\ + $(SED_I) "s/'{{ (.Values.Operator).replicas | default 1 }}'/{{ (.Values.Operator).replicas | default 1 }}/g" $${file};\ + done # move all custom resource definitions to crds folder mkdir charts/$(CHART_NAME)/crds mv charts/$(CHART_NAME)/raw-files/customresourcedefinition*.yaml charts/$(CHART_NAME)/crds/.