Replies: 1 comment
-
|
Feel free to propose a PR - that sounds interesting, but details can be discussed in a PR you open. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Summary
We need file-based DagBundle configuration with automatic reloading to support GitOps workflows and team self-onboarding in multi-tenant Airflow deployments.
The Problem
Right now, Airflow 3.x DagBundles require JSON configurations embedded directly in airflow.cfg or environment variables. This creates several problems for teams trying to automate onboarding and follow GitOps principles.
Current approach looks like this:
This causes real pain:
Use Case: Multi-Team GitOps Onboarding
Our platform serves more than 30 teams with decentralized DAG ownership. When a new team requests Airflow access, here's what happens:
This manual intervention completely breaks the self-service model we're trying to build. Teams can't truly onboard themselves if platform engineers need to restart services every time.
What We're Proposing
Let Airflow load DagBundle configuration from files using the file:// protocol, with optional automatic reloading:
The configuration file would be standard JSON:
[ { "name": "analytics", "classpath": "airflow.providers.git.bundles.git.GitDagBundle", "kwargs": { "repo_url": "https://github.com/org/team-analytics-dags", "tracking_ref": "main", "refresh_interval": 60 } } ]Why This Helps GitOps Workflows
Before this feature:
With this feature:
The GitOps workflow becomes simple:
Future Extensions
Once file:// is stable and proven, we could extend the same approach to remote protocols:
But starting with local files keeps things simple and covers most use cases.
We're willing to contribute to the implementation if there's interest from the community.
Beta Was this translation helpful? Give feedback.
All reactions