Azure DevOpsのSprint 157 Updateで、バックログにロールアップ列を追加しました。これにより、ワークアイテム階層(Epics/Features/User Storiesなど)全体の進捗の追跡ができます。また、Azure App Serviceアプリをデプロイするための複数の改善を追加しました。
詳細については、以下の機能リストをご覧ください。
General:
Azure Boards:
Azure Repos:
Azure Artifacts:
- セマンティックバージョン(SemVer)ワイルドカードで最新のユニバーサルパッケージを取得できるようになりました
- Visual Studio Package ManagerでAzure Artifactsフィードを表示するようにしました
Azure Pipelines:
- VSCodeからAzure Pipelinesの定義が作成できるようになりました
- Azure App Serviceアプリケーション設定を構成する新しいタスクの提供
- Azure App Serviceのプレビューでのスワップのサポート開始
- Pythonと.NET FunctionsアプリケーションをYAMLテンプレートでサポート開始
- YAMLパイプラインのサービスフックサポート
- Jira用Azure Pipelinesアプリケーションの強化
- GitHubリリースタスクを強化しました
- Azure Container Registry用のステージレベルフィルターとDocker Hubアーティファクトのサポート
- Kubernatesサービス接続でAzure Cloud以外のAzureクラウドをサポート
- Microsoftが提供するパイプラインイメージの更新
Reporting:
これまで、Azure DevOpsアプリをSlackで使用している間、顧客はアクションが必要な通知を探すためにSlackチャネルをポーリングするためかなりの時間を費やさなければなりませんでした。今回の更新でSlack用のAzure Boardsアプリ、Slack用のAzure Reposアプリ、およびSlack用のAzure Pipelinesアプリから、@メンションの通知を使用してユーザーに警告します。
ユーザーが@メンションされるシナリオの例を以下に示します。
- ビルドの作成者に失敗したビルドを@メンションします
- 承認者に承認待ちのリリース展開を@メンションします
- 作業項目の割り当て時に、新しい所有者を@メンションします
- 作業項目の状態の変更時に、所有者を@メンションされる
- 承認者に承認待ちのpull requestを@メンションします
- pull requestが承認または拒否されると、pull requestの作成者に@メンションされます
リリース展開がカイルの承認を待っているとき、@メンションを受けます。
ワークアイテムがブライアンに割り当てられると@メンションを受けとります。
pull requestが承認されるとアリスは、@メンションを受けとります。
今回の更新でAzure Active Directoryテナントに関連付けられている組織の完全なリストのダウンロードができます。このリストは、ディレクトリに関連付けられている組織のOrganization SettingsのAzure Active Directoryタブから取得できます。ダウンロードの詳細には、Organization ID、名前、Organization URL、およびOrganizationの所有者が含まれます。
Rollup列には、階層内の進行状況バーや数値フィールドまたは子孫アイテムの合計が表示されます。子孫アイテムは、階層内のすべての子アイテムに対応します。1つ以上のロールアップ列を製品またはポートフォリオのバックログに追加できます。
たとえば、ここでは、終了した子孫アイテムの割合に基づいて、上位のワークアイテムのProgress by Work Itemsを表示するワークアイテムごとの進行状況を表示します。Epicsの子孫アイテムには、すべての子機能とその子または孫のワークアイテムが含まれます。機能の子孫アイテムには、すべての子ユーザーストーリーとその子作業アイテムが含まれます。
変更が発生すると、タスクボードが自動的に更新されるようになりました!他のチームメンバーがタスクボード上のカードを移動または並べ替えると、ボードは自動的にこれらの変更に追従して更新されます。最新の変更を表示するためにF5を押す必要はなくなりました。
管理者はコミット時に特定のファイルタイプとパスに基づいて、コミット時にリポジトリへのプッシュを防ぐポリシーを設定できるようになりました。ファイル名検証ポリシーは、指定されたパターンに一致するプッシュをブロックします。
fix、fixes、fixedなどのキーワードを使用して、デフォルトのブランチに対して行われたコミットと同時に作業項目を解決とできるようになりました。たとえば、コミットメッセージに"this change fixed #476"と記述し、コミットがデフォルトのブランチにプッシュまたはマージされると、ワークアイテム#476が完了します。詳細については、こちらのドキュメントをご覧ください。
以前は、グループレベルのレビュー担当者をpull requestに追加する場合、追加されたグループから必要な承認は1つだけでした。pull request承認時の自動レビュアーを追加するときにチームの複数のレビュアーを必要とするポリシーを設定できるようになりました。さらに、リクエスターが自分の変更を承認しないようにするポリシーを追加できます。
Developer Communityから、SemVerワイルドカード構文を使用して最新のユニバーサルパッケージバージョンを取得できる機能を長い間要望されていました。Azure CLIとUniversal Package Azure Pipelinesタスクの両方を使用して最新版を取得できるようになりました。詳細については、ドキュメントをご覧ください。
Azure Artifactsフィードから提供されるパッケージのパッケージアイコン、説明、および作成者をVisual Studio NuGetパッケージマネージャーへ表示できるようになりました。以前は、このメタデータのほとんどはVSに提供されていませんでした。
VSCodeのAzure Pipelines拡張機能に新しい機能を追加しました。子の強化で、IDEを離れることなく、VSCodeからAzure Pipelinesを直接作成できるようになります。
Azure App Serviceの設定は、アプリの設定、接続文字列、その他の一般的な構成設定など、設定が複数に分散していました。今回の強化で、Webアプリまたはその展開スロットのいずれかでJSON構文を使用してこれらの設定を一括で構成できる新しいAzure Pipelinesのタスク、Azure App Service Settingsが追加されました。このタスクを他のAppサービスタスクと共に使用して、Webアプリ、Functionアプリ、またはその他のコンテナー化されたApp Servicesを展開、管理、および構成できます。
Azure App Serviceは、Swap with preview(展開スロットのプレビュー)を使用したスワップをサポートするようになりました。これは、本番環境でアプリが実際に本番環境へスワップされる前にアプリを検証するための良い方法です。
Azure App Serviceタスクは、次の新しいアクションを通じて、このマルチフェーズスワップをサポートするようになりました。
- Start Swap with Preview - プレビューでスワップ(マルチフェーズスワップ)を開始し、ソーススロットにターゲットスロット構成を適用します。
- Complete Swap with Preview - 保留中のスワップを完了する準備ができたら、プレビュー付きスワップアクションの完了を選択します。
- Cancel Swap with Preview - 保留中のスワップをキャンセルするには、プレビューでスワップのキャンセルを選択します。
このアップデートでは、.NETおよびPythonに基づくFunctionsアプリのYAMLテンプレートのサポートを追加しています。YAMLベースのパイプラインの提案に沿って、これらのfunctionsのアプリケーションのビルドとデプロイをコードで管理できるようになりました。
サービスとYAMLパイプラインとの統合が簡単になりました。YAMLパイプラインのサービスフックイベントを使用して、パイプライン実行の進行状況に基づいてカスタムアプリまたはサービスでアクティビティを駆動できるようになりました。たとえば、承認が必要なときにヘルプデスクチケットを作成したり、ステージの完了後に監視ワークフローを開始したり、ステージが失敗したときにチームのモバイルデバイスにプッシュ通知を送信したりできます。
パイプライン名とステージ名のフィルタリングは、すべてのイベントでサポートされています。承認イベントは、特定の環境に対してもフィルタリングできます。同様に、状態変更イベントは、パイプライン実行またはステージの新しい状態によってフィルタリングできます。
Jira用のAzure Pipelineアプリを使用すると、Azure PipelinesのリリースとJiraソフトウェアクラウドの問題間の双方向リンクが可能になります。これまでのアプリは、GitHubリポジトリがリリースのソースである場合にのみリンクをサポートしていました。この更新により、Azure Reposを使用する場合のリンクのサポートが拡張されました。
サードパーティアプリを使用してAzure ReposをJiraソフトウェアクラウドと統合し、Jira issue keyをコミットまたはpull requestメッセージに追加できます。リリースがこれらのコミットをデプロイするとき、リリースにデプロイされたJiraのissueを関連付け、各Jiraのissueのデプロイメントステータスを追跡することもできます。
GitHubリリースタスクにいくつかの機能強化を加えました。タグの正規表現を指定することにより、タグパターンフィールドを使用してリリースの作成をより適切に制御できるようになりました。リリースは、一致する文字列でトリガーコミットにタグが付けられた場合にのみ作成されます。
変更ログの作成とフォーマットをカスタマイズする機能も追加しました。変更ログ構成の新しいセクションでは、現在のリリースと比較するリリースを指定できるようになりました。 Compare toリリースは、最後の完全リリース(プレリリースを除く)、最後の非ドラフトリリース、または指定されたリリースタグに一致する以前のリリースです。さらに、タスクは、変更ログをフォーマットするための変更ログタイプフィールドを提供します。選択に基づいて、変更ログにはコミットのリストまたはラベルに基づいて分類されたissue/PRのリストが表示されます。
以前は、Azure Container RegistryおよびDocker Hubアーティファクトの正規表現フィルターは、リリースパイプラインレベルでのみ使用可能でした。今回の強化でステージレベルでも使用可能になりました。
以前は、サービスアカウントオプションを使用して、Azure China CloudおよびAzure Government CloudのKubernetesクラスターのKubernetesサービス接続をセットアップできました。今回の更新で、Azureオプションを使用して、Azure China CloudおよびAzure Government Cloudの一部である管理対象Azure Kubernetes Serviceクラスターに関連付けられたKubernetesサービス接続をセットアップできるようになりました。
私たちはAzure PipelinesのホスティングVMイメージに対して多くの変更を行いました。今回の更新における主な変更点を列挙します。
- AWS, Google Cloud, Zeit CLIをUbuntu 16.04に追加
- Ubuntu 16.04, VS2017, VS2019に対してRust 1.36から1.37に更新
- Ubuntu 16.04に対して、Ruby 2.6.2 から2.6.3に更新
- VS2017とVS2019のRuby 2.4.5から2.4.6, 2.5.3から2.5.5, 2.6.1 から2.6.3
- Google Chromeとwebドライバーを75から76に更新
- VS2019にWIX Toolset Visual Studio Extensionを追加
- 多くのバグ修正
最新のリリースノートに関する詳細はこちらから見てください。
注意事項
Ruby 2.3は2019/3/31にサポート終了したため、すべてのイメージから取り除かれます。
チームは、リードパイプラインとサイクルタイムを使用して、作業が開発パイプラインを流れ、最終的に顧客に価値を提供するのにかかる時間を確認します。
これまで、リードウィジェットとサイクルタイムウィジェットは、「優先度の高いアイテムをチームがクローズするのにどのくらい時間がかかりますか」などの質問をするための高度なフィルター条件をサポートしていませんでした。
今回の更新では、Boardのスイムレーンでフィルタリングすることにより、このような質問に答えることができます。
グラフに表示される作業項目を制限するため、作業項目フィルターも含まれています。
注意事項
ここで議論されている機能は今後二~三週にわたって順次展開されます。
これらの新機能を読んだ後、次のリンクからぜひご自身でAzure DevOpsサービスを体験してみてください。
これらの機能についてどう思っているかお聞きしたいと思います。 フィードバックメニューを使用して問題を報告するか、提案を提出してください。
アドバイスや回答を必要とする質問がある場合、Stack Overflowコミュニティで聞いてください。
Aaron Hallberg