我的任務代碼如下。我應該如何在AIRFLOW中使用「所有者」而非shell所有者運行任務
from airflow.models import DAG
from airflow.operators import BashOperator
from datetime import datetime, timedelta
rootdir = "/tmp/airflow"
default_args = {
'owner': 'max',
'depends_on_past': False,
'start_date': datetime.now(),
'email': ['[email protected]'],
'email_on_failure': False,
'email_on_retry': False,
'retries': 1,
'retry_delay': timedelta(minutes=5),
}
dag = DAG('test3', default_args=default_args,
schedule_interval='*/2 * * * *')
t1 = BashOperator(
task_id='test3-task1',
bash_command='date >> {rootdir}/test3-task1.out'.format(rootdir=rootdir),
owner='max',
dag=dag)
t2 = BashOperator(
task_id='test3-task2',
bash_command='whoami',
retries=3,
owner='max',
dag=dag)
然後我用linux的'airflow'用戶運行命令「airflow test test3 test3-task2 2016-07-25」。輸出結果「whoami」是「氣流」。 但我希望輸出結果是任務的「所有者」。
我的錯誤是什麼?
謝謝
以下是輸出結果。
[2016年7月25日11:22:37716] {bash_operator.py:64} INFO - 臨時腳本位置:/ TMP/airflowtmpoYNJE8 // TMP/airflowtmpoYNJE8/TEST3-task2U1lpom
[2016-07 -25 11:22:37716] {bash_operator.py:65} INFO - 運行命令:WHOAMI
[2016年7月25日11:22:37722] {bash_operator.py:73} INFO - 輸出:
[2016-07-25 11:22:37,725] {bash_operator.py:77}信息 - airflow
[2016-07-25 11:22:37,725] {bash_operator.py:80}信息 - 退出命令返回代碼0
謝謝您的回答。 –