Airflow 如何使用气流';s SSH运算符

Airflow 如何使用气流';s SSH运算符,airflow,airflow-operator,Airflow,Airflow Operator,我正在尝试使用气流在远程系统中运行Pentaho作业。我能够使用airflow的SSH操作符SSH到远程系统并运行shell脚本,但我想知道如何将参数传递给shell脚本 例如,shell命令如下所示 sh-C“$PENT_HOME”/kitchen.sh-file=“$PENT_HOME/Details.kjb”-level=Basic>$logFolder/date-u+%Y-%m-%dT%H:%m:%SZ”-Details.log 2>&1 运行没有参数的简单shell脚本的DAG脚本是

我正在尝试使用气流在远程系统中运行Pentaho作业。我能够使用airflow的SSH操作符SSH到远程系统并运行shell脚本,但我想知道如何将参数传递给shell脚本

例如,shell命令如下所示

sh-C“$PENT_HOME”/kitchen.sh-file=“$PENT_HOME/Details.kjb”-level=Basic>$logFolder/
date-u+%Y-%m-%dT%H:%m:%SZ”
-Details.log 2>&1

运行没有参数的简单shell脚本的DAG脚本是

t1 = SSHOperator(ssh_conn_id='SSH-dev',
    task_id='ssh_operator',
    command='/opt/scripts/test.sh ',
    dag=dag)

command
参数接受任何bash/shell命令,因此您可以这样做,例如:

t1=SSHOperator(ssh\u conn\u id='ssh-dev',
任务\u id='ssh\u运算符',
command='/opt/scripts/test.sh arg1 arg2',
dag=dag)
就你而言:

t1=SSHOperator(ssh\u conn\u id='ssh-dev',
任务\u id='ssh\u运算符',
command='bash'$PENT_HOME”/kitchen.sh-file=“$PENT_HOME/Details.kjb”-level=Basic>$logFolder/date-u+%Y-%m-%dT%H:%m:%SZ”-Details.log 2>&1',
dag=dag)

以下代码起作用了
t1=SSHOperator(ssh\u conn\u id='ssh-dev',task\u id='ssh\u operator',command='source/home/test/.bash\profile;“$PENT\u home”/kitchen.sh-file=“$PENT\u home/Details.kjb”-level=Basic>$logFolder/date-u+%Y-%m-%dT%H:%m:%SZ”-Details.log 2>&1',dag=dag)