Model příspěvku
Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019
Rozšíření do systému přidávají nové funkce tím, že poskytují příspěvky a definují způsoby, jak se k nim připojit další rozšíření. Typ příspěvku definuje něco, co lze přidat do systému. Příspěvek je konkrétní instancí typu příspěvku. Jedná se například hub
o typ příspěvku definovaný základním rozšířením od Microsoftu. Centrum Explorer
pod skupinou Centra sestavení je konkrétním příspěvkem typu hub
.
Další informace najdete na následujících odkazech:
Typy příspěvků
Typ příspěvku definuje kontrakt, který musí všechny příspěvky do systému tohoto typu dodržovat. Typ příspěvku může také rozšířit z jiného typu příspěvku. Následující příklady typů příspěvků definují vlastnosti nastavené instancemi tohoto typu:
hub
action
build-task
Každá definice vlastnosti určuje následující aspekty:
- Typ vlastnosti, například řetězec, logická hodnota atd.
- Určuje, jestli je vlastnost povinná.
- Výchozí hodnota, pokud není určena příspěvkem (volitelné).
Příklad
Tady je příklad deklarace typu příspěvku v manifestu rozšíření:
{
...
"contributionTypes": [
{
"id": "hub",
"name": "Web Access Hub",
"description": "A hub that appears in the hubs menu at the top of web pages.",
"properties": {
"name": {
"description": "The text to display for the hub",
"type": "string",
"required": true
},
"uri": {
"description": "URI of the contents of the hub page",
"type": "string",
"required": true
},
"order": {
"description": "An optional ordering value which can indicate in which position to place the hub within the hub group",
"type": "integer"
}
...
}
}
]
}
Příspěvky
Příspěvek je instancí typu příspěvku. Například Queries
centrum pod skupinou Pracovního centra je příspěvek typu hub
a Publish Test Results
úkol sestavení je příspěvek typu build-task
.
Všechny příspěvky musí zadat typ a zadat hodnoty pro všechny vlastnosti vyžadované tímto typem příspěvku.
Příklad
Tady je příklad deklarace příspěvku centra v manifestu rozšíření:
{
"contributions": [
{
"id": "build-explorer-hub",
"type": "ms.vss-web.hub",
"targets": [
".build-hub-group"
],
"properties": {
"name": "Explorer",
"uri": "/_build",
"order": 22
}
}
]
}
Cílové příspěvky
Příspěvek může cílit na jeden nebo více jiných příspěvků, což vytváří vztah mezi příspěvkem a každým z jeho cílů. Systém může zjišťovat příspěvky pro cíl za běhu. Například hub
příspěvek (Explorer
) může cílit na konkrétní hub-group
příspěvek (Build
).
{
"id": "build-explorer-hub",
"type": "ms.vss-web.hub",
"targets": [
".build-hub-group"
]
}
Když se skupina centra vykreslí, systém může dotazovat všechny příspěvky centra, které cílí na skupinu rozbočovačů, aby věděl, která centra se mají vykreslit.
Identifikace příspěvků a typů
Každý typ příspěvku a příspěvku musí mít jedinečné ID v rámci rozšíření, ve které je deklarováno.
Úplný identifikátor příspěvku obsahuje následující položky, které oddělíte tečkou .
:
- ID vydavatele
- ID rozšíření
- ID příspěvku nebo typu
Například: ms.vss-web.hub
je úplný identifikátor pro následující příspěvek:
- ID vydavatele:
ms
- ID rozšíření:
vss-web
- ID příspěvku nebo typu:
hub
Odkazy na relativní příspěvek můžete použít v manifestu rozšíření pro odkaz na příspěvek na jiný příspěvek nebo typ příspěvku v rámci stejného rozšíření. V tomto případě id vydavatele a rozšíření nejsou zahrnuté a ID příspěvku je tečka .
následovaná ID příspěvku. .hub
Například lze použít v rámci vss-web
rozšíření uvedeného dříve jako zástupce pro ms.vss-web.hub
.