У меня есть cronjob, который запускается с интервалом расписания cron 05 */1 * * 1-5
.Или, как Crontab Guru говорит: «В 5 минут каждый час в каждый день недели с понедельника по пятницу» (в EST вместо UTC)?
Как я могу преобразовать это в 'America / New_York' с учетом часового пояса Airflow DAG, который будет работать точно так же ?
Я задал предыдущий вопрос о DAG с поддержкой часовых поясов в Airflow, но мне не ясно из ответа или из документации по Airflow, как выполнить переход из DAG с start_date
с tzinfo
и schedule_interval
, имитирующими кронхоб.
В настоящее время я пытаюсь использовать DAG с файлом my_dag.py
следующим образом:
from airflow import DAG
from airflow.operators.bash_operator import BashOperator
from datetime import datetime, timedelta
import pendulum
local_tz = pendulum.timezone("America/New_York")
default_args=dict(
owner = 'airflow',
start_date=datetime(2018, 11, 7, 13, 5, tzinfo=local_tz), # 1:05 PM on Nov 7
schedule_interval=timedelta(hours=1),
)
dag = DAG('my_test_dag', catchup=False, default_args=default_args)
op = BashOperator(
task_id='my_test_dag',
bash_command="bash -i /home/user/shell_script.sh",
dag=dag
)
ОднакоDAG никогда не будет назначен.Что я здесь не так делаю?