DAG: airflow_test_wxg

schedule: 50 * * * *


airflow_test_wxg

Toggle wrap
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
from airflow.operators.bash_operator import BashOperator
from airflow import DAG
from datetime import datetime, timedelta

import pendulum

local_tz = pendulum.timezone("Asia/Shanghai")

args = {
    'owner': 'Kristong',
    'start_date': datetime(2021, 4, 29, tzinfo=local_tz),
    'email': 'xingang.wang@traxretail.com',
    'email_on_failure': False,
    'email_on_retry': False,
    'retries': 3,
    'retry_delay': timedelta(minutes=1),
}

dag = DAG(
    dag_id='airflow_test_wxg',
    default_args=args,
    # schedule_interval='0 16 2,4,16,18 * *', # At 16:00 on day-of-month 2, 4, 16, and 18.
    # schedule_interval='0 16 * * 5',  # At 16:00 on Friday.
    # schedule_interval='*/1 * * * *',  # At every minute.
    schedule_interval='50 * * * *',  # At every minute.
    dagrun_timeout=timedelta(minutes=100))

t0 = BashOperator(
    task_id='sleep',
    bash_command='sleep 5',
    retries=3,
    dag=dag)

t1 = BashOperator(task_id="airflow_t_t1",
                  bash_command='cd /usr/local/airflow/dags/bi_etl/krist/test/;nohup python t1.py',
                  dag=dag)

t0.set_upstream(t1)