我希望能够同时使用必需参数和可选参数来触发我的dag
def func(ds, **kwargs):
print("Required value of {} for key=required".
format(kwargs['dag_run'].conf['required']))
value="default_value"
# logic to check kwargs['dag_run'].conf['optional'] exist and replace value
if optional value exist.
some_func(kwargs['dag_run'].conf[required], value)
我的PythonOperator代码如下所示
PythonOperator(
task_id="test_optional_input",
provide_context = True,
python_callable = func,
dag=dag
)
这样,当我仅触发我的dag时:
airflow trigger_dag test_optional --conf '{"required":"required_arg"}'
Airflow将使用default_value而不是期望它从cli中传递。
任何人都知道我该怎么做到吗?