1. rest api to trigger dag
POST /api/experimental/dags/<DAG_ID>/dag_runs #Creates a dag_run for a given dag id.
curl -X POST \
http://localhost:8080/api/experimental/dags/<DAG_ID>/dag_runs \
-H 'Cache-Control: no-cache' \
-H 'Content-Type: application/json' \
-d '{"conf":"{\"key\":\"value\"}"}'
2. 存在的问题:当连续trigger同一个dag,会发生Run id manual__XXX already exists 异常
error:b'400 BAD REQUEST: [{"error":"Run id manual__2020-10-13T08:53:57+00:00 already exists for dag id your_dag_name"}\n]'
异常产生的原因:
可以通过下面airflow的部分源码可以看出:trigger DAG后,run_id可以在trigger DAG时通过rest api的参数指定,如果没有指定,则会通过execution_date生成:run_id = "manual__{0}".format(execution_date.isoformat