多くのサーバーで実行できる有用なアクティビティーがある場合は、
ブロードキャスト・フィーチャーを使用して、多くのサーバーで同じステップを反復できます。
通常、ステップは 1 つのサーバーでしか実行できません。
しかし、各ステップには
「ブロードキャスト」チェック・ボックスがあります。
ステップの
「ブロードキャスト」ボックスにチェックマークを付けると、
実行時にシステムがステップを一連の非ブロードキャスト・ステップ (ステップのセレクターに一致する各サーバーごとに、1 つ) に置換します。
注: ステップのセレクターが 1 つのサーバーにしか一致しない場合、ステップは一度だけ実行されます。
ブロードキャストの使用法として考えられるのは、以下のとおりです。
- サーバーのグループをリブートします。
- サーバーのグループでテストを実行します。
- サーバーのグループ全体に同じファイルのセットをコピーします。
- 同じソース・コードのセットを複数サーバーへチェックアウトし、
後でそれらを単一の保守が容易なステップを持つ個々のタスクに使用できるようにします。
ブロードキャスト・ステップにおけるスレッド化
システムは、実行時にブロードキャスト・ステップの置換ステップを作成する場合、
次のようにしてステップをスレッド化します。
- ブロードキャスト・ステップの「スレッド化 (Thread)」プロパティーが「いいえ (No)」に設定されている場合、
置換ステップは同じ「スレッド」の値を取得し、これによりすべて連続して実行されます。
各ステップは、次のステップが開始する前に完了する必要があります。
- ブロードキャスト・ステップの「スレッド」プロパティーが「はい (Yes)」に設定されている場合も、
置換ステップは、同じ「スレッド」の値を取得します。この結果、一連のステップは相互に平行して実行され、
なおかつ、スレッド化されたステップは、ブロードキャスト・ステップに前後して実行されます。
- ブロードキャスト・ステップの「スレッド」プロパティーが「結合 (Join)」に設定されている場合、
システムは「スレッド」を「はい (Yes)」に設定して、置換ステップを作成します。
ただし、最後のステップは「結合 (Join)」とマークされます。この結果、一連のステップが相互に平行して実行され、スレッド化されたステップはそれらに先行して実行されます。
しかし、ステップ全体は、ブロードキャスト・ステップの後のステップを開始する前に完了する必要があります。
ブロードキャスト・ステップからの別のプロジェクトの起動
インライン・プロジェクトが組み込まれているステップ、
またはステップの受け渡しや失敗の際にプロジェクトをチェーンするステップをブロードキャストできます (「成功チェーン」/「失敗チェーン (Fail Chain)」)。
別のプロジェクトを起動する (チェーンする) ステップをブロードキャストする場合は、
ブロードキャスト・ステップは起動したプロジェクトのセレクターを指定変更しないので注意してください。
一般に、ブロードキャスト・ステップのセレクターに一致する各サーバーでプロジェクトを起動する必要がある場合に、
ブロードキャスト・ステップからプロジェクトを起動するときは、
ライブラリーを使用します (独自のセレクターを持たないプロジェクト)。
ライブラリーを使用しない場合は、
ブロードキャスト・ステップの各コピーが異なるサーバーで実行されますが、
インライン化またはチェーンされたプロジェクトは、その独自のセレクターに従います。
この場合、セレクターは、ブロードキャスト・ステップのコピーと同じサーバーを選択しないことがあります。
各ブロードキャスト・ステップは、異なるサーバーで実行されることになりますが、インライン化されたプロジェクトのすべてのステップは同じサーバーで複数回実行されます。
注: 「ブロードキャスト」を使用してライブラリーを、
セレクターに一致する各サーバーで 1 回起動したい場合は、
ライブラリーに「スティッキー」オプションを設定します。
これにより、そのすべてのステップ (デフォルト・プロジェクト・サーバーを使用) が同じサーバーで実行されます。