Azure と Visual Studio Online (Git) で継続的インテグレーション

以前に Windows Azure と Visual Studio Online で継続的インテグレーションというのを書きましたが、
今回は、リポジトリの種類として TFVC ではなく Git を使ってみます。

Visual Studio Online (Git) に Web アプリケーションのソース コードをコミットすると、
自動的にビルドが開始して Azure Web アプリにデプロイされる、という
継続的インテグレーション (Continuous Integration, CI) を構成するための手順について記述します。

 

■ ソリューションをコミットする

まず、Visual Studio Online で Git のチーム プロジェクトを作成しておきます。
Visual Studio でソリューションのみを作成して、Visual Studio Online にコミット・プッシュします。
ソリューションを作成する手順は後でもかまいませんが、
ここで作成しておくと、ビルド定義にソリューションへのパスが自動で含まれるようになります。

image

 

■ Azure Web アプリを作成する

Microsoft Azure の管理ポータルで、新規の Web アプリを作成します。[カスタム作成] を選択します。

image

作成する Web アプリの URL を入力し、[ソース管理から発行] をオンにします。

image

ソースコードのリポジトリの種類を指定します。
[Visual Studio Online] を選択します。

image

Visual Studio Online の URL を指定します。
[今すぐ承認] をクリックすると Visual Studio Online 側の承認画面が表示されるので、[Accept] をクリックします。

image

リポジトリ名 (チーム プロジェクト名) を選択して、右下の ✓ をクリックすれば Web アプリが作成されます。

image

このとき同時に、Visual Studio Online にビルド定義が作成されます。
なお、ソース管理システムと連携されていない Web アプリにあとから連携を追加することもできます。

 

■ ビルド定義を編集する

Visual Studio で、先ほど作成されたビルド定義を編集します。
既定では、ビルド定義は「(サイト名)_CD」という名前で作成されています。
この名前を変更しても、デプロイ構成には影響ありません。

image

[全般] の [キューの処理] が [有効] に設定されていることを確認します。

image

ビルドのトリガーは、既定で [継続的インテグレーション] に設定されています。
この設定のときでも、ビルドのメニューから手動で開始することもできます。

image

ソースの場所は、分岐まで指定できます。
本番用 (Production) とテスト用 (Staging) の環境を用意したい場合は、
それぞれの Azure Web アプリを作成し、それぞれを master と開発用の分岐に関連付けるなどするとよいでしょう。

image

ビルドの出力場所は既定で [ビルド出力をサーバーにコピーする] に設定されています。

image

ターゲットのソリューションまたはプロジェクトを [2. Build] – [Projects] で指定します。
Release ビルドにするには、[2. Build] – [Configurations] で、Release 用の構成を追加します。

image

なお、ビルド定義と Azure Web アプリは、[Windows Azure Deployment Environment] の値で関連付けられています。

image

 

■ Web アプリケーションをコミットする

Web アプリケーションを作成します。
ここでは例として、[ASP.NET Web アプリケーション] を選択し、テンプレートから [MVC] を選択します。

image

これらのファイルを Visual Studio Online にコミット・プッシュします。
すると、ビルドが自動的に開始され、Azure Web アプリに初回のビルドがデプロイされます。

Visual Studio Online での表示:

image

Azure Web アプリでの表示:

image

 

ビルドおよびデプロイに成功すると、Web アプリが実行されるようになります。

image

ビルド定義で [ビルド出力をサーバーにコピーする] に設定されている場合、
ビルドの実行ログの [Download drop as zip] でデプロイされたビルド一式を取得できます。

image

Monaco で配置フォルダーを覗いてみると、BuildInfo.config というファイルが作成されています。
これにより、現在デプロイされているビルドの情報を確認することができます。

image

 

以上で、継続的インテグレーションが構成されました。
その後も、ソース コードをコミットするたびに自動的にビルドおよびデプロイが実施されます。

過去のバージョンを選択して再デプロイすることもできます。

image

 

バージョン情報
Visual Studio 2013

参照
Visual Studio Online と Git を使用した Azure への継続的な配信
Windows Azure と Visual Studio Online で継続的インテグレーション (1)
Azure と GitHub で継続的インテグレーション

コメント / トラックバック1件 to “Azure と Visual Studio Online (Git) で継続的インテグレーション”

  1. Azure Web App に FTP でデプロイする | Do Design Space Says:

    […] にアプリケーションをデプロイする方法については、 これまでは主に、Visual Studio Team Services との CI や GitHub との CI など、 […]


コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。