Async wrapper for Airflow REST API
Project description
AIRFLOW-REST-API
Async wrapper for Airflow REST API. See more in documentation
INSTALL
pip install airflow-rest-api
USAGE
import asyncio
import os
import aiohttp
from airflow_rest_api.api import AirflowRestApi
AIRFLOW_HOST = os.environ.get("AIRFLOW_HOST", "http://127.0.0.1:8080")
AIRFLOW_USER = os.environ.get("AIRFLOW_USER", "admin")
AIRFLOW_PASSWORD = os.environ.get("AIRFLOW_PASSWORD", "admin")
async def main(ara):
for template in ara.find_template("/dags"):
template_id = template.id
break
auth = aiohttp.BasicAuth(AIRFLOW_USER, AIRFLOW_PASSWORD)
async with aiohttp.ClientSession(auth=auth) as session:
airflow_tasks = await ara.execute(session=session, template_id=template_id)
if airflow_tasks.status == 200:
file_token = airflow_tasks.raw["dags"][0]["file_token"]
template_id = 360
dag_source_code = (
await ara.execute(
session=session,
method=ara.get_template(template_id).method,
url=ara.render_url(template_id=template_id, file_token=file_token)
)
).raw
print(dag_source_code)
ara = AirflowRestApi(airflow_host=AIRFLOW_HOST)
ara.show_templates()
loop = asyncio.get_event_loop()
loop.run_until_complete(main(ara))
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file airflow-rest-api-0.0.0.tar.gz
.
File metadata
- Download URL: airflow-rest-api-0.0.0.tar.gz
- Upload date:
- Size: 9.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a940b070f8e9277addcf62e96d0ef8a75a29c214724f8e0f3561f64c0712aab5 |
|
MD5 | f33b3bd34a6701d56fab1f21180d0c5f |
|
BLAKE2b-256 | 451c120593776bc686fc61da5557a65bd07983b6a38cc6323fef9711551c346d |
File details
Details for the file airflow_rest_api-0.0.0-py3-none-any.whl
.
File metadata
- Download URL: airflow_rest_api-0.0.0-py3-none-any.whl
- Upload date:
- Size: 13.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a6d9acc559de49afded860c52bc1dfd90d30a3510ff69c2c7f6d6cb1c24195f2 |
|
MD5 | 345ec4e78dc1323fa68bf6393f0d2ddc |
|
BLAKE2b-256 | 983278ba6b4ebb070569a0e7f99a5f9cb99044707e085749a0dbccdeb4ab13ef |