kkamegawa's weblog

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

Azure DevOps 2020/10/21の更新

遅くなりましたが、Azure DevOps Sprint 177のリリースノートの翻訳を行いました。オリジナルはこちらから読んでください。

docs.microsoft.com

Azure Boardsの隠されたルールの一つがなくなったそうです。具体的にはAglieプロセスにおいて、Bugカテゴリーの作業項目をResolvedにすると、Assignedフィールドの値がCreated by(つまりBugを作った人)の値に巻き戻っていたそうです。おそらくこれはBugを登録した人がResolved状態になったら最後に責任をもって確認して、Closedに移行するべき、という考えに基づいていたのではないかなと思います。

最初のころはこれでよかったのですが、現代では開発プロセスが成熟して、もうそういうおせっかいをしなくてもよくなったのではないか、ということのようですね。これはこれで便利なルールなので、Aglieプロセスで引き続き使いたい人は継承して、同じ動きをするルールを登録してください、ということのようです。

Pull RequestのUIがこまごまと変更されています。地味だけど不便だった点なのでありがたいですね。

Azure PipelinesのUbuntu-latest20.04に移行するそうです(GitHub Actionsも同じ)。18.04に依存している環境はlatestから明示的に18.04書き直してください。

また、エージェントで実行されるタスクで使われるnode.jsのバージョンが6から14になる…はずでしたが、Red Hat Enterprise Linux 6はnode 14に非互換がある(というかまだサポートしていない?)そうなので、node 10に移行することになったそうです。おそらくこの辺の話ですかね。

access.redhat.com

ではまた三週間後。

Translate to Japanese to Azure DevOps release not…

Azure DevOpsの通知メールを振り分け可能にカスタマイズする

Azure DevOpsからの通知メールはカスタマイズできない(要望は出ているのですが)ので、通知メールの振り分けに困るという相談は度々出ていました。配布リストを一人のために作るのもあれだし、困るなぁと思っていました。gmailであればローカルパートに+で識別子をつけれるけど、gmail前提でもないしと思っていたら、Exchange Onlineがgmailと同じ仕様の + で連結するローカルパートをサポートしてくれることになりました。

techcommunity.microsoft.com

これを使えば一つのメールアドレスで振り分けルールが比較的自由に作れます。ちょっとやってみましょう。ExchangeのPowerShellモジュールを追加しておきます。次に、PowerShellでExchange Onlineに接続して、Set-OrganizationConfigで変更します。

Connect-ExchangeOnline -UserPrincipalName 管理者のID  
Set-OrganizationConfig  -AllowPlusAddressInRecipients $true

Get-OrganizationConfigで設定を確認します。

AllowPlusAddressInRecipients : True

こうなっていればOKです。Exchange Onlineから切断します。

Disconnect-ExchangeOnline

即時反映されているはずです(多分)。次にAzure DevOps側の設定を行います。

f:id:kkamegawa:20201029153438p:plain

User settings(https://dev.azure.com/{organization}/_usersSettings/notifications)を開いて、チームプロジェクト単位で通知を設定します。たとえば、SessionDemoというプロジェクトであれば、メールアドレスのローカルパートをkkamegawa+SessionDemoという形式にします。

f:id:kkamegawa:20201029153430p:plain

Outlookの振り分けルールで+付きのメールアドレスで指定フォルダーに振り分けます。もちろんラベルなどでもいいでしょう。

f:id:kkamegawa:20201029153434p:plain

今回はビルドの通知だけいじりましたが、ビルド完了通知が正しく振り分けられていますね!本来はTeamsとかSlackへのポストがいいんでしょうけど、使えないこともあると思います。

全部の設定を変更するの大変かもしれないですが、REST APIで登録できたはずなので、その辺りグローバルルールを全部無効にして、こういうルールを追加していけば振り分けも楽になるかもしれません。

docs.microsoft.com

Azure DevOpsの所有者をAzure ADからMSアカウントに変更する

逆はよく聞くし、お勧めなんですが。

ちょっと事情でAzure DevOpsのorganizationの一つを組織アカウント(Azure AD)ベースで動いていたものから、MSアカウントへ移行しなくてはならなくなりました。本来作れない組織アカウントと同名のMSアカウントを持っているので、この二つの間で移管したいのです。

docs.microsoft.com

Azure ADへ行く場合も、離脱する場合もこんな手順です。

  1. Azure ADにゲストでMSアカウントを追加する
  2. 移管したいアカウントをownerにする。
  3. ownerアカウント以外を全部削除する
  4. ドメインに接続(離脱の場合は切断)する
  5. 移管先のアカウントを所有者にして、移管元アカウントを削除する
  6. Azure ADのゲストから削除する

これには二つネックになる点があります。

  1. Azure ADへのゲスト追加が認めてもらえる
  2. MSアカウントと組織アカウントが異なる名前になっている

私の場合1も2も満たしていないので、Azureのサポートに泣きつきました。Visual Studioサブスクリプション特典作っているので、サポートもDeveloperですが契約できます。サポートから提案されたのは以下の方法です。

  1. 組織アカウントと同名ではない別MSアカウントをサポートに連絡する
  2. サポートがAzure ADから離脱&別MSアカウントをownerにする
  3. 完了後連絡があるので、別MSアカウントから組織アカウントと同じアドレスのMSアカウントへ移管する。

で、今は上の2まで終わっていて、3の連絡を待っているところです。大体1-2日かかるといってました。あまりこんなことする人いないと思いますが、困ったらサポートに連絡してみるといいと思います。

10/29追記
終わりました。無事移管されて、MSアカウント側の同じメールアドレスがOwnerになっています。ぱっと見、不具合もなさそうです。同じようにMSアカウント側に移管したAzureサブスクリプションも見えています。

Project Mocaを試してみる

ちょっと前、Outlook Spacesという名前でチラ見せされていたサービスがProject Mocaという名前になってプレビューになったようです。Microsoft 365でなおかつプレビュー機能を有効にしてください。

docs.microsoft.com

docs.microsoft.com

Exchange OnlineにPowerShellで接続して、Set-OwaMailboxPolicyを実行します。

Set-OwaMailboxPolicy -ProjectMocaEnabled $True

これで72時間くらい放置しておけばテナントで有効になるそうです(もっとかかった気もします)。macOS用Outlookでプレビュー版のUIを有効にしていればナビゲーションのところにMocaのショートカットが追加されます。Windows版では出てきません。

f:id:kkamegawa:20201027212009p:plain

Web版Outlookでアクセスするとスタート画面が出てきます。メール、カレンダー、ToDo、OneNoteすべての情報が一つのスクリーンで集約されるということなのでしょう。

将来的にはPlanner, ToDoも全部こちらに行くんじゃないかなと思わせるようなデザインです。

f:id:kkamegawa:20201027212013p:plain

用意されているテンプレートからプロジェクト計画を選択してみます。

f:id:kkamegawa:20201027212017p:plain

プロジェクトの名前、キーワード、コラボレーションするユーザーを選択してスペース(前の名残ですかね)を開始。

f:id:kkamegawa:20201027212021p:plain

中身はPlannerと同じように見えますが、UIは付箋タイプですね。

f:id:kkamegawa:20201027211951p:plain

タスクの種類ごとに色を付けられるようです。色で分かりやすくできますね。

f:id:kkamegawa:20201027211956p:plain

マイルストーン毎に期限を付けられます。バケットに移動とかPlannerっぽい。

f:id:kkamegawa:20201027212000p:plain

ここで書いたメモはSticky Noteに入るそうです。タスクも作成するとリストが作られて、ToDoに入ります。

f:id:kkamegawa:20201027214842p:plain

こんな感じですね。

f:id:kkamegawa:20201027212005p:plain

メモや進行中のタスクをこんな感じで貼り付けできます。

PlannerはどうしてもTeamsというか、M365グループやSharePointに紐づいて同一のグループ内で作業するためのもの、という感じが強かったですね。なので、特定の期間集中してやる臨時チームで動く場合ちょっと使いづらかったなぁと思うことがありました。

M365グループはどうしてもテナント上限(緩和申請できますが、そんな申請してくれる組織ばかりじゃないので)のことを気にしないといけなかったので、及び腰でしたけど、グループ作るまでもないかなという作業にはとても便利そうです。

Microsoft 365は今まで個別のサービスそれぞれアプリで進化していたという感じでしたけど、それぞれのサービスが連携しやすくリストラクチャリングされて、こういうビューを作りやすくなってきたのかなという印象です。