1

2つのスケジューラーで実行されているビルドボットがあります。1つはコードチェックインによってトリガーされ、もう1つはコンテンツチェックインによってトリガーされます。前者には、はるかに短いtreeStableTimerが必要です。これらのスケジューラーは両方とも同じビルダーをトリガーしますが、今起こっていることは、チェックインごとに全員がビルド通知メールを2回受け取ることです。1つはコードスケジューラ用で、もう1つはコンテンツスケジューラ用です。

たとえば、次のチェックインが行われた場合... CL#1000 12:00 pm user_a(コード)CL#1001 1:00 pm user_b(コンテンツ)... CL#1000でビルドが起動し、ビルドを送信しますuser_aへの通知メール。次に、ビルドがCL#1001から起動され、ビルド通知がuser_aとuser_bに送信されます。user_aは、チェックインが成功したという2つの通知を受け取りますが、1つだけ受け取る必要があります。

2つのスケジューラーを持つように設定したいのですが、ビルダーがトリガーしてメールを送信すると、スケジューラーの最後のビルドではなく、そのビルダーの最後のビルド以降にチェックインした人の数に通知が送信されます。これは概念的には簡単に思えますが、ドキュメントやフォーラムではこれについて何も見ていません。

これを行う正しい方法は何ですか?同じビルダーに異なるtreeStableTimersが必要であり、2つのスケジューラーのどちらがビルダーをトリガーしたかに関係なく、ビルドが完了したときにビルドメール通知が必要です。

4

1 に答える 1

1

fileIsImportantどのスケジューラーでどの変更をトリガーするかを選択するために使用していますか? デフォルトでは、これはビルドのトリガーとしてソース スタンプ (およびビルド) に渡される変更のリストには影響しません。重要なファイルに変更が加えられるまで、変更を蓄積するだけです。onlyImportantスケジューラーのパラメーターを使用して、重要でない変更を破棄することができるため、それらの変更がソース スタンプに含まれないようにすることができます (したがって、電子メールをトリガーしません)。

于 2012-02-05T14:09:29.813 に答える