発行プロファイルはビルド構成ごとに作成するもの、と考えていないだろうか? VS 2012に、(Web Platform Installer経由で)ASP.NET and Web Tools 2012.2を追加する、もしくはVS 2012 Update 3をインストールすることにより、1つのビルド構成に複数の発行プロファイルを関連付けることが可能だ。
手順はまず、作成した発行プロファイルを右クリックすると表示されるメニューから[Config 変換を追加]を選択する。
[Config変換を追加]メニューは一度実行すると、その後は表示されなくなるが、「Web.<発行プロファイル>.config」ファイル(例ではWeb.MyIIS8.configファイル)を削除すると、再度[Config変換の追加]メニューが表示されるようになるので、何度でも作り直せる。
オンプレミスではデプロイだけではなくソース・コード管理や作業項目管理をいろいろなソフトウェアと連携させることで機能を強化できる。
純粋なソース・コード管理ではないが、TFS 2012からPreEmptive Community Editionというソフトウェアが付属している。PreEmptiveとは、TFSで管理されているソフトウェアが例外を起こした場合、自動的に例外データを採取して、作業項目を作成してくれるTFSの拡張機能だ。TFS 2012にはその入門編という位置付けのCommunity Editionが付属している。.NETアプリケーションを対象にした入門編であるため、いくつか機能制限があるが、大きな問題はないだろう。
PreEmptiveを使用すればテスト中に例外が起きても、つい作業項目を作り忘れてしまい、関連付けするべき作業項目をチェックイン間際に慌てて作成するという事態を防ぐことができる。
マイクロソフトから複数環境へのデプロイを支援するための無償ツールとして、DevOps Workbench Express Editionのベータ版が公開された。英語版だが、日本語OSでも使用することが可能だ。
DevOps Workbench Express Edition
インストールすると、Visual Studioのチーム・エクスプローラに以下のように統合される。[Launch Workbench]をクリックすると、編集用のWorkbenchが起動される。
(メニューバーの)[FILE]メニューの[New Deployment Orchestration]を選択すれば新規デプロイ環境が作成される。Webサイトとアプリケーションの作成を行う場合は以下のようなワークフローになる。
[FILE]メニューの[Save As]を選択すればワークフローを保存できる。保存されるXAMLファイルを直接TFSにチェックインしたり、VS 2012から開いたりはできないようだ(関連アセンブリを参照すればできる可能性はある)。作成したXAMLファイルのバージョン管理は別途行ってほしい。
(メニューバーの)[SOURCE CONTROL]メニューからTFSに接続して、作業項目の登録の関連付けを行えるが、筆者の環境では動作しなかった。今後修正される可能性がある。
本ツールはSQL Server、Azure、Azure Webサイト、.NETアプリケーションといった多様な環境のデプロイをサポートしており、デプロイを行うためのワークフローをGUIで容易に作ることができるため、今までバッチ・ファイルや特別なインストール用の.exeファイルを作るのに掛かっていた手間が大幅に軽減されるだろう。
DevOps Workbench Expressのようにデプロイに特化したソフトウェアではないが、サーバ群の管理を自動化するための有償のSystem CenterファミリのソフトウェアSystem Center Orchestratorが用意されている。
Orchestratorを使用すれば任意のフォルダにデプロイ・パッケージが生成された場合、自動的に評価環境にデプロイ、所定の負荷テストを自動的に実施するということも可能だ。もう一段進んだ運用を自動化する場合、Orchestratorも活用してほしい。
本連載ではTFS 2012を扱っているが、Visual Studio 2013および、TFS 2013が11/1よりリリースされた。TFS 2012ではビルド・サービスが編集可能なユーザーであれば、デプロイ・パッケージの作成および発行が可能であったため、場合によってはデプロイ用のビルド定義を別途作成する必要があった。
InCycle Softwareという会社がTFSのデプロイ機能を補完するInReleaseというソフトウェアを販売していたが、マイクロソフトがInReleaseを買収して、TFS 2013からこの機能を標準添付することが発表された。
現在TFS 2013に対応したInReleaseが無償ダウンロード可能だ。英語版だが日本語のTFS 2013にもインストール可能だ。正式版が公開された際には以下のURLからダウンロードして試してみてほしい。
次回はクラウド環境でのデプロイについて紹介する。
Copyright© Digital Advantage Corp. All Rights Reserved.