Tilläggsmanifestreferens
Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019
Varje tillägg har en JSON-manifestfil som definierar grundläggande information om tillägget. Filen definierar också hur den kan utöka och förbättra upplevelsen. Den här artikeln visar hur du skapar ett manifest för ditt tillägg till Azure DevOps.
Dricks
Läs vår senaste dokumentation om tilläggsutveckling med hjälp av Azure DevOps Extension SDK.
Skapa en fil med namnet vss-extension.json
i roten i tilläggsmappen. Den här filen innehåller obligatoriska attribut, till exempel tilläggets ID och dess installationsmål, där den kan köras. Den definierar också bidragen som görs av ditt tillägg.
Se följande exempel på ett typiskt manifest:
{
"manifestVersion": 1,
"id": "tools",
"version": "0.1.0",
"name": "Fabrikam Tools",
"publisher": "fabrikam",
"description": "Awesome tools to help you and your team do great things everyday.",
"targets": [
{
"id": "Microsoft.VisualStudio.Services"
}
],
"icons": {
"default": "images/fabrikam-logo.png"
},
"scopes": [
"vso.work",
"vso.code_write",
"vso.build_execute"
],
"categories": [
"Azure Boards"
],
"branding": {
"color": "rgb(34, 34, 34)",
"theme": "dark"
},
"content": {
"details": {
"path": "readme.md"
},
"license": {
"path": "eula.md"
}
},
"links": {
"getstarted": {
"uri": "https://www.fabrikam-fiber-inc.com/help/getstarted"
},
"support": {
"uri": "https://www.fabrikam-fiber-inc.com/support"
}
},
"repository": {
"type": "git",
"uri": "https://github.com/fabrikam-fiber-inc/myextension"
},
"contributions": [
{
"id": "showCommits",
"type": "ms.vss-web.action",
"description": "Adds a menu action from builds grid to show associated items.",
"targets": [
"ms.vss-build-web.completed-build-menu"
],
"properties": {
"title": "View associated items",
"uri": "launch.html"
}
}
],
"files": [
{
"path": "launch.html",
"addressable": true
},
{
"path": "node_modules/vss-web-extension-sdk/lib",
"addressable": true,
"packagePath": "lib"
}
]
}
Information om indata finns i ...
Egendom | beskrivning | Anteckningar |
---|---|---|
manifestVersion | Ett tal som motsvarar versionen av manifestformatet. | Ska vara 1 . |
ID | Tilläggets identifierare. | Det här ID:t är en sträng som måste vara unik bland tillägg från samma utgivare. Den måste börja med ett alfabetiskt eller numeriskt tecken och innehålla "A" genom "Z", "a" till "z", "0" till och med "9" och "-" (bindestreck). Exempel: sample-extension . |
version | En sträng som anger versionen av ett tillägg. | Ska vara i formatet major.minor.patch , till exempel 0.1.2 eller 1.0.0 . Du kan också lägga till ett fjärde tal för följande format: 0.1.2.3 |
Namn | Ett kort, läsbart namn på tillägget. Begränsad till 200 tecken. | Exempel: "Fabrikam Agile Board Extension" . |
förläggare | Utgivarens identifierare. | Den här identifieraren måste matcha den identifierare som tillägget publiceras under. Se Skapa och hantera en utgivare. |
Kategorier | Matris med strängar som representerar de kategorier som tillägget tillhör. Minst en kategori måste anges och det finns ingen gräns för hur många kategorier du kan inkludera. | Giltiga värden: Azure Repos , Azure Boards , Azure Pipelines , Azure Test Plans och Azure Artifacts .Anteckningar:
– Om du använder Azure DevOps Extension Tasks-tillägget för att publicera ska du kontrollera att dess version är >= 1.2.8. Du kan behöva godkänna tilläggsuppdateringen på grund av de senaste omfångsändringarna. – De kategorier som tidigare nämnts finns internt i Visual Studio Marketplace och Azure DevOps Server 2019 och senare. För tillägg som riktar sig till tidigare versioner av TFS:
– Om du ska dela tillägget direkt (dvs. inte via Visual Studio Marketplace) med en kund som använder TFS <=2018 använder du i stället följande kategorier: Kod, Planera och spåra, Skapa och släpp, Testa, Samarbeta och Integrera. Om du behöver dela både via Visual Studio Marketplace och direkt med en TFS <= 2018-kund måste du ha 2 tilläggspaket. |
Mål | De produkter och tjänster som stöds av din integrering eller ditt tillägg. Mer information finns i installationsmål. | En matris med objekt, där varje objekt har ett id fält som anger något av följande:
Microsoft.VisualStudio.Services (tillägg som fungerar med Azure DevOps eller TFS),- Microsoft.TeamFoundation.Server (tillägg som fungerar med TFS),- Microsoft.VisualStudio.Services.Integration (integreringar som fungerar med Azure DevOps eller TFS) - Microsoft.TeamFoundation.Server.Integration (integreringar som fungerar med TFS) |
{
"manifestVersion": 1,
"id": "tools",
"version": "0.1.0",
"name": "Fabrikam Tools",
"publisher": "fabrikam",
"targets": [
{
"id": "Microsoft.VisualStudio.Services"
}
]
}
Egendom | beskrivning | Anteckningar |
---|---|---|
Scopen | En matris med auktoriseringsomfattningar (strängar) med behörigheter som krävs av tillägget. | Till exempel anger vso.work och vs.code_write att tillägget behöver skrivskyddad åtkomst till arbetsobjekt och läs-/skrivåtkomst till källkod (och relaterade resurser). Omfång visas för användaren när du installerar tillägget. Mer information finns i den fullständiga listan över omfång. |
Krav | En matris med krav (strängar) som visar de funktioner som krävs i tillägget. | Anger till exempel api-version/3.0 att tillägget använder API:er för version 3.0 och därför inte kan köras i äldre produkter som inte stöder den här versionen. Mer information finns i den fullständiga listan över krav. |
baseUri | (Valfritt) bas-URL för alla relativa URL:er som anges av tilläggets bidrag. | Exempel: https://myapp.com/{{account.name}}/ . Den här egenskapen bör lämnas tom om tilläggets innehåll paketeras med tillägget. |
Bidrag | En matris med bidrag till systemet. | |
bidragstyper | En matris med bidragstyper som definieras av tillägget |
{
"scopes": [
"vso.work",
"vso.code_write",
"vso.build_execute"
],
"demands": [
"api-version/3.0"
],
"contributions": [
{
"id": "showCommits",
"type": "ms.vss-web.action",
"description": "Adds a menu action from builds grid to show associated items.",
"targets": [
"ms.vss-build-web.completed-build-menu"
],
"properties": {
"title": "View associated items",
"uri": "launch.html"
}
}
]
}
De här valfria egenskaperna hjälper användarna att identifiera och lära sig mer om ditt tillägg:
Fastighet / Egendom | beskrivning | Anteckningar |
---|---|---|
beskrivning | Några meningar som beskriver tilläggen. Begränsad till 200 tecken. | Beskrivningen bör vara tilläggets "hisshöjd" – ett par rader för att beskriva ditt tillägg på Marketplace och få personer att vilja installera det. Se exemplet nedan |
Ikoner | Ordlista med ikoner som representerar tillägget. | Giltiga nycklar: default (128 x 128 bildpunkter) av typen BMP, GIF, EXIF, JPG, PNG och TIFF). Andra nycklar som large (512 x 512 bildpunkter) kan stödjas i framtiden. Värdet för varje nyckel är sökvägen till ikonfilen i tillägget |
tagg | Matris med strängtaggar som hjälper användarna att hitta tillägget. | Exempel: agile , project management , task timer och så vidare. |
skärmbilder | Matris med bilder som inte kunde inkluderas i ditt innehåll. | Skärmbilder är mer värdefulla när de visas i ditt innehåll och bör användas där för att skapa en informationssida för kvalitetsmarknadsinformation för ditt tillägg. Använd skärmbilder för mindre viktiga bilder som inte finns i ditt innehåll. Varje bild ska vara 1366 x 768 bildpunkter. Sökvägen till filen i tillägget är för varje objekt path . |
innehåll | Ordlista över innehållsfiler som beskriver ditt tillägg till användare. |
Varje tillägg bör innehålla fast innehåll. Så här visar du användarna vad tillägget kan göra. Gör den rik, förbrukningsbar och inkludera skärmbilder där det behövs. Inkludera en overview.md fil som basinnehållsdel. Varje fil antas vara i GitHub Flavored Markdown-format . För path varje objekt är sökvägen till Markdown-filen i tillägget. Giltiga nycklar: details . Andra nycklar kan stödjas i framtiden. |
Länkar | Ordlista med länkar som hjälper användarna att lära sig mer om ditt tillägg, få support och flytta. | Giltiga nycklar: getstarted – första stegen, hur du konfigurerar eller använder.
learn – djupare innehåll som hjälper användarna att bättre förstå ditt tillägg eller din tjänst.
license – licensavtal för slutanvändare.
privacypolicy – Sekretesspolicy för ett tillägg.
support – få hjälp och stöd för ett tillägg. Värdet för varje nyckel är ett objekt med ett uri fält, vilket är länkens absoluta URL |
Databasen | Ordlista med egenskaper som beskriver källkodslagringsplatsen för tillägget | Giltiga nycklar: type – Typ av lagringsplats. Exempel: git.
uri – Absolut URL för lagringsplatsen. |
Märken | Matris med länkar till externa metadatamärken som TravisCI, Appveyor och så vidare från de godkända märkenas webbplatser | Giltiga nycklar: href – Länken som användaren navigerar till när användaren väljer badgen.
uri – Den absoluta URL:en för den märkesbild som ska visas.
description - Beskrivning av märket, som ska visas när muspekaren förflyttas över. |
Branding | Ordlista över varumärkesrelaterade egenskaper. | Giltiga nycklar: color – den primära färgen på tillägget eller utgivaren, kan vara en hex (#ff00ff), RGB (rgb(100 200,50)) eller HTML-färgnamn som stöds (blå).
theme - kompletterar färgen; använd mörk för mörka varumärkesfärger eller ljus för ljusare varumärkesfärger. |
Som standard är alla tillägg på Azure DevOps Marketplace privata. De är endast synliga för utgivaren och de konton som utgivaren har delat till. Om utgivaren har verifierats kan du göra tillägget offentligt genom att ange Public
flaggan i tilläggsmanifestet:
{
"galleryFlags": [
"Public"
]
}
Eller:
{
"public": true
}
Mer information finns i Paket/Publicera/Installera.
Om tillägget är redo för användare på Marketplace att prova, men du fortfarande arbetar med några buggar eller lägger till funktionen, kan du markera det som preview
:
{
"galleryFlags": [
"Preview"
]
}
Om du tänker sälja ditt tillägg på Marketplace markerar du det som betald förhandsversion. Det går inte att ändra ett tillägg som är markerat som kostnadsfritt till betald.
{
"galleryFlags": [
"Paid",
"Preview"
]
}
Om du vill sälja tillägget på Marketplace kan du markera det med Paid
flaggan och __BYOLENFORCED
taggen (börjar med två understreck):
{
"galleryFlags": [
"Paid"
],
"tags": [
"__BYOLENFORCED"
]
}
Paid
Både flaggan och __BYOLENFORCED
taggen måste finnas för att markera ett tillägg som betalt på Marketplace. BYOL (Bring-Your-Own-License) innebär att utgivaren av tillägget tillhandahåller fakturerings- och licensieringsmekanismen för tillägget, eftersom det inte tillhandahålls av Microsoft för Azure DevOps-tillägg. Alla betalda tillägg krävs för att definiera sekretesspolicy, supportprincip och ett licensavtal för slutanvändare. Utgivare måste ange innehåll för prisfliken på Marketplace på följande sätt:
{
"content": {
"details": {
"path": "overview.md"
},
"pricing": {
"path": "pricing.md"
}
}
}
Du måste också lägga till ett nytt avsnitt i tilläggsmanifestet för att åsidosätta betald licensiering. I framtiden tar vi bort kontrollen av betalning för licens och kräver inte längre undantaget. För tillfället, se till att ditt tillägg visas som förväntat. Varje åsidosättning består av ett "ID" och ett "beteende". Se till att "ID" matchar ID:t för de bidrag som definierats i manifestet.
"licensing": {
"overrides": [
{ "id": "my-hub", "behavior": " AlwaysInclude" }
]
}
Om ditt betalda BYOL-tillägg erbjuder en utvärderingsperiod (vi rekommenderar det) kan du ange längden på utvärderingsversionen i dagar:
{
"galleryproperties": {
"trialDays": "30"
}
}
Anteckning
Om du vill rikta in dig på Azure DevOps, men inte vill visa ett nedladdningsalternativ för tillägget, lägger du till taggen __DoNotDownload
(börjar med två understreck) i tilläggsmanifestet.
Om du flyttar ett tillägg från den tidigare erbjudna faktureringen och licensieringen från Microsoft till BYOL-modellen, vänligen kontakta oss för lämpliga steg.
{
"description": "Awesome tools to help you and your team do great things everyday.",
"icons": {
"default": "images/fabrikam-logo.png"
},
"categories": [
"Plan and track"
],
"tags": [
"working",
"people person",
"search"
],
"content": {
"details": {
"path": "overview.md"
},
"license": {
"path": "license-terms.md"
}
},
"links": {
"home": {
"uri": "https://www.fabrikam-fiber-inc.com"
},
"getstarted": {
"uri": "https://www.fabrikam-fiber-inc.com/help/getstarted"
},
"learn": {
"uri": "https://www.fabrikam-fiber-inc.com/features"
},
"support": {
"uri": "https://www.fabrikam-fiber-inc.com/support"
},
"repository": {
"uri": "https://github.com/fabrikam-fiber-inc/tools"
},
"issues": {
"uri": "https://github.com/fabrikam-fiber-inc/tools/issues"
}
},
"repository": {
"type": "git",
"uri": "https://github.com/fabrikam-fiber-inc/tools"
},
"badges": [
{
"href": "https://travis.ci/fabrikam-fiber-inc/myextension",
"uri": "https://travis.ci/fabrikam-fiber-inc/myextension.svg?branch=master",
"description": "TravisCI build for the project"
},
{
"href": "https://ci.appveyor.com/projects/fabrikam-fiber-inc/myextension",
"uri": "https://ci.appveyor.com/api/projects/status/vlg2sgs2y7tsdxpj4c?svg=true",
"description": "AppVeyor build for the project"
}
],
"branding": {
"color": "rgb(34, 34, 34)",
"theme": "dark"
},
"screenshots": [
{
"path": "screenshots/screen1.png"
},
{
"path": "screenshots/screen2.png"
}
]
}
- 1 – beskrivning
- 2 – ikon
- 3 – kategorier
- 4 – skärmbilder
- 5 – innehåll (information)
- 6 - länkar
- 7 - varumärkesanpassning
Alla tillägg på Visual Studio Marketplace har ett avsnitt med frågor och svar (Q &A) för att tillåta en-mot-en-offentliga konversationer mellan tilläggsanvändare och utgivare. Utgivare kan välja mellan Frågor och svar på Marketplace (Q&A), GitHub-problem eller en anpassad Q&A-URL. Du kan inaktivera Q&A på Marketplace med egenskapen CustomerQnASupport i manifestet.
Standardupplevelse (inga ändringar i manifestet krävs)
- För tillägg med en GitHub-lagringsplats omdirigerar Marketplace användare i avsnittet Q&A till associerade GitHub-problem.
- För tillägg utan en GitHub-lagringsplats är Marketplace Q&A aktiverat.
För en annan upplevelse än något av standardalternativen använder du egenskapen CustomerQnASupport i manifestet.
{
"CustomerQnASupport": {
"enablemarketplaceqna": true,
"url": "http://uservoice.visualstudio.com"
}
}
Egenskaper för avsnittet Kundfrågor och -svar Support:
-
enablemarketplaceqna – booleskt fält, inställt på
true
för Marketplace eller anpassad Q&A; false för att inaktivera Q&A - url – sträng, URL för anpassad Q&A
{
"CustomerQnASupport": {
"enablemarketplaceqna":"true",
"url": "http://uservoice.visualstudio.com"
}
}
{
"CustomerQnASupport": {
"enablemarketplaceqna":"true"
}
}
{
"CustomerQnASupport": {
"enablemarketplaceqna":"false"
}
}
I tillägget kan du definiera ett eller flera omfång. Dessa omfång avgör vilka resurser ditt tillägg kan komma åt och vilka åtgärder som tillåts utföras på dessa resurser. De omfång som du anger i tilläggsmanifestet är de omfång som angetts för åtkomsttoken som utfärdats till tillägget. Mer information finns i autentisering och säkerhet.
Om inga omfång anges ges tillägg endast åtkomst till användarprofil- och tilläggsdata.
Kategori | Omfattning | Name | Hög risk | beskrivning | Ärver från |
---|---|---|---|---|---|
Avancerad säkerhet | vso.advsec |
AdvancedSecurity (läs) | Ja | Ger möjlighet att läsa aviseringar, resultatexemplar och analysresultatsexemplar. | |
vso.advsec_write |
AdvancedSecurity (läsa och skriva) | Ja | Ger möjlighet att ladda upp analyser i sarif | vso.advsec |
|
vso.advsec_manage |
AdvancedSecurity (läsa, skriva och hantera) | Ja | Ger möjlighet att ladda upp analyser i sarif | vso.advsec_write |
|
Agentpooler | vso.agentpools |
Agentpooler (läs) | Ger möjlighet att visa uppgifter, pooler, köer, agenter och för närvarande aktiva eller nyligen slutförda jobb för agenter. | ||
vso.agentpools_manage |
Agentpooler (läsa, hantera) | Ja | Ger möjlighet att hantera pooler, köer och agenter. | vso.agentpools |
|
vso.environment_manage |
Miljö (läsa, hantera) | Ja | Ger möjlighet att hantera pooler, köer, agenter och miljöer. | vso.agentpools_manage |
|
Analys | vso.analytics |
Analys (läs) | Ger möjlighet att utföra frågor på analysdata. | ||
Granskning | vso.auditlog |
Granskningslogg (läs) | Ger användarna möjlighet att läsa granskningsloggen. | ||
vso.auditstreams_manage |
Revisionsströmmar (läs) | Ja | Ger möjlighet att hantera granskningsströmmar till användare. | vso.auditlog |
|
Bygge | vso.build |
Skapa (läs) | Ger möjlighet att komma åt byggartefakter, inklusive byggresultat, definitioner och begäranden, samt möjlighet att ta emot meddelanden om bygghändelser via tjänstkrokar. | vso.hooks_write |
|
vso.build_execute |
Skapa (läsa och köra) | Ja | Ger möjlighet att komma åt byggartefakter, inklusive byggresultat, definitioner och begäranden, samt möjlighet att köa bygge, uppdatera byggegenskaper och möjlighet att ta emot meddelanden om bygghändelser via tjänstkrokar. | vso.build |
|
Code | vso.code |
Kod (läs) | Ger möjlighet att läsa källkod och metadata om incheckningar, ändringsuppsättningar, grenar och andra artefakter för versionskontroll. Ger också möjlighet att söka efter kod och få meddelanden om versionskontrollhändelser via tjänstkrokar. | vso.hooks_write |
|
vso.code_write |
Kod (läsa och skriva) | Ja | Ger möjlighet att läsa, uppdatera och ta bort källkod, komma åt metadata om incheckningar, ändringsuppsättningar, grenar och andra artefakter för versionskontroll. Ger även möjlighet att skapa och hantera pull-begäranden och kodgranskningar och att ta emot meddelanden om versionskontrollhändelser via tjänstkrokar. | vso.code |
|
vso.code_manage |
Kod (läsa, skriva och hantera) | Ja | Ger möjlighet att läsa, uppdatera och ta bort källkod, komma åt metadata om incheckningar, ändringsuppsättningar, grenar och andra artefakter för versionskontroll. Ger också möjlighet att skapa och hantera kodlagringsplatser, skapa och hantera pull-begäranden och kodgranskningar samt att ta emot meddelanden om versionskontrollhändelser via tjänstkrokar. | vso.code_write |
|
vso.code_full |
Kod (fullständig) | Ja | Ger fullständig åtkomst till källkod samt metadata om commit-händelser, ändringsuppsättningar, grenar och andra artefakter inom versionskontroll. Ger också möjlighet att skapa och hantera kodlagringsplatser, skapa och hantera pull-begäranden och kodgranskningar samt att ta emot meddelanden om versionskontrollhändelser via tjänstkrokar. Innehåller även begränsat stöd för API:er för klient-OM. | vso.code_manage |
|
vso.code_status |
Kod (status) | Ger behörighet att läsa och skriva commit- och pull request-statusar. | |||
Ansluten server | vso.connected_server |
Ansluten server | Ger möjlighet att komma åt slutpunkter som behövs från en lokal ansluten server. | ||
Berättiganden | vso.entitlements |
Berättiganden (läs) | Ger skrivskyddad åtkomst till licensrättigheternas slutpunkt för att hämta kontorättigheter. | ||
vso.memberentitlementmanagement |
Medlemsrättighetsförvaltning (läs) | Ger möjlighet att läsa användare, deras licenser samt projekt och tillägg som de kan komma åt. | |||
vso.memberentitlementmanagement_write |
MemberEntitlement Management (skrivning) | Ja | Ger möjlighet att hantera användare, deras licenser samt projekt och tillägg som de kan komma åt. | vso.memberentitlementmanagement |
|
Tillägg | vso.extension |
Tillägg (läs) | Ger möjlighet att läsa installerade tillägg. | vso.profile |
|
vso.extension_manage |
Tillägg (läs och hantera) | Ja | Ger möjlighet att installera, avinstallera och utföra andra administrativa åtgärder på installerade tillägg. | vso.extension |
|
vso.extension.data |
Tilläggsdata (läs) | Ger möjlighet att läsa data (inställningar och dokument) som lagras av installerade tillägg. | vso.profile |
||
vso.extension.data_write |
Tilläggsdata (läsa och skriva) | Ger möjlighet att läsa och skriva data (inställningar och dokument) som lagras av installerade tillägg. | vso.extension.data |
||
Github-anslutningar | vso.githubconnections |
GitHub-anslutningar (läs) | Ger möjlighet att läsa GitHub-anslutningar och GitHub-lagringsplatser. | ||
vso.githubconnections_manage |
GitHub-anslutningar (läsa och hantera) | Ja | Ger möjlighet att läsa och hantera GitHub-anslutningar och GitHub-lagringsplatser | vso.githubconnections |
|
Diagram och identitet | vso.graph |
Diagram (läsning) | Ger möjlighet att läsa information om användar-, grupp-, omfångs- och gruppmedlemskap. | ||
vso.graph_manage |
Diagram (hantering) | Ja | Ger möjlighet att läsa information om användare, grupper, omfång och gruppmedlemskap samt lägga till användare, grupper och hantera gruppmedlemskap. | vso.graph |
|
vso.identity |
Identitet (läs) | Ger möjlighet att läsa identiteter och grupper. | |||
vso.identity_manage |
Identitet (hantera) | Ja | Ger möjlighet att läsa, skriva och hantera identiteter och grupper. | vso.identity |
|
Datorgrupp | vso.machinegroup_manage |
Utrullningsgrupp (läsa, hantera) | Ja | Ger möjlighet att hantera distributionsgrupp- och agentpooler. | vso.agentpools_manage |
Marketplace | vso.gallery |
Marknadsplats | Ger läsåtkomst till offentliga och privata objekt samt publicerare. | vso.profile |
|
vso.gallery_acquire |
Marketplace (hämta) | Ger läsåtkomst och möjlighet att hämta objekt. | vso.gallery |
||
vso.gallery_publish |
Marketplace (publicera) | Ja | Ger läsåtkomst och möjlighet att ladda upp, uppdatera och dela objekt. | vso.gallery |
|
vso.gallery_manage |
Marketplace (hantera) | Ja | Ger läsåtkomst och möjlighet att publicera och hantera objekt och utgivare. | vso.gallery_publish |
|
Aviseringar | vso.notification |
Meddelanden (läs) | Ger läsåtkomst till prenumerationer och händelsemetadata, inklusive filterbara fältvärden. | vso.profile |
|
vso.notification_write |
Meddelanden (skriv) | Ger läs- och skrivåtkomst till prenumerationer och läsåtkomst till händelsemetadata, inklusive filterbara fältvärden. | vso.notification |
||
vso.notification_manage |
Meddelanden (hantera) | Ger läs-, skriv- och hanteringsåtkomst till prenumerationer och läsåtkomst till händelsemetadata, inklusive filterbara fältvärden. | vso.notification_write |
||
vso.notification_diagnostics |
Meddelanden (diagnostik) | Ger åtkomst till meddelanderelaterade diagnostikloggar och ger möjlighet att aktivera diagnostik för enskilda prenumerationer. | vso.notification |
||
Paketering | vso.packaging |
Paketering (läs) | Ger möjlighet att läsa flöden och paket. | vso.profile |
|
vso.packaging_write |
Paketering (läsa och skriva) | Ja | Ger behörighet att skapa och läsa flöden och paket. | vso.packaging |
|
vso.packaging_manage |
Paketering (läsa, skriva och hantera) | Ja | Ger möjlighet att skapa, läsa, uppdatera och ta bort mataflöden och paket. | vso.packaging_write |
|
Pipelineresurser | vso.pipelineresources_use |
Pipelineresurser (användning) | Ja | Ger möjlighet att godkänna en pipelines begäran om att använda en skyddad resurs: agentpool, miljö, kö, lagringsplats, säkra filer, tjänstanslutning och variabelgrupp. | |
vso.pipelineresources_manage |
Pipeline-resurser (använd och hantera) | Ja | Ger möjlighet att hantera en skyddad resurs eller en pipelines begäran om att använda en skyddad resurs: agentpool, miljö, kö, lagringsplats, säkra filer, tjänstanslutning och variabelgrupp. | vso.pipelineresources_manage |
|
Projekt och team | vso.project |
Projekt och team - Läs gärna | Ger tillgång till att läsa projekten och teamen. | ||
vso.project_write |
Projekt och team (läsa och skriva) | Ger möjlighet att läsa och uppdatera projekt och team. | vso.project |
||
vso.project_manage |
Projekt och team (läsa, skriva och hantera) | Ja | Ger möjlighet att skapa, läsa, uppdatera och ta bort projekt och team. | vso.project_write |
|
Släppa | vso.release |
Släpp (läs) | Ger möjlighet att läsa versionsartefakter, inklusive versioner, versionsdefinitioner och versionsmiljö. | vso.profile |
|
vso.release_execute |
Release (läsa, skriva och köra) | Ja | Ger möjlighet att läsa och uppdatera versionsartefakter, inklusive versioner, versionsdefinitioner och versionsmiljö, samt möjlighet att köa en ny version. | vso.release |
|
vso.release_manage |
Frisläpp (läsa, skriva, köra och administrera) | Ja | Ger möjlighet att läsa, uppdatera och ta bort versionsartefakter, inklusive versioner, versionsdefinitioner och versionsmiljö, samt möjlighet att köa och godkänna en ny version. | vso.release_manage |
|
Trygga Filer | vso.securefiles_read |
Säkra filer (läs) | Ja | Ger möjlighet att läsa säkra filer. | |
vso.securefiles_write |
Säkra filer (läsa, skapa) | Ja | Ger möjlighet att läsa och skapa säkra filer. | vso.securefiles_read |
|
vso.securefiles_manage |
Säkra filer (läsa, skapa och hantera) | Ja | Ger möjlighet att läsa, skapa och hantera säkra filer. | vso.securefiles_write |
|
Säkerhet | vso.security_manage |
Säkerhet (hantera) | Ja | Ger möjlighet att läsa, skriva och hantera säkerhetsbehörigheter. | |
Tjänstanslutningar | vso.serviceendpoint |
Tjänstslutpunkter (läs) | Ger möjlighet att läsa tjänstslutpunkter. | vso.profile |
|
vso.serviceendpoint_query |
Tjänstslutpunkter (läs och fråga) | Ger möjlighet att läsa och söka information från slutpunkter för tjänster. | vso.serviceendpoint |
||
vso.serviceendpoint_manage |
Tjänstslutpunkter (läsa, fråga och hantera) | Ja | Ger möjlighet att läsa, fråga och hantera tjänstslutpunkter. | vso.serviceendpoint_query |
|
Service Hooks | vso.hooks |
Servicehakar (läs mer) | Ger möjlighet att läsa prenumerationer och metadata för tjänstkrokar, inklusive händelser som stöds, konsumenter och åtgärder. (Inte längre offentligt.) | vso.profile |
|
vso.hooks_write |
Tjänstkrokar (läsa och skriva) | Ger möjlighet att skapa och uppdatera prenumerationer för service hooks samt läsa metadata, inklusive de händelser, konsumenter och åtgärder som stöds. (Inte längre offentligt.) | vso.hooks |
||
vso.hooks_interact |
Tjänstkrokar för interaktion | Ger möjlighet att utföra åtgärder och interagera med händelser som tas emot via service hooks. (Inte längre offentligt.) | vso.profile |
||
Inställningar | vso.settings |
Inställningar (läs) | Ger möjlighet att läsa inställningar. | ||
vso.settings_write |
Inställningar (läsa och skriva) | Ger möjlighet att skapa och läsa inställningar. | |||
Symboler | vso.symbols |
Symboler (läs) | Ger möjlighet att läsa symboler. | vso.profile |
|
vso.symbols_write |
Symboler (läsa och skriva) | Ger möjlighet att läsa och skriva symboler. | vso.symbols |
||
vso.symbols_manage |
Symboler (läsa, skriva och hantera) | Ger möjlighet att läsa, skriva och hantera symboler. | vso.symbols_write |
||
Aktivitetsgrupper | vso.taskgroups_read |
Uppgiftsgrupper (läs) | Ger möjlighet att läsa aktivitetsgrupper. | ||
vso.taskgroups_write |
Uppgiftsgrupper (läsa, skapa) | Ger möjlighet att läsa och skapa aktivitetsgrupper. | vso.taskgroups_read |
||
vso.taskgroups_manage |
Uppgiftsgrupper (läsa, skapa och hantera) | Ja | Ger möjlighet att läsa, skapa och hantera aktivitetsgrupper. | vso.taskgroups_write |
|
Instrumentpanel för team | vso.dashboards |
Teampaneler (läsåtkomst) | Ger rätt att läsa information om teamets översiktssida. | ||
vso.dashboards_manage |
Teamgränssnitt (hantering) | Tillåter hantering av teamets instrumentpanelsinformation. | vso.dashboards |
||
Testhantering | vso.test |
Testhantering (läs) | Ger möjlighet att läsa testplaner, fall, resultat och andra testhanteringsrelaterade artefakter. | vso.profile |
|
vso.test_write |
Testhantering (läsa och skriva) | Ger möjlighet att läsa, skapa och uppdatera testplaner, fall, resultat och andra testhanteringsrelaterade artefakter. | vso.test |
||
Trådar | vso.threads_full |
PR-trådar | Ger möjlighet att läsa och skriva i kommentarstrådar för pull request. | ||
Token | vso.tokens |
Delegerade auktoriseringstoken | Ja | Ger möjlighet att hantera delegerade auktoriseringstoken till användare. | |
vso.tokenadministration |
Token-administration | Ja | Ger möjlighet att hantera (visa och återkalla) befintliga token till organisationsadministratörer. | ||
Användarprofil | vso.profile |
Användarprofil (läs) | Ger möjlighet att läsa din profil, dina konton, samlingar, projekt, team och andra organisationsartefakter på toppnivå. | ||
vso.profile_write |
Användarprofil (skriv) | Ger möjlighet att skriva till din profil. | vso.profile |
||
Variabelgrupper | vso.variablegroups_read |
Variabelgrupper (läs) | Ger behörighet att läsa variabelgrupper. | ||
vso.variablegroups_write |
Variabelgrupper (läsa, skapa) | Ger möjlighet att läsa och skapa variabelgrupper. | vso.variablegroups_read |
||
vso.variablegroups_manage |
Variabelgrupper (läsa, skapa och hantera) | Ja | Ger möjlighet att läsa, skapa och hantera variabelgrupper. | vso.variablegroups_write |
|
Wiki | vso.wiki |
Wiki (läs) | Ger möjlighet att läsa wikis, wiki-sidor och wiki-bifogade filer. Ger också möjlighet att söka på wiki-sidor. | ||
vso.wiki_write |
Wiki (läsa och skriva) | Ger möjlighet att läsa, skapa och uppdatera wikis, wiki-sidor och wikibilagor. | vso.wiki |
||
Arbetsobjekt | vso.work |
Arbetsobjekt (att läsa) | Ger möjlighet att läsa arbetsobjekt, frågor, tavlor, områdes- och iterationssökvägar och andra spårningsrelaterade metadata för arbetsobjekt. Ger även möjlighet att utföra sökfrågor, söka efter arbetsobjekt och ta emot meddelanden om arbetsobjekthändelser via webbhookar. | vso.hooks_write |
|
vso.work_write |
Arbetsuppgifter (läsa och skriva) | Ger möjlighet att läsa, skapa och uppdatera arbetsobjekt och queries, uppdatera tavla metadata, läsa områden och iterationssökvägar samt annan arbetsobjektspårning-relaterad metadata, köra queries och ta emot meddelanden om händelser för arbetsobjekt via service hooks. | vso.work |
||
vso.work_full |
Arbetsobjekt (fullständiga) | Ger fullständig åtkomst till arbetsobjekt, frågor, kvarvarande uppgifter, planer och spårningsmetadata för arbetsobjekt. Ger också möjlighet att ta emot notifikationer om arbetsobjekthändelser via tjänsteutlösare. | vso.work_write |
||
Personifiering av användare | user_impersonation |
Användarförklädnad | Ja | Ha fullständig åtkomst till REST-API:er för Visual Studio Team Services. Begär och/eller godkänn det här omfånget med försiktighet eftersom det är mycket kraftfullt! |
Du kan ändra omfånget för ett publicerat tillägg. Om du tidigare har installerat tillägget (och godkänt den tidigare uppsättningen omfång) auktoriserar du de nya omfången innan du kan uppgradera till den senaste versionen.
Avsnittet Åtgärd krävs i hubben för Tilläggsinställningar visar användaren om några installerade tillägg måste godkännas.
En administratör kan sedan granska och auktorisera den nya uppsättningen omfång:
Som namnet antyder definierar installationsmålen de produkter och tjänster där du kan installera tillägget.
Microsoft.VisualStudio.Services
är det vanligaste installationsmålet och anger att tillägget kan installeras i Azure DevOps.
Installationsmålen för ett tillägg eller en integrering anges via fältet targets
i manifestet.
Identifierare som stöds för tillägg:
-
Microsoft.VisualStudio.Services.Cloud
: installeras i Azure DevOps-tjänster -
Microsoft.TeamFoundation.Server
: installeras på Azure DevOps Server -
Microsoft.VisualStudio.Services
: installeras på båda. Genväg förMicrosoft.VisualStudio.Services.Cloud
ochMicrosoft.TeamFoundation.Server
version[14.2,)
Identifierare som stöds för integreringar:
-
Microsoft.VisualStudio.Services.Cloud.Integration
: integreras med Azure DevOps Services -
Microsoft.TeamFoundation.Server.Integration
: integreras med Azure DevOps Server -
Microsoft.VisualStudio.Services.Integration
: integreras med båda. Genväg förMicrosoft.VisualStudio.Services.Cloud.Integration
ochMicrosoft.TeamFoundation.Server.Integration
Mer information finns i Utökningspunkter.
{
"targets": [
{
"id": "Microsoft.VisualStudio.Services"
}
]
}
{
"targets": [
{
"id": "Microsoft.VisualStudio.Services.Cloud"
}
]
}
Installationsmål kan också användas i manifestet för integreringar. Till exempel produkter, appar eller verktyg som fungerar med, men som inte installeras i Azure DevOps.
{
"targets": [
{
"id": "Microsoft.VisualStudio.Services.Integration"
}
]
}
{
"targets": [
{
"id": "Microsoft.TeamFoundation.Server.Integration"
}
]
}
Vissa installationsmålidentifierare, till exempel Microsoft.TeamFoundation.Server
och Microsoft.TeamFoundation.Server.Integration
, stöder ett valfritt versionsintervall. Det här valfria versionsintervallet förtydligar ytterligare vilka versioner som stöds som tillägget eller integreringen stöds på.
Versions- eller versionsintervallet anges via fältet version
i installationsobjektet. Det här värdet kan vara antingen:
- En specifik version, till exempel:
15.0
(endast 2017 RTM) - Ett antal versioner som stöds, till exempel:
[14.0)
(2015 RTM och senare),[14.3,15.1]
(2015 uppdatering 3 till 2017 uppdatering 1). Intervallvärden förfinas med hjälp av:-
[
: lägsta version inklusive -
]
: högsta version inklusive -
(
: lägsta version exklusiv -
)
: exklusiv maxversion
-
Versionsnummer för Azure DevOps Server:
Frisläpp | Versioner | Version |
---|---|---|
2010 | Alla utgåvor | 10,0 |
2012 | Alla utgåvor | 11,0 |
2013 | RTM och uppdateringar | 12.0, 12.1, 12.2, 12.3, 12.4 |
2015 | RTM och uppdateringar | 14.0, 14.1, 14.2, 14.3 |
2017 | RTM och uppdateringar | 15.0, 15.1 |
2018 | RTM och uppdateringar | 16.0 |
2019 | RTM och uppdateringar | 17,0 |
2020 | RTM och uppdateringar | 18,0 |
{
"targets": [
{
"id": "Microsoft.VisualStudio.Services.Cloud"
},
{
"id": "Microsoft.TeamFoundation.Server",
"version": "[15.0,)"
}
]
}
Microsoft.VisualStudio.Services
är en genväg för Azure DevOps.
{
"targets": [
{
"id": "Microsoft.VisualStudio.Services"
}
]
}
motsvarar:
{
"targets": [
{
"id": "Microsoft.VisualStudio.Services.Cloud"
},
{
"id": "Microsoft.TeamFoundation.Server",
"version": "[14.2,)"
}
]
}
Installationsmål och krav används tillsammans för att ge användarna en korrekt vy över de produkter/tjänster som tillägget eller integreringen är kompatibel med. Om du till exempel anger ett installationsmål Microsoft.VisualStudio.Services
för med ett behov av api-version/3.0
innebär det att tillägget fungerar med Azure DevOps.
{
"targets": [
{
"id": "Microsoft.VisualStudio.Services"
}
],
"demands": [
"api-version/3.0"
]
}
Resulterar i följande installationsmål:
Microsoft.VisualStudio.Services.Cloud
-
Microsoft.TeamFoundation.Server
version:[15.0,)
{
"targets": [
{
"id": "Microsoft.VisualStudio.Services.Integration"
}
],
"demands": [
"api-version/2.0"
]
}
Löser följande installationsmål:
Microsoft.VisualStudio.Services.Cloud.Integration
-
Microsoft.TeamFoundation.Server.Integration
version:[14.0,)
Med krav kan du ange funktioner och andra funktioner som krävs i tillägget. Du kan använda dessa krav för att begränsa var tillägget kan publiceras eller installeras.
Krav används av Visual Studio Marketplace för att lista de produkter och miljöer som tillägget är kompatibelt med, vilket hjälper kunderna att förstå om ditt tillägg fungerar med deras version av Azure DevOps, till exempel.
Se följande exempel på hur krav anges i tilläggsmanifestet.
{
"demands": [
"api-version/3.0",
"contribution/ms.vss-dashboards-web.widget-catalog"
]
}
I det här exemplet kräver tillägget version 3.0 av API:erna, vilket innebär att det bara kan installeras i Azure DevOps. Det krävs också att ms.vss-dashboards-web
-tillägget (och dess widget-catalog
-bidrag) installeras (och aktiveras) i samlingen innan ditt tillägg kan installeras.
Typ | beskrivning | Har du kontrollerat vid publicering? | Har du kontrollerat vid installationen? |
---|---|---|---|
environment/cloud |
Kräver körning i en molnmiljö | Ja | Ja |
environment/onprem |
Kräver körning i en lokal miljö | Ja | Ja |
api-version/{version} |
Kräver en specifik API-version (minimum) | Nej | Ja |
extension/{id} |
Kräver att ett specifikt tillägg installeras/aktiveras | Nej | Ja |
contribution/{id} |
Kräver att ett specifikt bidrag är tillgängligt | Nej | Ja |
contributionType/{id} |
Kräver att en specifik bidragstyp är tillgänglig | Nej | Ja |
Anteckning
- Använd
environment/cloud
ochenvironment/onprem
endast när tillägget har topologirelaterade krav som kräver körning i just den miljön. -
extension
,contribution
, ochcontributionType
kraven utvärderas vid installationstillfället och kräver att det angivna tillägget redan har installerats och aktiverats i organisationen/samlingen.
I files
avsnittet refererar du till alla filer som du vill inkludera i tillägget. Du kan lägga till både mappar och enskilda filer:
{
"files": [
{
"path": "hello-world.html", "addressable": true
},
{
"path": "scripts", "addressable": true
},
{
"path": "images/logo.png", "addressable": true, "packagePath": "/"
}
]
}
Egenskaper för avsnittet Filer:
- path – Sökväg till resurs på disk, som kan vara relativ till din rotkatalog.
- addressable – (valfritt) Ange till true om du vill att filen ska vara URL-åtkomlig. Standardvärdet är falskt.
- packagePath – (valfritt) Sökväg till resursen i paketet. Standardvärdet är den relativa sökvägen från din rotkatalog på disken.
- contentType – (valfritt) MIME-typ av filen. Det förvalda värdet är den bästa gissningen baserat på filnamnstillägget och inställningarna för operativsystemet.
- assetType – (valfritt) Ange värdet för typattributet för tillgångsposten i VSIX-manifestet. Kan också vara en matris med strängar, i vilket fall flera tillgångsposter läggs till för den här filen. Standardvärdet är "packagePath".
- lang – (valfritt) Språk för den här tillgången. Lokaliserade filer hanteras baserat på rubriken Acceptera språk. Lämna tomt för att ange att den här filen är på standardspråket (eller reservspråket). Lokaliserade versioner av samma fil bör ha samma assetType.
Varje bidragspost har följande egenskaper:
- id – ett referens-ID (sträng) för bidraget. Gör varje bidrags-ID unikt i ett tillägg. Se referera till bidrag och typer.
- type – ID för contributionType för det här bidraget.
- description – (Valfritt) En sträng som beskriver vad bidraget ger.
- targets – en matris med bidrags-ID:t som bidraget riktar sig till (bidrar till). Se Inriktade bidrag.
- properties – (Valfritt) Ett objekt som innehåller egenskaper för bidraget enligt definitionen i bidragstypen.
Mer information finns i översikten över bidragsmodellen.
Varje bidragspost har följande egenskaper:
- id – ett referens-ID (sträng) för bidragstypen. Gör varje bidragstyps-ID unikt i ett tillägg. Se hänvisningar till bidrag och typer.
- name – Det vänliga namnet på bidragstypen.
- description – (Valfritt) En sträng som mer detaljerat beskriver vad bidragstypen är till för.
- properties – (Valfritt) En ordlista som mappar egenskapsnamn till egenskapsbeskrivningar. Dessa egenskaper beskriver de obligatoriska och valfria egenskaper som bidrag av den här typen kan använda.
Egenskapsbeskrivningar har följande egenskaper:
- description – (Valfritt) En sträng som beskriver vad egenskapen används till.
- required – (Valfritt) Ett booleskt värde, vilket om sant anger att egenskapen krävs för alla bidrag av den här typen.
- type – Den typ av värde som egenskapen kan ha, vilket kan vara sträng, uri, guid, boolesk, heltal, dubbel, dateTime, matris eller objekt.
Mer information finns i översikten över bidragsmodellen.
Använd unika identifierare för att referera till bidrags- och bidragstyper. Referera till typer med egenskapen type
och referera till andra bidrag med egenskapen targets
.
- En fullständig bidragsreferens innehåller utgivarens identifierare, tilläggsidentifierare och bidrags-/typidentifierare, avgränsade med en punkt (.). Till exempel är
ms.vss-web.hub
den fullständiga identifieraren för bidraget med identifieraren "hub" i "vss-web"-tillägget, publicerat av utgivaren "ms" (Microsoft). - Relativa bidragsreferenser kan användas i ett tilläggsmanifest för ett bidrags referens till en annan bidrags- eller bidragstyp inom samma tillägg. I det här fallet ingår inte utgivaren och tilläggsidentifierarna och identifieraren är en punkt (.) följt av bidragsidentifieraren. Till exempel kan ".hub" användas i tillägget "vss-web" som tidigare nämnts som en genväg för "ms.vss-web.hub".
Vissa bidrag fungerar som containrar som andra bidrag riktar in sig på.
- Hubbidrag kan rikta sig mot Hubbgrupper. När en sida återges visar webbgränssnittet alla hubbbidrag som riktar sig till den valda hubbgruppen. Hubbgrupper riktar sig till en hubbgruppsamling, som definierar en uppsättning hubbgrupper som visas i ett visst navigeringsområde, till exempel administratörssidor på projektnivå.
- Olika typer av bidrag kan rikta in sig på menyer: åtgärd, hyperlänkåtgärd och åtgärdsprovider. Åtgärder och hyperlänksåtgärder erbjuder enskilda menyalternativ. En åtgärdsprovider kan tillhandahålla flera dynamiska menyalternativ. För en viss meny aggregeras objekt över alla bidrag (av någon av dessa typer) som riktar sig mot det specifika menybidraget.
Information om hur du lägger till en ikon i hubben finns i vägledningen för ikonen till hubben.
Marketplace stöder endast märken från följande betrodda tjänster:
- api.travis-ci.org/
- badge.fury.io/
- badges.frapsoft.com/
- badges.gitter.im/
- badges.greenkeeper.io/
- cdn.travis-ci.org/
- ci.appveyor.com/
- codeclimate.com/
- codecov.io/
- coveralls.io/
- david-dm.org/
- gemnasium.com/
- img.shields.io/
- isitmaintained.com/
- marketplace.visualstudio.com/
- snyk.io/
- travis-ci.com/
- travis-ci.org/
- vsmarketplacebadges.dev/
- bithound.io/
- deepscan.io/
- githost.io/
- gitlab.com/
- opencollective.co/
Anteckning
Ersätt "vsmarketplacebadge.apphb.com" med "vsmarketplacebadges.dev".
Om du vill visa ett märke från en annan tjänst kontaktar du kundsupporten i utvecklarcommunityn.
Följande tillägg lägger till en åtgärd till snabbmenyn för slutförda byggen och en hubb till Bygg-hubbgruppen.
{
"manifestVersion": 1,
"id": "tools",
"version": "0.1.0",
"name": "Fabrikam Tools",
"publisher": "fabrikam",
"description": "Awesome tools to help you and your team do great things everyday.",
"targets": [
{
"id": "Microsoft.VisualStudio.Services"
}
],
"demands": [
"api-version/3.0"
],
"icons": {
"default": "images/fabrikam-logo.png"
},
"scopes": [
"vso.work",
"vso.code_write"
],
"categories": [
"Plan and track"
],
"tags": [
"working",
"people person",
"search"
],
"branding": {
"color": "rgb(34, 34, 34)",
"theme": "dark"
},
"screenshots": [
{
"path": "screenshots/screen1.png"
},
{
"path": "screenshots/screen2.png"
}
],
"content": {
"details": {
"path": "overview.md"
},
"license": {
"path": "eula.md"
}
},
"links": {
"home": {
"uri": "https://www.fabrikam-fiber-inc.com"
},
"getstarted": {
"uri": "https://www.fabrikam-fiber-inc.com/help/getstarted"
},
"learn": {
"uri": "https://www.fabrikam-fiber-inc.com/features"
},
"support": {
"uri": "https://www.fabrikam-fiber-inc.com/support"
},
"repository": {
"uri": "https://github.com/fabrikam-fiber-inc/tools"
},
"issues": {
"uri": "https://github.com/fabrikam-fiber-inc/tools/issues"
}
},
"repository": {
"type": "git",
"uri": "https://github.com/fabrikam-fiber-inc/myextension"
},
"badges": [
{
"href": "https://travis.ci/fabrikam-fiber-inc/myextension",
"uri": "https://travis.ci/fabrikam-fiber-inc/myextension.svg?branch=master",
"description": "TravisCI build for the project"
},
{
"href": "https://ci.appveyor.com/projects/fabrikam-fiber-inc/myextension",
"uri": "https://ci.appveyor.com/api/projects/status/vlg2sgs2y7tsdxpj4c?svg=true",
"description": "AppVeyor build for the project"
}
],
"contributions": [
{
"id": "showCommits",
"type": "ms.vss-web.action",
"description": "Adds a menu action from builds grid to show associated items.",
"targets": [
"ms.vss-build-web.completed-build-menu"
],
"properties": {
"title": "View associated items",
"uri": "launch.html"
}
}
]
}