kkamegawa's weblog

Visual Studio,TFS,ALM,VSTS,DevOps関係のことについていろいろと書いていきます。Google Analyticsで解析を行っています

Visual Studio Team Services CI/CDアドベントカレンダー:ダッシュボードでビルド/リリース状況を見る(21日目)

はじめに

これはVisual Studio Team Servicesアドベントカレンダー21日目の記事です。

qiita.com

今回はちょっと趣向を変えて、CI/CDの状態を見る方法について紹介します。個別の実行結果はSlackやTeamsに投稿すればいいのですが、全体の履歴としてみたい場合、ダッシュボードでぱっと見えると便利です。

VSTSのダッシュボードにはビルドやリリースの履歴、今何がどこに展開されているのかぱっとわかるウィジェットの貼り付けができます。全体表示させても便利です。

ダッシュボードの追加

Dashboardsの右端にある+をクリックすると、ダッシュボードの追加ができます。ダッシュボードの名前はわかりやすいものを付けてください。

f:id:kkamegawa:20171221185127p:plain

ウィジェット追加

ダッシュボードを作成してから、ウィジェットを追加します。拡張機能で追加するものを含めて、多くのウィジェットがありますが、CI/CDで関係あるもののみ紹介します。

marketplaceでウィジェットを探すとこれくらいあります。

marketplace.visualstudio.com

Chart for Build History

指定したビルド定義の所要時間、成功/失敗をチャートで表示するウィジェットです。重要なビルド定義を指定すればいいでしょう。

f:id:kkamegawa:20171221185128p:plain

チームプロジェクト内のビルド定義から履歴を表示したいビルド定義を選択します。一つのウィジェットに一つのビルド定義のみ設定できます。複数表示したい場合、ウィジェットを必要な数だけ登録してください。

f:id:kkamegawa:20171221185132p:plain

ビルド履歴はこんな感じで表示されます。バーが長いほどビルド時間がかかっています。途中伸びている項目がありますが、この時はなぜかHosted agentがものすごく遅かったためです。

f:id:kkamegawa:20171221185133p:plain

Deployment status

ビルド定義毎のビルド成果物がどの環境にリリースされているかという状況をクロス定義で見るためのウィジェットです。頻繁にデプロイするビルド定義が多いような環境では有用なウィジェットです。

f:id:kkamegawa:20171221185129p:plain

ビルド定義とViewを選択します。ViewはDeployment StatusTest Pass rateがあるので、お好みで。

ビルド定義と、ビルド定義の成果物が関連付けられているリリース定義を選択します。

f:id:kkamegawa:20171221185135p:plain

こんな感じで表示されます。何もやってないので、寂しいですが。

f:id:kkamegawa:20171221185136p:plain

Release Definition Overview

指定したリリース定義において、どのリリースがどの環境にデプロイされているか確認するためのウィジェットです。Chart of build historyのリリース版ですね。

f:id:kkamegawa:20171221185130p:plain

リリース定義を指定すると、現在の状況が表示されるので、問題なければこのままOKを押してください。

f:id:kkamegawa:20171221185137p:plain

Test Results Trend

ビルド定義、もしくはリリース定義で実行するテスト結果状況を表示するチャートです。テスト実行結果(成功/失敗)および、テスト実行時間もしくはその両方を合わせてチャートに表示できます。

f:id:kkamegawa:20171221185131p:plain

とりあえず簡単にテスト数を折れ線グラフにしてみました。全部成功(といっても2件ですが)しているので、100%のままです。

f:id:kkamegawa:20171221185138p:plain

完成

こうやってビルド、リリース関係のウィジェットを貼ったダッシュボードはこのようになります。ビルド関係が一目でわかるのでいいですね。

f:id:kkamegawa:20171221185139p:plain

もちろん、ビルド定義やリリース定義のカットでダッシュボードを作るとかでもいいでしょう。

ここでは紹介していませんが、Application Insightsを使っているのであればApplication Insightsのウィジェットを貼っておいて、常時モニターに表示しておくのもいいと思います。

残念ながらPower BIのVSTSコンテンツパックの提供が終わってしまいましたが、新しくODataでとってこれるようになったので、ODataを使って独自のチャートを作るのもいいかもしれません。

VSTS Analytics OData now publicly available – Microsoft DevOps Blog