bluspark/airflow-dag-run-bundle
DagRunMessageExecuted events, enabling downstream processing (e.g., notifications, file handling).airflow_dag_ids mapping (e.g., name:dag-id) enables granular control over DAG selection.AIRFLOW__WEBSERVER__REST_API_ENABLED=True (default in modern versions).config/packages/ (unless using environment variables or Symfony’s parameter_bag).airflow_host uses http://).DagRunMessageExecuted events).airflow_password be secured (env vars, Vault, etc.)?async, doctrine, amqp). Choose based on reliability needs:
AIRFLOW__WEBSERVER__REST_API_ENABLED).curl or Postman to confirm DAG triggers work.composer require bluspark/airflow-dag-run-bundle.config/bundles.php.bluspark_airflow_dag_run.yaml with secure credentials (use %env(AIRFLOW_PASSWORD)%).messenger.yaml (e.g., async for simplicity).DagRunMessageExecuted to the transport.Bluspark\AirflowDagRunBundle\Scheduler\DagRunScheduler into services to trigger DAGs:
$scheduler->triggerDag('export_dag', ['param' => 'value']);
DagRunScheduler.DagRunMessageExecuted).DagRunMessageExecuted in Sentry).parameter_bag or env vars to centralize secrets.DagRunScheduler to log trigger payloads and responses.$logger->info('Triggered DAG', ['dag_id' => $dagId, 'params' => $params]);
airflow_username/password and Airflow’s AIRFLOW__WEBSERVER__AUTH_BACKEND.airflow scheduler/webserver logs).run_id or external locks (e.g., Redis) to prevent duplicates.| Failure Scenario | Impact | Mitigation |
|---|---|---|
| Airflow REST API downtime | DAG triggers fail silently. | Retry logic in Messenger middleware. |
| Auth credentials expire | All triggers fail. | Use short-lived tokens or a secrets manager. |
| Messenger transport failure | Triggers lost or delayed. | Fallback to synchronous execution ( |
How can I help you explore Laravel packages today?