如何解决循环触发 DAG
我尝试触发 DAG 任务 3 次,如何使用 python 脚本来完成。
目前我的流程工作是
dag = DAG('dag1',default_args=default_args,concurrency=1,max_active_runs=1,schedule_interval=无,catchup=False)
任务 = BashOperator( task_id='task1',bash_command='ssh "runJob.sh"',dag=dag)
解决方法
我假设您使用的是 Airflow 2,您可以使用以下命令来触发 DAG 运行。
airflow dags trigger [-h] [-c CONF] [-e EXEC_DATE] [-r RUN_ID] [-S SUBDIR] dag_id
您可以在 this command here 上阅读更多内容。
基于该命令,我们可以使用 subprocess
来运行它。
import subprocess
command = [
"airflow","dags","trigger","-e","2021-02-05 00:00:00","-r","manual__2021-02-05T00:00:00+00:00","my_dag",]
for i in range(3):
process = subprocess.Popen(command,stdout=subprocess.PIPE)
output,error = process.communicate()
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。