Metadata-Version: 2.4
Name: reef-bundle
Version: 1.0.3
Summary: Airflow DAG bundle that fetches versioned DAGs from a Reef server.
Author: TKul6
Author-email: TKul6@github.com
Requires-Python: >=3.10,<4.0
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Programming Language :: Python :: 3.15
Requires-Dist: requests (>=2.32.4,<3.0.0)
Requires-Dist: urllib3 (>=2.7.0,<3.0.0)
Project-URL: Documentation, https://github.com/TKul6/reef/tree/HEAD/reef-bundle
Project-URL: Homepage, https://github.com/TKul6/reef
Project-URL: Issues, https://github.com/TKul6/reef/issues
Project-URL: Repository, https://github.com/TKul6/reef
Description-Content-Type: text/markdown

# Reef DAG Bundle

`ReefDagBundle` is the Airflow half of **Reef**.

Reef lets you swap in new DAG files on a Kubernetes-hosted Airflow without restarting anything.
DAGs are baked into a versioned Reef server image rather than synced onto a shared volume; this
bundle polls that server on every refresh and re-downloads the archive only when its content has
actually changed. Point Airflow at a new Reef image and the next refresh picks it up — no Airflow
restart, no DAG-sync sidecar, no shared filesystem to keep consistent.

`ReefDagBundle` is built on Airflow 3's
[DAG bundle](https://airflow.apache.org/docs/apache-airflow/stable/administration-and-deployment/dag-bundles.html)
interface (`BaseDagBundle`), which Airflow 2 does not have. **Airflow 3.1 or newer is required.**

```bash
pip install reef-bundle
```

Full documentation — configuring `dag_bundle_config_list`, retry/backoff tuning for riding out a
Reef rollout, and the endpoints it calls:
[github.com/TKul6/reef/tree/HEAD/reef-bundle](https://github.com/TKul6/reef/tree/HEAD/reef-bundle)

For more info regarding reef [click here](https://github.com/TKul6/reef)

