airflow.providers.cncf.kubernetes.triggers.job

KubernetesJobTrigger

KubernetesJobTrigger 在触发器工作进程 (trigger worker) 上运行以检查 Job 的状态。

模块内容

class airflow.providers.cncf.kubernetes.triggers.job.KubernetesJobTrigger(job_name, job_namespace, pod_name, pod_namespace, base_container_name, kubernetes_conn_id=None, poll_interval=10.0, cluster_context=None, config_file=None, in_cluster=None, get_logs=True, do_xcom_push=False)[source]

基类: airflow.triggers.base.BaseTrigger

KubernetesJobTrigger 在触发器工作进程 (trigger worker) 上运行以检查 Job 的状态。

参数:
  • job_name (str) – Job 的名称。

  • job_namespace (str) – Job 的命名空间 (namespace)。

  • pod_name (str) – Pod 的名称。

  • pod_namespace (str) – Pod 的命名空间 (namespace)。

  • base_container_name (str) – Pod 中基础容器的名称。

  • kubernetes_conn_id (str | None) – 用于 Kubernetes 集群的 kubernetes 连接 ID

  • cluster_context (str | None) – 指向 Kubernetes 集群的上下文 (context)。

  • config_file (str | None) – kubeconfig 文件的路径。

  • poll_interval (float) – 检查状态的轮询间隔(秒)。

  • in_cluster (bool | None) – 使用 in_cluster 配置运行 kubernetes 客户端。

  • get_logs (bool) – 将基础容器的 stdout 作为任务日志获取。

  • do_xcom_push (bool) – 如果为 True,当容器完成时,容器中文件 /airflow/xcom/return.json 的内容也将被推送到 XCom。

job_name[source]
job_namespace[source]
pod_name[source]
pod_namespace[source]
base_container_name[source]
kubernetes_conn_id = None[source]
poll_interval = 10.0[source]
cluster_context = None[source]
config_file = None[source]
in_cluster = None[source]
get_logs = True[source]
do_xcom_push = False[source]
serialize()[source]

序列化 KubernetesCreateJobTrigger 参数和类路径。

async run()[source]

获取当前 Job 状态并生成一个 TriggerEvent。

property hook: airflow.providers.cncf.kubernetes.hooks.kubernetes.AsyncKubernetesHook[source]
property pod_manager: airflow.providers.cncf.kubernetes.utils.pod_manager.PodManager[source]

此条目是否有帮助?