kkamegawa's weblog

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

Team Foundation Server 2018 Update3のリリースと検索セットアップの変更点

Team Foundation Server 2018 Update3の正式版がリリースされました。Azure DevOps Serverへの変更は次のメジャーバージョンなので、UIや名称は従来通りです。基本的にバグ修正のみで、インストールをお勧めします。リリースノートはこちらから。

docs.microsoft.com

TFS 2018はシングルバイナリになっていますので、どのOSでも同じバイナリからインストールできます。

インストーラーとかそのままでいいのですが、一つだけ検索機能のセットアップ時に変更があります。

f:id:kkamegawa:20180914054120p:plain

これは検索機能の構成ですが、アップグレード中にもこの表示が出ます。

変更点は「検索サービス」のユーザーとパスワードを指定します。これは従来はWindowsのユーザーアカウントを指定していましたが、独立して指定するようになりました。

これは基本認証でのセキュリティでErastic Searchとの保護しているだけなので、IPSecなどですでに保護している方はIPSecのままで構いません。

docs.microsoft.com

Visual Studio Team ServicesからAzure DevOpsへ

はじめに

Microsoftが提供するDevOpsツールはオンプレミスではTeam Foundation Server(TFS)、クラウドではVisual Studio Team Services(VSTS)という二本立てで提供されていました。これはこれでよかったのですが、どうしてもVisual Studioブランドが先に立ってしまい、Visual Studio以外からは使えない、もしくは.NETだけのものだと思われがちでした。実際私も会社やプライベートで何度となくそういう話を聞いたことがあります。

特にVSTSは最初Visual Studio Onlineという名前で始まったのですが(ちょうど7年前のことだそうです)、IDEのVisual Studioのオンライン版だと思われてしまうので、Team Servicesという名前に変更した経緯があります。

そこで今回二度目のブランドチェンジとしてVisual Studio Team ServicesからAzure DevOpsに変更されることになりました。以前からAzureとは強く連携していましたが、AWSのCodeシリーズ同様、MSのクラウドサービスの一部分であるという意味を押し出す形になります。個人的にはいいブランド変更だと思っています。欠点はVSTSのようなユニークな略称が難しいことでしょうか。TFSもそうだと思っていましたが、"TFS"でTwitterサーチするとちょっと辛い。

それはともかく、最初に書いた通り、"Visual Studio"ブランドが強すぎて、Python, Go, Ruby, node.js, JavaScriptなどにも対応していることがあまりにも知られすぎてないというのが現状でしたので、これで少し印象が変わるといいなと思います。

変更点に関しては公式ブログ公式サイトを見ていただくとして、いくつか日本語で補足。

名前について

クラウドサービスとしての総称はAzure DevOpsになります。オンプレミスのTFSに関しては次期メジャーバージョンの2019からAzure DevOps Serverという名前に変わり、Azure DevOpsベースの更新が行われます。

各機能の名称も変わります。

特に、Azure Pipelinesに関してはGitHubのCI/CD機能としても使えます。

URLについて

今まで account.visualstudio.com というURLでしたが、オプトインで dev.azure.com/account になります。ドキュメントのURLもAzure配下に移動します。 今後、新規で作るアカウントは azure.com 配下になります。

既存のURLは今後リダイレクトで維持されるそうです。

価格について

今までの無料プランではこんな感じでした。

  • 240分までのビルド
  • 無制限のビルド定義
  • 無制限のプライベートコードレポジトリ
  • 20000分のWeb負荷テスト(Jmeterのホスティングサービス)

これがこう変わります。

オープンソース向け

  • パブリックプロジェクトに関しては無制限のビルド時間(AppVeyorのOSSプランと思ってください)。最大10同時ビルド。
  • 無制限のビルド定義
  • 無制限のプライベートコードレポジトリ

GitHubユーザーに関してはAzure Pipelineというアプリを追加すると、この無料プランのCI/CDが追加されます。

github.com

小規模チーム向け(5人まで)

  • 最大1同時ビルド。1800分まで無償。一つだけ自分でプライベートエージェントを使用可能
  • 無制限のビルド定義
  • 容量は無制限のレポジトリ(パブリックも可能)
  • 無制限のステークホルダーライセンス(カンバンの編集だけできるユーザー)
  • Azure Artifactsを使用可能(6人目からは有料)
  • 20000分のロードテスト

それ以上の規模

  • 10ユーザーで月額3360円
  • 最大1同時ビルド。1800分まで無償。
  • 無制限のビルド定義
  • 容量は無制限のレポジトリ
  • Azure Artifact を使用可能
  • 無制限のステークホルダーライセンス(Azure Boardの編集/参照だけできるユーザー)
  • Visual Studioサブスクリプション(Enterprise)ユーザーはこのライセンスが含まれる

Azure Testに関しては従来通りMarketplaceで追加購入です。

価格に関してはこちらを見てください。

Azure DevOps Services | Microsoft Azure

この変更はSprint 140としてリリースされました。こちらは別途翻訳します。

既存ユーザーへの影響(追加)

5人以下で無償のプライベートGitとして使っている人たち

ビルドが240分から1800分になったことと、 {account}.visualstudio.com/_settings へアクセスして、オプトインでURL変更を許可しなければ、ほぼ変わりありません。

Visual Studioサブスクリプションユーザー

こちらもURLを変えられる、ビルドが1800分が無償枠になった、以外の変更はありません(そのはずです)。Visual Studio Pro Subscriptionの場合は小規模チーム向けのライセンスと同等になるはずで、Test Plans, Artifactsの対象外です。

Visual Studio Enterprise Subscriptionの人は全機能が使えます。

Visual Studio Team Services 2018/8/21の更新

Visual Studio Team Services Sprint 139のリリースノートの翻訳を行いました。オリジナルはこちらから読んでください。

docs.microsoft.com

今回は前回よりもさらに機能追加が少ないですね…おかげで翻訳超楽ですが。Hosted XMLプロセスモデルは現在VSTSを使っている大多数の方には関係ない話なので読まなくてもいいです。TFSでは独自にXML形式でプロセステンプレートを一から作ることができます。一時期これをインポートして使える機能がプライベートプレビューか何かであった…ようです。

大々的に告知されてないので、もうあまり記憶してないのですが、そういう人たちが新しい継承モデルに移行できるようにしましたよ、という話です。

Teamsと連携している場合、Adaptive Cardをサポートしたんですかね。これ作ろうとしたんですが、ちょっとやるの結構大変だなぁと思って挫折しました…。同じ機能はCortanaでも使われています。

大多数の人が嬉しいのはPull Requestのdescriptionにテンプレートが用意できるようになったことでしょう。ブランチ単位で用意できるので、ブランチに応じてテンプレートをわけることもできます。

新機能をためて、ためて、ためているようで、爆発(笑)するときが怖い。

ではまた三週間後。

Translate to Japanese to VSTS release notes from h ...

Azure App Service障害発生時のダンプ解析とシンボル管理

blog.shibayan.jp

App Serviceだけではないけど、障害が発生してダンプの解析をしなければならない場合がたまにあります。

ダンプ解析するにはそのモジュールのシンボル(pdb)ファイルを取っておかないといけないのですが、障害解析ができない場合に限って、シンボルをちゃんと管理しているという話をとんと聞きません。特にCやC++のネイティブモジュールであればシンボルがあると、ないとではかなり大変さが違います。

VSTS(Visual Studio Team Services)のPackage管理機能のライセンス(Enterprise Subscriptionを持っている人には入っています)があれば、VSTSのシンボルサーバー機能が使えます。どうやって使うのか紹介します。

シンボル設定初期値
シンボル設定初期値

オプションからシンボルを選択して、右上の赤枠アイコンをクリックします。

VSTS選択
VSTS選択

シンボルサーバーとしてライセンスがあるVSTSを選択します。

VSTSシンボルサーバー追加
VSTSシンボルサーバー追加

このように追加されます。

ビルド定義にシンボル発行を追加
ビルド定義にシンボル発行を追加

Publish Symbol PathタスクのPublish Symbolsにチェックすると、pdbファイルを自動的にVSTS内に保存します。保存先はVSTS内か、ファイル共有が選べます。

前書いたように、ビルド結果はRetain Policyに従って自動削除されます。シンボルも同じ制御を受けるので、ビルド結果が削除されると自動的にシンボルも削除されます。うっかりプロダクションにリリースしたファイルを削除しないように気を付けてください。

Azure App Serviceのプランによってはダンプが採取できます。

ダンプ収集
ダンプ収集

ダウンロードしたミニダンプをダウンロードして、Visual StudioやWinDbgで開くと、VSTSもシンボルサーバーとして扱われるので、自動的にシンボルが検索されます。

ダンプを開く
ダンプを開く

今までファイル共有などでシンボル管理はタイへだったと思いますが、VSTSのシンボルサーバー機能はダンプ解析する時大変便利なので、ぜひ使ってください。