10

気流の「所有者」がわかりません。ower のコメントは、「タスクの所有者です。unix ユーザー名を使用することをお勧めします」です。次のコードをいくつか書きました。

   Default_args = {
'owner': 'max',
'depends_on_past': False,
'start_date': datetime(2016, 7, 14),
'email': ['max@test.com'],
'email_on_failure': False,
'email_on_retry': False,
'retries': 1,
'retry_delay': timedelta(minutes=5),  

}

dag = DAG('dmp-annalect', default_args=default_args,
                schedule_interval='30 0 * * *')

pigjob_basedata = """{local_dir}/src/basedata/basedata.sh > 
{local_dir}/log/basedata/run_log &
""".format(local_dir=WORKSPACE)

task1_pigjob_basedata = BashOperator(
task_id='task1_pigjob_basedata',owner='max',
bash_command=pigjob_basedata ,
dag=dag)

しかし、コマンド「airflow test dagid taskid 2016-07-20」を使用すると、エラーが発生しました... {bash_operator.py:77} INFO - put: Permission denied: user=airflow, ....

私のジョブは「max」ユーザーで実行されたと思っていましたが、明らかに、「airflow」ユーザーを使用してテストを実行しました。

「最大」ユーザーを使用してタスクを実行する場合、どうすればよいですか。

4

2 に答える 2

4

私はこの問題を理解しました。/home/airflow/ に AIRFLOW_HOME を設定したので、airflow だけがこのファイル ディレクトリにアクセスできます。

于 2016-07-22T08:57:35.513 に答える