fluxcd-community / helm-charts

Community maintained Helm charts for Flux
Apache License 2.0
121 stars 76 forks source link

imagePullSecrets was left out of the pre-install-job.yaml template #156

Closed joncrlsn closed 1 year ago

joncrlsn commented 1 year ago

Describe the bug a clear and concise description of what the bug is.

When using an image repository that requires image pull secrets, the helm chart will not complete installation because the pre-install-job.yaml does not include the imagePullSecrets section like the other containers do.

      {{- if .Values.imagePullSecrets }}
      imagePullSecrets: {{ toYaml .Values.imagePullSecrets | nindent 6 }}
      {{- end }}

It worked as soon as we added the above section of code to pre-install-job.yaml. Creating an MR.

What's your helm version?

version.BuildInfo{Version:"v3.10.2", GitCommit:"50f003e5ee8704ec937a756c646870227d7c8b58", GitTreeState:"clean", GoVersion:"go1.19.3"}

What's your kubectl version?

Client Version: v1.26.0

What's the chart version?

2.5.0

What happened?

When installing Flux2 via this helm chart, the flux-check image (generated in pre-install-job.yaml) fails to download. An "Unauthorized" error is printed in the kubernetes event log.

kubectl get events -n operators

What you expected to happen?

Expected the image to be pulled successfully.

How to reproduce it?

Install the helm chart using a docker image repository that requires secrets to pull images.

Enter the changed values of values.yaml?

imagePullSecrets:
  - name: ${IMAGE_PULL_SECRET}

Enter the command that you execute and failing/misfunctioning.

We're using terraform, so no manual commands to share.

Anything else we need to know?

No response

joncrlsn commented 1 year ago

Here is the full values.yaml file:

installCRDs: false
cli:
  # create: true  # cli (aka flux-check) is always created
  image: ${REGISTRY}/fluxcd/flux-cli

helmController:
  create: true
  image: ${REGISTRY}/fluxcd/helm-controller

imageAutomationController:
  create: false
  image: ${REGISTRY}/fluxcd/image-automation-controller

imageReflectionController:
  create: false
  image: ${REGISTRY}/fluxcd/image-reflector-controller

kustomizeController:
  create: true
  image: ${REGISTRY}/fluxcd/kustomize-controller

notificationController:
  create: false
  image: ${REGISTRY}/fluxcd/notification-controller

sourceController:
  create: true
  image: ${REGISTRY}/fluxcd/source-controller

imagePullSecrets:
  - name: ${IMAGE_PULL_SECRET}