2016-09-28 5 views
4

私は気流の初心者です、私たちは3つのタスクを持つDAGを持っています。現在、私たちは個別のタスクを実行するための柔軟性が必要なため、Celery Executorを使用しています。ワークフローをスケジュールする必要はありません。手動のトリガーになるからです。 Airflow UI(oozieと同じ)を使用してワークフロー全体を実行する方法はありますか?気流UIを使用してDAG全体を実行

一度に1つのタスクを実行するのは苦痛です。

+0

明確にするために、最初のタスクを実行するときに3つのタスクをすべて実行しますか? また、関連コードを投稿してください。 –

+0

依存関係を設定し、 'airflow trigger_dag id'でコマンドラインからdagを実行すると、何が問題になりますか? –

+0

はい、あなたはそれを得ました。我々は、最初に実行するときにすべてのタスクを実行する必要があります。 制限のため、コードを投稿することはできません。私たちはDAGを手渡して、ワークフローを手動でトリガーする作業を担当するチームをサポートします。彼らはコマンドラインで多くの経験を持っていないので、UIを介して実行する必要があります。 – user1432155

答えて

0

私はそれに刺すようにして、うまくいけば、これで動作するようにコードを適応させることができます。

default_args = { 
'owner': 'airflow', 
'depends_on_past': False, 
'start_date': datetime(2015, 6, 1), 
'email': ['[email protected]'], 
'email_on_failure': False, 
'email_on_retry': False, 
'retries': 1, 
'retry_delay': timedelta(minutes=5), 
# 'queue': 'bash_queue', 
# 'pool': 'backfill', 
# 'priority_weight': 10, 
# 'end_date': datetime(2016, 1, 1), 
} 

dag = DAG('your_dag', default_args=default_args) 

#start of your tasks 

first_task = BashOperator(task_id='print_date', 
          bash_command='python script1_name args', 
          dag=dag) 
second_task = BashOperator(task_id='print_date', 
          bash_command='python script2_name args', 
          dag=dag) 
third_task = BashOperator(task_id='print_date', 
          bash_command='python script_name args', 
          dag=dag) 

#then set the dependencies 
second_task.set_upstream(first_task) 
third_task.set_upstream(second_task) 

DAGをトリガーすると、3つのタスクがすべて順番に実行されます。これらのタスクがではなく、である場合、スクリプトからset_upstream()行を削除できます。 1つのコマンドで実行するには、これらのタスクがすべて同じスクリプト内になければならないことに注意してください。エアフロー1.8で

+3

を起動することができます。答えにあなたの時間と労力を感謝します。前にも言及したように、私はエアフローダッシュボードを介してそれを実行したい。私はコマンドプロンプトやスケジューリングメカニズムを使ってこのワークフローを起動させたくありません。言及した順序でダグを実行するには、ボタンをクリックするとボタンのようなメカニズムがありますか? – user1432155

+0

はまた、あなたはおそらく、いくつかのことをインポートしたいと思う:日時インポート日時から '' ' 気流輸入DAG からairflow.operators.bash_operatorインポートBashOperator からので、timedelta ' '' – cantdutchthis

4

と高い再生ボタンのように見えるダッシュボード上の各DAGのボタンがあります:

:エアフローの古いバージョンでは

play button

は、あなたがで発見ダイアログを使用することができます

Browse -> Dag Runs -> Create

いずれかがUIからダッグを開始する必要があります。

関連する問題