リリースは、デプロイメントによって実装されます。 デプロイメントは、単一フェーズとそれに関連付けられた環境をターゲットにします (各フェーズには、関連付けられた単一環境があります)。 デプロイメントは、幅広い基準で実装でき、リリース内のすべてのアプリケーションを使用する場合、単一アプリケーションの 1 回限りの緊急デプロイメントを表す場合、あるいはその中間の場合があります。 デプロイメントは、必要に応じて正確にターゲットを設定することができます。
IBM® UrbanCode Release のデプロイメントでは、次のものがまとめられます。
スケジュール。デプロイメントの発生するタイミングを定義し、それが一回限りのイベントか、繰り返し発生するイベントかを指定します。
E メール通知。ユーザー定義イベントによってトリガーされ、特定のユーザーまたはユーザー役割に送信されます。
必要な承認
デプロイメントまたはデプロイメント計画は、セグメントで構成されています。セグメントは、一緒に完了するよう意図されているリリース・アクティビティーを表します。セグメントは、別のセグメントが正常に完了した後に実行するよう構成することも、他のどのセグメントからも独立して実行することもできます。デプロイメント計画には、任意の数のセグメントを含めることができます。デフォルトの計画には、デプロイメント前タスクとデプロイメント・タスクという 2 つのセグメントがあります。
デプロイメント計画を定義したら、デプロイメント要求を使用していつでもデプロイメントを開始することができます。デプロイメント要求は、デプロイメント全体を開始するか、個別セグメントなどの、計画の一部を開始することができます。
すべてのチームが、1 次計画に加え、フォールバック計画も必ず持つようにしてください。フォールバック計画は、ブロックが解決されるまで古いバージョンにロールバックするといった単純なものにすることができます。
アドホック・デプロイメントは、名前が暗黙に示すように、未計画のデプロイメントです。アドホック・デプロイメントはいつでもスケジュールに入れることができます。つまり、リリース計画中にデプロイメントの完全なリストを定義する必要がないことを意味します。
繰り返しウィンドウを含め、標準的な環境進行でテストすることは重要ですが、想定した環境が使用不可になった場合でも、目的を変えて環境を再利用するくらいの柔軟性を持つようにしてください。
通常、アプリケーションのラインナップは、リリース作成時に定義されます。リリースに関連付けられたアプリケーションは、そのリリースを使用するすべてのデプロイメントで自動的に使用可能になります。アプリケーションおよびアプリケーション・スイートは、リリース・バージョンにプロモートすることができます。通常、リリース・バージョンは、正常にデプロイされ、信頼して再使用できるアプリケーション (またはスイート) を表します。
また、デプロイメントがスケジュールされた後に、リリースにアプリケーションを追加することができます。新規アプリケーションは、次回の、または進行中のすべてのデプロイメントに含まれます。
デプロイメント・アクティビティーは、タスクによって定義されます。 個々のタスクは、リリースに関連付けられた、ビジネス上意味のあるアクティビティーを表すことができる作業単位です。タスクは、1 度実行するように構成するか、デプロイメント計画が使用されるたびに実行するように構成することができます。 タスクは、ユーザー役割または特定のユーザーに割り当てることができます。また、割り当てなしの場合は、必要な役割を持っている誰でも要求することができます。 タスクは、定義された後タスク・ライブラリーに追加され、他のデプロイメントで使用できるようになります。
タスクは作成されると、期間を与えられます。これは、タスクが完了するまでにかかる時間の見積もりです。 IBM UrbanCode Release は、タスク期間を集約して、全体的なデプロイメント時間を計算します。
タスクは自動化または手動にすることができます。自動化タスクは、外部ツールとの統合によりもたらされます。 例えば、IBM UrbanCode Deploy アプリケーションからのアプリケーション・プロセスは、 IBM UrbanCode Release で自動化タスクとして使用できます。
手動タスクは、サーバーの停止または開始など、すべての非自動化タスクを表すことができます。リリース全体に対して定義されているマイルストーンとは異なり、手動タスク (および自動化タスク) は、 特定のフェーズおよびセグメントに付加されます。セグメントは、同時に終了するよう意図されているタスクのグループと見なすことができます。
通常、タスクは Web アプリケーションの「スケジュール済みデプロイメント」ページで定義されますが、(CSV ファイルとして) エクスポートおよびインポートすることもできます。
アプリケーション・バージョンは、品質状況を持つことができます。品質状況により、アプリケーション・バージョンが、ある予測された品質要件を満たしていることが保証されます。状況は手動で割り当てるか、外部ツールによる統合を通じて割り当てることができます。
緊急デプロイメントが必要な時はいつでも、承認とゲートを一時的に中断することができます。
承認は、品質 (状況) の考慮事項に関係なく、環境を制御するために使用されるメカニズムです。承認は、フェーズに付加されます。承認が必要なリリースは、承認が与えられるまではフェーズを進めることはできません。承認者は、通常、ユーザー役割によって指定されます。指定された役割を持つどのユーザーも承認要求に応答することができます。例えば、QA フェーズにリリース・マネージャーからの承認が必要な場合は、リリース・マネージャーの役割を持つ任意のユーザーによって承認が与えられるまではリリースを進めることはできません。特定のユーザーを、承認するように指定することもできます。
承認が必要なスケジュール済みデプロイメントが、承認を受け取らずに開始時刻に達した場合、フェーズは進められず、承認者によって拒否されたと見なされます。