airflow.operators.trigger_dagrun

模組內容

類別

TriggerDagRunLink

TriggerDagRunOperator 的 Operator 連結。

TriggerDagRunOperator

為指定的 DAG ID 觸發 DAG 執行。

屬性

XCOM_LOGICAL_DATE_ISO

XCOM_RUN_ID

airflow.operators.trigger_dagrun.XCOM_LOGICAL_DATE_ISO = 'trigger_logical_date_iso'[原始碼]
airflow.operators.trigger_dagrun.XCOM_RUN_ID = 'trigger_run_id'[原始碼]

基底類別: airflow.models.baseoperatorlink.BaseOperatorLink

TriggerDagRunOperator 的 Operator 連結。

它允許使用者使用 TriggerDagRunOperator 存取由任務觸發的 DAG。

name = '已觸發 DAG'[原始碼]

連結到外部系統。

注意:此函數的舊簽名為 (self, operator, dttm: datetime)。在運行時仍然支援,但已被棄用。

參數
傳回

到外部系統的連結

傳回類型

str

class airflow.operators.trigger_dagrun.TriggerDagRunOperator(*, trigger_dag_id, trigger_run_id=None, conf=None, logical_date=None, reset_dag_run=False, wait_for_completion=False, poke_interval=60, allowed_states=None, failed_states=None, skip_when_already_exists=False, deferrable=conf.getboolean('operators', 'default_deferrable', fallback=False), execution_date=None, **kwargs)[原始碼]

基底類別: airflow.models.baseoperator.BaseOperator

為指定的 DAG ID 觸發 DAG 執行。

請注意,如果啟用資料庫隔離模式,則並非所有功能都受支援。

參數
  • trigger_dag_id (str) – 要觸發的 DAG 的 dag_id(已套用範本)。

  • trigger_run_id (str | None) – 用於觸發 DAG 執行的執行 ID(已套用範本)。如果未提供,將自動產生執行 ID。

  • conf (dict | None) – DAG 執行的組態(已套用範本)。

  • logical_date (str | datetime.datetime | None) – 觸發 DAG 的邏輯日期(已套用範本)。

  • reset_dag_run (bool) – 如果 DAG 執行已存在,是否清除現有的 DAG 執行。這在回填或重新執行現有的 DAG 執行時很有用。這僅重設(而非重新建立)DAG 執行。DAG 執行組態是不可變的,並且在重新執行現有的 DAG 執行時不會重設。當 reset_dag_run=False 且 DAG 執行存在時,將引發 DagRunAlreadyExists。當 reset_dag_run=True 且 DAG 執行存在時,現有的 DAG 執行將被清除以重新執行。

  • wait_for_completion (bool) – 是否等待 DAG 執行完成。(預設值:False)

  • poke_interval (int) – 當 wait_for_completion=True 時,檢查 DAG 執行狀態的輪詢間隔。(預設值:60)

  • allowed_states (list[str | airflow.utils.state.DagRunState] | None) – 觸發 DAG 的允許 DAG 執行狀態的選用清單。這在將 wait_for_completion 設定為 True 時很有用。必須是有效的 DagRunState。預設值為 [DagRunState.SUCCESS]

  • failed_states (list[str | airflow.utils.state.DagRunState] | None) – 觸發 DAG 的失敗或不允許的 DAG 執行狀態的選用清單。這在將 wait_for_completion 設定為 True 時很有用。必須是有效的 DagRunState。預設值為 [DagRunState.FAILED]

  • skip_when_already_exists (bool) – 如果同一邏輯日期的觸發 DAG 的 DAG 執行已存在,則設定為 true 以將任務標記為 SKIPPED。

  • deferrable (bool) – 如果等待完成,是否延遲任務直到完成,預設值為 False

  • execution_date (str | datetime.datetime | None) – 已棄用的參數;與 logical_date 相同。

template_fields: Sequence[str] = ('trigger_dag_id', 'trigger_run_id', 'logical_date', 'conf', 'wait_for_completion',...[原始碼]
template_fields_renderers[原始碼]
ui_color = '#ffefeb'[原始碼]
execute(context)[原始碼]

在建立 operator 時衍生。

Context 是與呈現 jinja 範本時使用的字典相同。

請參閱 get_template_context 以取得更多 context。

execute_complete(context, session, event)[原始碼]

此條目是否有幫助?