2016-08-18 10 views
0

私は2つのタスクを持っています(TaskAとTaskBとしましょう)。私は両方のタスクを1時間ごとに実行したいが、TaskBにはTaskAが必要です。 TaskBにはパラメータはありませんが、TaskAには曜日と時間の2つのパラメータがあります。 TaskBをコマンドラインで実行すると、引数を渡す必要がありますか?Luigiのパラメータはどのように機能しますか?

答えて

1

一般に、タスクAのパラメータをタスクBに渡す必要はありませんが、タスクBはタスクAのパラメータの値を生成する必要があります。タスクBがこれらのパラメータを生成できない場合は、それらのパラメータをコマンドラインから取得し、それをrequiresメソッドのタスクAコンストラクタに渡すようにタスクBをセットアップする必要があります。

1

TaskBにはTaskAが必要ですが、TaskBではパラメータを受け付けない場合、おそらく現在の日付と時刻にTaskAが必要です。この仮定が真であれば、パラメータなしでTaskB @hourlyをcronで実行すれば十分です。タスクAに現在の日付と時刻を指定するためにはrequires()メソッドを定義してください。

一方、TaskBに特定の時点でTaskAが必要な場合は、それ自体がDateHourParameter()である必要があります(これは、日付と時刻のタスクをパラメータ化する方法として好ましい方法です。 DateMinuteParameter()またはDateSecondParameter()を2つのパラメータ(日付用と時間用)に分けて、独自のパラメータ値でTaskAの必要条件を生成します。

関連する問題