要通过UI触发带有参数/配置的DAG,可以按照以下步骤进行操作:
default_args
参数设置默认参数,使用params
属性设置其他参数。from airflow import DAG
from airflow.operators.python_operator import PythonOperator
from datetime import datetime
default_args = {
'start_date': datetime(2021, 1, 1)
}
def my_task(ds, **kwargs):
my_param = kwargs.get('params', {}).get('my_param', 'default_value')
print(f"Running task with my_param={my_param}")
# TODO: 执行具体任务的代码
with DAG('my_dag', default_args=default_args, schedule_interval=None) as dag:
task = PythonOperator(
task_id='my_task',
provide_context=True,
python_callable=my_task,
op_kwargs={'params': {'my_param': 'custom_value'}}
)
在Airflow的UI中创建一个新的DAG运行。在创建过程中,可以在"Conf"字段中设置参数值。例如,可以将my_param
设置为custom_value
。
运行DAG,并在日志中查看任务运行时的输出。可以看到任务使用了通过UI设置的参数值。
通过上述步骤,可以在Airflow的UI中触发带有参数/配置的DAG,并根据需要进行自定义。