GMashtalyar

Установка

.

export AIRFLOW_HOME=pwd
echo $AIRFLOW_HOME

pip3 install apache-airflow 
airflow db init
airflow standalone

airflow users  create --role Admin --username admin --email admin --firstname admin --lastname admin --password admin

Example

Пример

from datetime import timedelta
from airflow import DAG
from airflow.operators.python import PythonOperator
from airflow.utils.dates import days_ago

default_args = {
    "owner": "admin",
    "depends_on_past": False,
    "start_date": days_ago(0,0,0,0,0),
    "email": ["gmashtalyar@yandex.ru"],
    "email_on_failure": False,
    "email_on_retry": False,
    "retries": 1,
    "retry_dealy": timedelta(minutes=1)
}

dag = DAG(
    "Email_805",
    default_args=default_args,
    description="ClientsModel",
    schedule_interval="5 8 * * 1-5"
)

def fetch_email_data():
    print("Some function here")

def match_model_excel():
    print("Some function here")

task_01 = PythonOperator(
    task_id="get_clients",
    python_callable=fetch_email_data,
    dag=dag
)

task_02 = PythonOperator(
    task_id="send_clients",
    python_callable=match_model_excel,
    dag=dag
)


task_01 >> task_02