Azure DevOps Services |Azure DevOps Server |Azure DevOps Server 2022
拡張機能は、Azure DevOps UI と REST 画面に機能を追加します。 この記事では、ターゲットにできる最も一般的な拡張ポイントの一覧を示し、拡張機能マニフェストで使用する ID を示します。 拡張モデルとコントリビューション パターンの概要については、 コントリビューション モデルを参照してください。
ヒント
新しい Azure DevOps 拡張機能を開始する場合は、まず、保守されているこれらのサンプル コレクションを試してください。現在の製品ビルドで動作し、最新のシナリオ (プル要求ページにタブを追加するなど) について説明します。
- Azure DevOps 拡張機能サンプル (GitHub) - 一般的な拡張機能パターンを示すコンパクトなスターター サンプルです。 https://github.com/microsoft/azure-devops-extension-sample
- Azure DevOps 拡張機能のサンプル (レガシ コレクションとコントリビューション ガイド) - UI ターゲットを検査したり、ソースを表示したりするためにインストールします。 https://marketplace.visualstudio.com/items/ms-samples.samples-contributions-guide と https://github.com/Microsoft/vso-extension-samples/tree/master/contributions-guide
- Microsoft Learn のサンプル (Azure DevOps サンプルを参照) - Microsoft ドキュメント全体でキュレーションされた、最新のサンプルです: /samples/browse/?terms=azure%20devops%20extension
サンプルが組織で機能しない場合は、個人用またはテスト組織にインストールし、拡張機能マニフェストのターゲット ID と API バージョンを現在のドキュメントと比較します。リファレンスと API については、以下を参照してください。
ハブとハブ グループ
ハブとハブ グループは、Azure DevOps ( ファイル、 リリース、 バックログ、クエリなど) でプライマリ ナビゲーションを提供 します。 ハブはハブ グループに属します。たとえば、 Files ハブはプロジェクト レベルの Azure Repos ハブ グループに属しています。 ハブ グループは、組織/コレクション レベルまたはプロジェクト レベルで存在できます。 ほとんどの拡張機能は、プロジェクト レベルで提供されます。
次の表に、一般的なハブ グループとそのコントリビューション ID を示します。
| 名前 | ID | レベル | プレビュー画像 |
|---|---|---|---|
| Azure Boards | ms.vss-work-web.work-hub-group |
プロジェクト/チーム |
|
| Azure Repos | ms.vss-code-web.code-hub-group |
プロジェクト/チーム |
|
| Azure Pipelines | ms.vss-build-web.build-release-hub-group |
プロジェクト/チーム |
|
| Azure Test Plans | ms.vss-test-web.test-hub-group |
プロジェクト/チーム |
|
| プロジェクト設定 | ms.vss-web.project-admin-hub-group |
プロジェクト |
|
| 組織の設定 | ms.vss-web.collection-admin-hub-group |
組織/コレクション |
|
ハブを投稿する
次の例は、Code Hub グループを対象とするハブコントリビューションを示しています。
{
"contributions": [
{
"id": "my-custom-hub",
"type": "ms.vss-web.hub",
"targets": [
"ms.vss-code-web.code-hub-group"
],
"properties": {
"name": "Code Hub",
"order": 30,
"uri": "/views/code/custom.html"
}
}
]
}
-
ms.vss-web.hubはコントリビューションの種類です。vss-webパブリッシャーの下で公開されているms拡張機能は、この型を定義します。 この型は、この型のコントリビューション (名前、順序など) の省略可能なプロパティと必須プロパティを定義します。 -
ms.vss-code-web.code-hub-groupは、このハブがターゲットとするハブ グループコントリビューションの完全な ID です。vss-code-webパブリッシャーの下で公開されているms拡張機能は、このコントリビューションを宣言します。 -
my-custom-hubは、このコントリビューションの短い ID です。{publisherId}.{extensionId}.my-custom-hubは完全な ID です。
メニューまたはツール バーにアイコンを追加する
アイコン プロパティを追加して、名前で直接参照できるようにします。
独自のアイコンを指定することをお勧めします。 独自のアイコンの使用例:
"name": "Sample hub",
"uri": "dist/Hub/Hub.html",
"icon": "asset://static/sample-icon.png",
"supportsMobile": true
}
"iconName": "Code",
"name": "Code Hub",
"order": 30,
"uri": "/views/code/custom.html"
}
注
アイコン、 icon プロパティ、 iconName プロパティは、タブコントリビューションをサポートしていません。 ハブ、メニュー、およびツール バーでのみ機能します。
メニューとツール バーの設定
| 名前 | ターゲット ID |
|---|---|
| 組織/コレクションの概要ツール バー | ms.vss-admin-web.collection-overview-toolbar-menu |
| コレクションの概要プロジェクト グリッド | ms.vss-admin-web.projects-grid-menu |
| プロジェクトの概要ツール バー | ms.vss-admin-web.project-overview-toolbar-menu |
| プロジェクト概要チーム グリッド | ms.vss-admin-web.teams-grid-menu |
Azure Boards のメニューとツール バー
| 名前 | ターゲット ID | プレビュー画像 |
|---|---|---|
| 作業項目のクエリ メニュー | ms.vss-work-web.work-item-query-menu |
|
| 作業項目のクエリ結果ツール バー メニュー | ms.vss-work-web.work-item-query-results-toolbar-menu |
|
| 作業項目のクエリ結果メニュー項目 | ms.vss-work-web.query-result-work-item-menu |
|
| [作業項目のクエリ結果] タブ | ms.vss-work-web.query-tabs |
|
| コンテキスト メニューの作業項目 | ms.vss-work-web.work-item-toolbar-menu |
|
| バックログ項目メニュー | ms.vss-work-web.backlog-item-menu |
|
| スプリントボードのピボットフィルターメニュー | ms.vss-work-web.sprint-board-pivot-filter-menu |
|
| ボード ピボット フィルター メニュー | ms.vss-work-web.backlog-board-pivot-filter-menu |
|
| カード メニュー | ms.vss-work-web.backlog-board-card-item-menu |
|
| [製品バックログ] タブ | ms.vss-work-web.product-backlog-tabs |
|
| イテレーション バックログ タブ | ms.vss-work-web.iteration-backlog-tabs |
|
| ポートフォリオ バックログ ウィンドウ | ms.vss-work-web.portfolio-backlog-toolpane |
|
| プロダクト バックログ ウィンドウ | ms.vss-work-web.requirement-backlog-toolpane |
|
| イテレーション バックログ ウィンドウ | ms.vss-work-web.iteration-backlog-toolpane |
|
Azure Pipelines のメニューとツール バー
| 名前 | ターゲット ID | プレビュー |
|---|---|---|
| 完了したビルド メニュー | ms.vss-build-web.completed-build-menu |
|
| テスト結果ツールバーアクション | ms.vss-test-web.test-results-actions-menu |
|
| [テスト結果の詳細] タブ | ms.vss-test-web.test-result-details-tab-items |
|
| リリース パイプライン エクスプローラーのコンテキスト メニュー | ms.vss-releaseManagement-web.release-definition-explorer-context-menu |
|
| パイプラインの詳細ビュー、ヘッダー ボタン | ms.vss-build-web.pipelines-header-menu |
|
| パイプラインの詳細ビュー、フォルダーのコンテキスト メニュー | ms.vss-build-web.pipelines-folder-menu |
|
Azure Pipelines タスク
タスクはビルドまたはリリースで作業を実行します。 詳細については、「 カスタム パイプライン タスク拡張機能の追加」を参照してください。
Azure Repos のメニューとツール バー
| 名前 | ターゲット ID | プレビュー画像 |
|---|---|---|
| ソース項目 (グリッド) メニュー | ms.vss-code-web.source-grid-item-menu |
|
| ソース項目 (ツリー) メニュー | ms.vss-code-web.source-tree-item-menu |
|
| ソース項目 (グリッドとツリー) メニュー | ms.vss-code-web.source-item-menu |
|
| 変更リスト項目メニュー | ms.vss-code-web.change-list-item-menu |
|
| リストの概要項目を変更するメニュー | ms.vss-code-web.change-list-summary-item-menu |
|
| Git ブランチ ツリー メニュー | ms.vss-code-web.git-branches-tree-menu |
|
| Git プルリクエスト操作メニュー | ms.vss-code-web.pull-request-action-menu |
|
| Git プル リクエスト タブ (ピボット) | ms.vss-code-web.pr-tabs |
|
| Git コミット一覧表示メニュー | ms.vss-code-web.git-commit-list-menu |
|
| Git コミット詳細メニュー | ms.vss-code-web.git-commit-details-menu |
|
Azure Test Plans のメニューとツール バー
| 名前 | ターゲット ID | プレビュー画像 |
|---|---|---|
| テストラン・グリッドメニュー | ms.vss-test-web.test-run-grid-menu |
|
| テスト計画スイート ツリー メニュー | ms.vss-test-web.test-plans-suites-context |
|
| [テスト計画ハブのピボット] タブ | ms.vss-test-web.test-plan-pivot-tabs |
|
その他の拡張ポイント
- ダッシュボード ウィジェット: 拡張機能は、ユーザーが ダッシュボードに追加できる新しい種類のウィジェットを提供できます。 ダッシュボード ウィジェットを寄稿する方法を学ぶ。
- 作業項目フォーム: 拡張機能は、新しいセクション、タブ、アクション、およびユーザー設定フィールド レンダラーを使用して作業項目フォームを強化します。 詳細については、作業項目フォーム 拡張する方法について説明。
- サービス フック: コンシューマー は、サービス フックがイベントを送信するサービスです。 拡張機能は、コンシューマー サービスを提供できます。 ユーザーは(またはプログラムによって)これらのサービスを構成して、そのサービスにイベントを送信します。 詳細については、「 サービス フック用のカスタム コンシューマーを作成する」を参照してください。