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— コントリビューションの種類。msによって公開されるvss-web拡張機能は、この型と、nameやorderなどの必須プロパティと省略可能なプロパティを定義します。 -
ms.vss-code-web.code-hub-group— このハブがターゲットとするハブ グループの完全な ID。 -
my-custom-hub— この投稿の短い ID。 完全な ID は{publisherId}.{extensionId}.my-custom-hub。
次の表に、 ms.vss-web.hub コントリビューションで使用できるプロパティを示します。
| 財産 | タイプ | 必須 | 説明 |
|---|---|---|---|
name |
文字列 | はい | ハブ ナビゲーションに表示される表示名 |
order |
数値 | いいえ | 他のハブを基準とした位置 (低い値が最初に表示されます) |
uri |
文字列 | はい | ハブの HTML コンテンツ ページへの相対パス |
icon |
文字列 | いいえ |
asset:// パスを使用したカスタム アイコン |
iconName |
文字列 | いいえ | Fluent UI アイコン名 |
supportsMobile |
ブーリアン | いいえ | ハブがモバイル デバイスに表示されるかどうか |
ヒント
投稿が表示されない場合は、ターゲット ID が正確に一致していることを確認します。ID では大文字と小文字が区別されます。 ブラウザーで拡張機能を再読み込みし、開発者ツール コンソールで拡張機能の読み込みエラーを確認します。
メニューまたはツール バーにアイコンを追加する
コントリビューションで icon または iconName プロパティを使用して、アイコンを表示します。 可能な場合は、独自のアイコンを指定します。
カスタム アイコン:
"properties": {
"name": "Sample hub",
"uri": "dist/Hub/Hub.html",
"icon": "asset://static/sample-icon.png",
"supportsMobile": true
}
"properties": {
"iconName": "Code",
"name": "Code Hub",
"order": 30,
"uri": "/views/code/custom.html"
}
注
iconプロパティとiconNameプロパティは、ハブ、メニュー、およびツール バーでのみ機能します。 タブコントリビューションでは機能しません。
メニューとツール バーの設定
これらのターゲットは、Azure Boards や Azure Repos などのサービス固有のハブではなく、組織とプロジェクトの管理ページに適用されます。
| 名前 | ターゲット 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 |
|
その他の拡張ポイント
- ダッシュボード ウィジェット - ユーザーがダッシュボードに追加できる新しいウィジェットの種類を投稿 します。 「ダッシュボード ウィジェットを投稿する」を参照してください。
- 作業項目フォーム - セクション、タブ、アクション、またはユーザー設定フィールド レンダラーを作業項目フォームに追加します。 作業 項目フォームの拡張を参照してください。
- サービス フック コンシューマー — サービス フック からイベントを受信するコンシューマー サービスを提供します。 「サービス フックのカスタム コンシューマーを作成する」を参照してください。