airflow
| Version | 2026.144.1443 |
| Repo | superproject |
Apache Airflow runs single-node (LocalExecutor + SQLite) from charly-installed wrapper scripts, serving an authenticated REST API on :8080.
The airflow candy installs four /usr/local/bin wrapper scripts that
drive Airflow 3.x under supervisord: airflow-init.sh (one-shot db migrate + binds the SimpleAuthManager admin password to the injected
AIRFLOW_ADMIN_PASSWORD secret) plus airflow-webserver.sh (api-server),
airflow-scheduler.sh, and airflow-dag-processor.sh. At deploy the
three daemons serve the REST API on :8080; notebooks self-author DAGs
into AIRFLOW__CORE__DAGS_FOLDER at runtime. The verifiable artifacts
are the wrapper scripts (build scope) and the live REST API + JWT
issuance (deploy scope).
Services
Section titled “Services”airflow-initairflow-schedulerairflow-dag-processorairflow-webserver
Acceptance plan
Section titled “Acceptance plan”This candy’s plan: — the runnable spec charly check executes against a live deployment. check: steps are idempotent probes; run: steps change state.
| Intent | Step |
|---|---|
run |
mkdir=${HOME}/airflow |
run |
mkdir=${HOME}/airflow/dags |
run |
mkdir=${HOME}/airflow/logs |
run |
mkdir=${HOME}/airflow/plugins |
run |
write=/usr/local/bin/airflow-init.sh |
run |
write=/usr/local/bin/airflow-webserver.sh |
run |
write=/usr/local/bin/airflow-scheduler.sh |
run |
write=/usr/local/bin/airflow-dag-processor.sh |
check |
the one-shot init wrapper is installed and executable |
check |
the api-server wrapper is installed and executable |
check |
the scheduler wrapper is installed and executable |
check |
the dag-processor wrapper is installed and executable |
check |
the running api-server answers /api/v2/version with HTTP 200 |
check |
posting the injected admin credentials to /auth/token returns a bearer access_token |
check |
command=test -f ${HOME}/airflow/airflow.db |
check |
service=airflow-scheduler |
check |
service=airflow-dag-processor |
check |
service=airflow-webserver |
check |
addr=127.0.0.1:${HOST_PORT:8080} |