from airflow.operators.python_operator import PythonOperator
def my_task(args):
# do something with args
with DAG('my_dag', ...) as dag:
task = PythonOperator(
task_id='my_task',
python_callable=my_task,
op_kwargs={'args': ['arg1', 'arg2', 'arg3']}
)
在此示例中,参数['arg1', 'arg2', 'arg3']将传递给my_task任务。
from airflow.operators.bash_operator import BashOperator
with DAG('my_dag', ...) as dag:
task = BashOperator(
task_id='my_task',
bash_command='python my_script.py {{ var.value.my_args }}',
env={'my_args': ['arg1', 'arg2', 'arg3']}
)
在此示例中,通过使用{{ var.value.my_args }}替换命令中的参数,可以将env中指定的参数‘arg1’, 'arg2'和'arg3'传递给my_script.py脚本。