Azure ADのユーザー管理
Azureポータルに組織アカウントでログインすると、ユーザーやグループを作成することができます。ここで作成したグループはそのままVSTSのグループとして使用できます。
- VSTS用グループを作成
- Azure ADにユーザー登録&グループ登録
という流れになります。小規模な環境であればポータルでやるのもいいですが、大きなところになればPowerShellなどで自動化を検討しましょう。
Azure ADで作ったグループはVSTSのチームにアクセスするグループとしてそのまま使えます。
ユーザー管理
VSTSを使用するユーザーはアカウントトップページにあるUsersから登録します。MSアカウントを使っている場合、ここでMSアカウントを選択しますが、組織アカウントを使っている場合、Azure ADのユーザーをそのまま追加できます。
登録したユーザーは何らかのライセンスを割り当てる必要があります。大雑把に分けて、無料で使えるアカウント、有料の一時払いと年払いという区分けです。
無料アカウント(Stakeholder)
お客様などの進捗のみ管理したい場合に割り当てます。無料でカンバンやタスクの優先順位変更のみできます。ビルドやテストの機能は一切ありません。
Basic(5人まで無料)
コードのチェックインなどの基本的な機能は使えます。6人目からは有料です。テスト機能は使えません。
Visual Studioサブスクリプション
ProfessionalかEnterpriseかによって多少違います。また、Azureの料金と一緒に月額払いすることもできるので、一時的に開発メンバーを増やしたいというときに非常に便利です(特に日本のSIer)。
Enterpriseのライセンス数に比例してビルドパイプラインの並列数が増えます(既定で1ライセンス付属)。
アカウントセキュリティ設定
アカウントごとに設定します。タイムゾーン、URL、認証設定、外部アカウント(MSアカウントなど)のアクセスを許可するか、という点です。
Alternate authenticationは個別のIDとパスワードを指定してVSTSの認証を行うための機能ですが、セキュリティ上可能であれば無効にすることをお勧めします。今はPAT(Personal Access Token)やSSHでの認証ができるようになったので、必要性が低下しました。
チーム初期設定
Overviewでチームの初期設定ができます。プロセスや詳細を確認できるほか、"New Item"をクリックすると、プロジェクトチームの中にさらにサブチームを作ることができます。
チーム名とわかりやすい説明を指定します。そして、プロジェクト内での権限を設定します。Contributorsはコードの読み書き権があります。Readersであれば読み取りという権限が設定されています。
もちろん、ほかの権限を作ることもできます。Create an area path with the name of the teamをチェックしていれば、そのチーム用のarea pathが構築されます(後述)。
WorkタブにあるIteration(イテレーション)とAreaを設定します。イテレーションはスクラムのスプリントと考えてください。メニューはAgileの用語が基本のようなので、こういうところがちょいちょいありますが、気にしないでください。
Start DateとEnd Dateを設定します。3週間とか一か月とかの期間を設定します。最初にプロジェクトの終了までの期間を設定しています。今回はAdvent Calendarのデモ用途なので一か月というありえない工程組んでいますが、こんな短くしないようにしましょう(^^;。
スプリントを一週間で同じように設定しています。この設定はカンバン(Board)の挙動に影響します。
個人的なおすすめはスプリントの下にさらにスプリントという階層を付けないことです。例えば2016年度というスプリントを作って、2016年1月とか2016年2月という孫階層まで作ると、後の操作が結構大変になります。
親子までにしておきましょう。
次はAreaを設定します。これは実際にどんな仕組みを作るか、という種類分けにしておきます。とはいえ、アプリケーションのdllやexe単位にすると細かすぎます。例えば、バッチとか、Webサーバーとか、アプリケーションをデプロイする場所に対応させるとやりやすいかと思います。
最初はざっくりと、必要に応じて詳細な孫階層を作ればいいと思います。すでに割り当てたタスクを変更もできますよ。
…をクリックすると、孫階層やアクセスするセキュリティの設定もできます。チーム内にさらにサブチームを作り、例えばWebフロントのみ担当するチームというセキュリティ設定もできます。
セキュリティ設定ではどのグループにどんな権限を割り当てるか設定できます。最初は変更する必要ないでしょう。
Contributorsはコードの変更権限がある、Readersは読み取りのみです。
通知設定
VSTSでは各種条件に一致した場合、メール通知させることができます。初期設定ではコードレビュー依頼のみですが、個人的なおすすめを紹介します。
チーム全員に設定されるTeam Alertと自分のみのMy Alertの二種類選択できます。Newをクリックして、Team AlertのWork ItemからA work item is assigned me(私にタスクが割り当てられた)を選択して、OKをクリックします。
これで問題なければOKをクリックします。これでチームメンバーの誰かにタスクが割り当てられたときに割り当てられた人に対してメール通知が行われます。
アイテム保持ポリシー
Testをクリックして、Retantionでテスト実行後何日間保持しておくかという設定をします。既定で30日です。
まとめ
これで最低限のチーム準備ができました。Azure ADにユーザーとグループを登録しておけば、自動的にVSTS側に反映されます。
また、今後出てきますが、Azure ADに登録したAzureサブスクリプションに対してデプロイを行うことや、Power BI, Teamsなどとの連携も可能になっています。
Azure ADを中心とした連携は非常に便利なので、ぜひ使ってみてください。