fix(pipeline): migrate to Airflow 3 API server and SimpleAuthManager
All checks were successful
Build and Push Docker Images / Build Backend (FastAPI) (push) Successful in 34s
Build and Push Docker Images / Build Frontend (Next.js) (push) Successful in 1m12s
Build and Push Docker Images / Build Integrator (push) Successful in 58s
Build and Push Docker Images / Build Kestra Init (push) Successful in 31s
Build and Push Docker Images / Build Pipeline (Meltano + dbt + Airflow) (push) Successful in 31s
Build and Push Docker Images / Trigger Portainer Update (push) Successful in 1s

Airflow 3 replaced `airflow webserver` with `airflow api-server` and
removed the `airflow users` CLI. Auth is now via SimpleAuthManager
configured through AIRFLOW__CORE__SIMPLE_AUTH_MANAGER_USERS env var.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-26 09:32:08 +00:00
parent deb4024731
commit a7904b627d
3 changed files with 15 additions and 30 deletions

View File

@@ -96,11 +96,11 @@ services:
retries: 5
start_period: 10s
# Apache Airflow — workflow orchestrator (UI at http://localhost:8080)
airflow-webserver:
# Apache Airflow — API server + UI (http://localhost:8080)
airflow-api-server:
image: privaterepo.sitaru.org/tudor/school_compare-pipeline:latest
container_name: schoolcompare_airflow_webserver
command: airflow webserver --port 8080
container_name: schoolcompare_airflow_api
command: airflow api-server --port 8080
ports:
- "8080:8080"
environment: &airflow-env
@@ -108,7 +108,7 @@ services:
AIRFLOW__DATABASE__SQL_ALCHEMY_CONN: postgresql+psycopg2://schoolcompare:schoolcompare@db:5432/schoolcompare
AIRFLOW__CORE__DAGS_FOLDER: /opt/pipeline/dags
AIRFLOW__CORE__LOAD_EXAMPLES: "false"
AIRFLOW__WEBSERVER__EXPOSE_CONFIG: "false"
AIRFLOW__CORE__SIMPLE_AUTH_MANAGER_USERS: "admin:admin"
PG_HOST: db
PG_PORT: "5432"
PG_USER: schoolcompare
@@ -149,11 +149,7 @@ services:
airflow-init:
image: privaterepo.sitaru.org/tudor/school_compare-pipeline:latest
container_name: schoolcompare_airflow_init
command: >
bash -c "
airflow db migrate &&
airflow users create --username admin --password admin --firstname Admin --lastname User --role Admin --email admin@localhost || true
"
command: airflow db migrate
environment: *airflow-env
depends_on:
db: