Official Helm Chart version
1.19.0 (latest released)
Apache Airflow version
3.1.8
Kubernetes Version
v1.31.4
Helm Chart configuration
# Airflow Worker Config
workers:
celery:
# Number of airflow celery workers in StatefulSet
replicas: 1
persistence:
# Enable persistent volumes
enabled: true
# Volume size for worker StatefulSet
size: 2Gi
# If using a custom storageClass, pass name ref to all statefulSets here
storageClassName: ceph-rbd-hdd
resources:
requests:
cpu: 0.5
memory: 4.0Gi
limits:
cpu: 2.0
memory: 8.0Gi
logGroomerSidecar:
resources:
requests:
cpu: 0.25
memory: 0.5Gi
limits:
cpu: 0.5
memory: 1.0Gi
Docker Image customizations
No response
What happened
STDERR:
WARNING: Kubernetes configuration file is group-readable. This is insecure. Location: /tmp/kubeconfig.yml
WARNING: Kubernetes configuration file is world-readable. This is insecure. Location: /tmp/kubeconfig.yml
Error: Failed to render chart: exit status 1: WARNING: Kubernetes configuration file is group-readable. This is insecure. Location: /tmp/kubeconfig.yml
WARNING: Kubernetes configuration file is world-readable. This is insecure. Location: /tmp/kubeconfig.yml
Error: template: airflow/templates/workers/worker-serviceaccount.yaml:24:23: executing "airflow/templates/workers/worker-serviceaccount.yaml" at <include "removeNilFields" .Values.workers.celery>: error calling include: template: airflow/templates/_helpers.yaml:1259:21: executing "removeNilFields" at <eq $val nil>: error calling eq: uncomparable type []interface {}: []
Use --debug flag to render out invalid YAML
Error: plugin "diff" exited with error
COMBINED OUTPUT:
WARNING: Kubernetes configuration file is group-readable. This is insecure. Location: /tmp/kubeconfig.yml
WARNING: Kubernetes configuration file is world-readable. This is insecure. Location: /tmp/kubeconfig.yml
********************
Release was not present in Helm. Diff will show entire contents as new.
********************
Error: Failed to render chart: exit status 1: WARNING: Kubernetes configuration file is group-readable. This is insecure. Location: /tmp/kubeconfig.yml
WARNING: Kubernetes configuration file is world-readable. This is insecure. Location: /tmp/kubeconfig.yml
Error: template: airflow/templates/workers/worker-serviceaccount.yaml:24:23: executing "airflow/templates/workers/worker-serviceaccount.yaml" at <include "removeNilFields" .Values.workers.celery>: error calling include: template: airflow/templates/_helpers.yaml:1259:21: executing "removeNilFields" at <eq $val nil>: error calling eq: uncomparable type []interface {}: []
Use --debug flag to render out invalid YAML
Error: plugin "diff" exited with error
What you think should happen instead
Because I used value.yaml.gotmpl, so it can compare the list type in
Remove all nil fields in a map and return new dict object.
Usage:
{{ include "removeNilFields" . }}
*/}}
{{- define "removeNilFields" -}}
{{- $newValues := dict -}}
{{- range $key, $val := . -}}
{{- if kindIs "map" $val -}}
{{- $nested := include "removeNilFields" $val | fromYaml -}}
{{- if gt (len $nested) 0 -}}
{{- $_ := set $newValues $key $nested -}}
{{- end -}}
{{- else if not (eq $val nil) -}}
{{- $_ := set $newValues $key $val -}}
{{- end -}}
{{- end -}}
{{- toYaml $newValues -}}
{{- end -}}
default
celery:
# List of worker sets. Each item can overwrite values from the parent `workers` and `workers.celery`
# section.
sets: [] -> error here
How to reproduce
Use value.yaml.gotmpl to deploy airflow
Anything else
I suggest
{{- else if not (eq $val nil) -}} -> {{- else if $val -}}
because the default sets value is a list
Are you willing to submit PR?
Code of Conduct
Official Helm Chart version
1.19.0 (latest released)
Apache Airflow version
3.1.8
Kubernetes Version
v1.31.4
Helm Chart configuration
Docker Image customizations
No response
What happened
What you think should happen instead
Because I used value.yaml.gotmpl, so it can compare the list type in
default
How to reproduce
Use value.yaml.gotmpl to deploy airflow
Anything else
I suggest
because the default
setsvalue is a listAre you willing to submit PR?
Code of Conduct