Official Helm Chart version
1.19.0 (latest released)
Apache Airflow version
3.1.7
Kubernetes Version
not relevant
Helm Chart configuration
executor: KubernetesExecutor
securityContexts:
pod:
runAsNonRoot: true
seccompProfile:
type: RuntimeDefault
# FAB auth manager requires explicit external_db_managers so that
# `airflow db migrate` creates FAB tables (ab_user, ab_role, etc.).
# Auto-discovery via create_auth_manager() fails silently in the migrate job context.
config:
database:
external_db_managers: airflow.providers.fab.auth_manager.models.db.FABDBManager
# Global volume — mounts into all pods (including those running git-sync)
volumes:
- name: github-app-key
secret:
secretName: airflow-github-app
defaultMode: 0444
dags:
gitSync:
enabled: true
repo: https://github.com/org/repo.git
branch: main
ref: main
subPath: ""
period: 60s
securityContexts:
container:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
extraVolumeMounts:
- name: github-app-key
mountPath: /etc/github-app
readOnly: true
env:
- name: GITSYNC_GITHUB_APP_APPLICATION_ID
valueFrom:
secretKeyRef:
name: airflow-github-app
key: app-id
- name: GITSYNC_GITHUB_APP_INSTALLATION_ID
valueFrom:
secretKeyRef:
name: airflow-github-app
key: installation-id
- name: GITSYNC_GITHUB_APP_PRIVATE_KEY_FILE
value: /etc/github-app/private-key.pem
postgresql:
enabled: false
redis:
enabled: false
flower:
enabled: false
statsd:
enabled: false
data:
metadataConnection:
protocol: postgresql
# host, port, user, pass, db injected at deploy time
sslmode: require
# Webserver secret key — injected via --set at deploy time
# webserverSecretKey: <set at deploy time>
# API Server serves the web UI in Airflow 3.x
apiServer:
replicas: 1
resources:
requests:
cpu: 250m
memory: 512Mi
limits:
cpu: "1"
memory: 2Gi
scheduler:
replicas: 1
resources:
requests:
cpu: 250m
memory: 512Mi
limits:
cpu: "1"
memory: 2Gi
ingress:
apiServer:
enabled: true
ingressClassName: haproxy
hosts:
- name: airflow.example.org
tls:
enabled: true
createUserJob:
resources:
requests:
cpu: 100m
memory: 256Mi
limits:
cpu: 500m
memory: 512Mi
migrateDatabaseJob:
resources:
requests:
cpu: 100m
memory: 256Mi
limits:
cpu: 500m
memory: 512Mi
Docker Image customizations
No response
What happened
Trying to setup Airflow, I was surprised I had to set the following:
config:
database:
external_db_managers: airflow.providers.fab.auth_manager.models.db.FABDBManager
Otherwise, services never start because the migration check fails.
What you think should happen instead
Maybe better defaults in the helm values. I am also not sure what "FAB" is really for. :)
How to reproduce
Take my config above:
helm upgrade --install -f values-from-helm.yml -f my-helm-values.yml etc.
Anything else
No response
Are you willing to submit PR?
Code of Conduct
Official Helm Chart version
1.19.0 (latest released)
Apache Airflow version
3.1.7
Kubernetes Version
not relevant
Helm Chart configuration
Docker Image customizations
No response
What happened
Trying to setup Airflow, I was surprised I had to set the following:
Otherwise, services never start because the migration check fails.
What you think should happen instead
Maybe better defaults in the helm values. I am also not sure what "FAB" is really for. :)
How to reproduce
Take my config above:
Anything else
No response
Are you willing to submit PR?
Code of Conduct