Skip to main content

Apache Airflow scheduler adapter for Datus

Project description

datus-scheduler-airflow

Apache Airflow scheduler adapter for Datus.

Install

pip install datus-scheduler-airflow

Quick Start

from datus_airflow import AirflowSchedulerAdapter
from datus_scheduler_core.config import AirflowConfig
from datus_scheduler_core.models import SchedulerJobPayload

config = AirflowConfig(
    name="airflow_prod",
    type="airflow",
    api_base_url="http://localhost:8080/api/v1",
    username="admin",
    password="admin",
    dags_folder="/opt/airflow/dags",
)

adapter = AirflowSchedulerAdapter(config)
adapter.test_connection()

job = adapter.submit_job(SchedulerJobPayload(
    job_name="daily_report",
    sql="SELECT count(*) FROM orders",
    db_connection={"url": "postgresql://user:pass@host/db"},
    schedule="0 8 * * *",
))
print(job.job_id)

Integration Tests

# Start Airflow
docker compose up -d

# Run tests
uv run pytest tests/integration/ -v -m integration

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

datus_scheduler_airflow-0.1.0.tar.gz (17.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

datus_scheduler_airflow-0.1.0-py3-none-any.whl (12.1 kB view details)

Uploaded Python 3

File details

Details for the file datus_scheduler_airflow-0.1.0.tar.gz.

File metadata

File hashes

Hashes for datus_scheduler_airflow-0.1.0.tar.gz
Algorithm Hash digest
SHA256 6999c89492c1648f4e15f5eb42f961a96048cfb589d62e07f87c864e4657567c
MD5 19ac04de86e272ce9bd695fbf5ba43d4
BLAKE2b-256 2f818b18b838751b10d539ec17de787f5fe42d6851955e7656978cca0e1a5fef

See more details on using hashes here.

File details

Details for the file datus_scheduler_airflow-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for datus_scheduler_airflow-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d537fa3caa8c4207a3a7f6765ef4d4c2dddf7691795192005e3bc8d130084a4f
MD5 7e3812d715f8585706b06fd32319afec
BLAKE2b-256 20567983532d56c84df7e77faa3a07ba5518adfcfc3e1a49025acea320b3ee06

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page