過去数か月間、 MS Release Management (別名InRelease ) について何度も話してきました。これは素晴らしいもので、2013 年 11 月 13 日からダウンロードできます。
従来の展開方法に比べて、いくつかの大きな利点があります。
- ソフトウェアを展開するための多数の組み込みツール。すぐに使用できる多くの機能が付属しているため、IIS をセットアップしたり Azure VM を起動したりするために PowerShell スクリプトを作成する必要はありません。ツール システムは完全に拡張可能であるため、任意のバッチ ファイル、PowerShell スクリプト、または実行可能ファイルをプラグインできます。また、実行したすべての出力を自動的にキャプチャし、展開ログに添付します。
- ロールバック機能。デプロイが失敗した場合に実行するアクションを定義できるため、不適切なデプロイによって重要なサービスがダウンすることがないようにすることができます。
- 構成ファイルの管理。構成ファイルをパラメーター化し、Release Management を使用して使用する値を指定できます。これにより、複数の web/app.config を管理するという悪夢を軽減 (または排除) できます。
- 承認ワークフローを定義する機能。これは、QA に合格したかどうかなどに基づいてリリースの承認/拒否を担当する特定の人を必要とする場合に非常に役立ちます。
- リリース パスの定義。これは承認ワークフローに結び付けられます。リリース プロセスの各「段階」(DEV、QA、PROD など)の環境を設定できるように設定できます。次に、どのサーバーがそれらの段階のメンバーであるかを設定できます。これらの段階でソフトウェアが取るべき順序と、各段階の承認/検証の責任者です。
- リリース プロセスの完全なトレーサビリティ -- 現在サーバー上にあるソフトウェアのビルド、サーバーに到達した時期、誰が承認/拒否したか、実行されたすべての展開アクションの完全なログを確認できます。プロセスのどこを改善する必要があるかについて、優れた洞察を得ることができます。QA チームがバグのために大量のリリースに失敗したとしましょう。それを見て、開発者に戻って、「より良い自動テストを導入する必要があります。これらの欠陥を早期に発見できれば、QA チームは仕事で忙殺されます!」と言うことができます。
- TFS との統合により、継続的な展開を簡単にセットアップできます。
- Microsoft Test Manager の統合。リリースの完了後に MTM テスト計画から自動テスト (コード化された UI など) を実行するように設定できるため、いずれかのテストが失敗した場合にリリースを自動的に失敗させることができます。
そして、それは将来的に良くなるだけです。リリース管理チームは、バックログに非常に優れたものをいくつか持っています!