Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Varje Azure Developer CLI-tillägg (azd) innehåller ett extension.yaml manifest som beskriver dess metadata och funktioner.
azd använder dessa metadata i tilläggsregistret för att hjälpa användare att identifiera, installera och förstå ditt tillägg. I den här artikeln beskrivs manifestegenskaperna med hjälp av exempeltillägget Contoso Resource Tagger från snabbstarten Skapa ett exempeltillägg. Du kan använda samma begrepp för alla tillägg.
Note
azd tillägg är för närvarande i betaversion.
Manifestegenskaper
Manifestet extension.yaml stöder följande egenskaper.
Nödvändiga egenskaper
Varje manifest måste innehålla följande egenskaper:
| Property | Description |
|---|---|
id |
Unik identifierare för tillägget, till exempel contoso.azd.tagger. |
version |
Semantisk version i MAJOR.MINOR.PATCH format. |
displayName |
Tilläggets namn i läsbar form. |
description |
Detaljerad beskrivning av tillägget. |
Varje manifest måste också innehålla antingen capabilities eller dependencies. Ett tillägg som tillhandahåller kommandon eller leverantörer deklarerar capabilities. Ett tilläggspaket deklarerar dependencies i stället.
Valfria egenskaper
Manifestet stöder även följande valfria egenskaper:
| Property | Description |
|---|---|
namespace |
Kommandonamnområde som grupperar tilläggets kommandon, till exempel tagger. |
entryPoint |
Körbar fil eller skript som fungerar som startpunkt. |
language |
Programmeringsspråket som tillägget är skrivet i, till exempel go. |
capabilities |
Uppsättning utökningsmöjligheter. |
usage |
Instruktioner för hur du använder tillägget. |
examples |
Matris med användningsexempel med namn, beskrivning och användning. |
tags |
Nyckelord för kategorisering och filtrering. |
dependencies |
Andra tillägg som det här tillägget är beroende av. |
providers |
Lista över leverantörer som tillägget registrerar. |
platforms |
Plattformsspecifika metadata. |
mcp |
Serverkonfiguration för Modellkontextprotokoll. |
requiredAzdVersion |
Semantisk versionsvillkor för den azd version som krävs för att använda tillägget, till exempel >= 1.24.0. |
Exempelmanifest
I följande exempel visas ett extension.yaml manifest för exempeltillägget Contoso Resource Tagger:
# yaml-language-server: $schema=https://raw.githubusercontent.com/Azure/azure-dev/refs/heads/main/cli/azd/extensions/extension.schema.json
id: contoso.azd.tagger
namespace: tagger
displayName: Contoso Resource Tagger
description: Standardize and report Azure resource tags for an azd project.
usage: azd tagger <command> [options]
version: 0.1.0
language: go
capabilities:
- custom-commands
examples:
- name: show
description: Displays a greeting from the extension.
usage: azd tagger show
tags:
- tags
- governance
- example
Kommentaren $schema överst i filen möjliggör validering och IntelliSense i redigeringsprogram som stöder YAML-språkservern.
Deklarera funktioner
Matrisen capabilities deklarerar vad tillägget kan göra.
azd beviljar motsvarande behörigheter under körning, och vissa tjänster i ramverket misslyckas på grund av ett behörighetsfel om motsvarande kapacitet inte deklareras. Exempeltillägget börjar med endast custom-commands:
capabilities:
- custom-commands
När du lägger till funktioner i de andra artiklarna lägger du till fler funktioner.
Lägg till exempel tilläggsfunktioner lägger till lifecycle-events, och Lägg till en MCP-server i ett tillägg lägger till mcp-server. De tillgängliga funktionerna är:
-
custom-commands: Lägg till nya kommandon iazdunder din namnrymd, till exempelazd tagger show. -
lifecycle-events: Kör anpassad logik närazdgenererar händelser sompreprovisionellerpostdeploy. -
mcp-server: Exponera verktyg för modellkontextprotokoll som AI-agenter kan anropa. -
service-target-provider: Lägg till ett anpassat distributionsmål för enhostsomazdinte stöder som standard. -
framework-service-provider: Lägg till bygg- och paketstöd för enlanguagesomazdinte känner igen som standard. -
provisioning-provider: Ersätt hurazdetablerar infrastruktur med en anpassad implementering. -
validation-provider: Lägg till kontroller som körs i valideringspipelinenazd. -
metadata: Ge mer omfattande kommando- och konfigurationsmetadata för hjälputdata och IntelliSense.
En mer fullständig förklaring av varje funktion med exempel finns i Lägga till tilläggsfunktioner.
Lägga till användningsexempel
Matrisen examples dokumenterar vanliga sätt att använda tillägget.
azd visar dessa exempel när användarna visar information om ditt tillägg:
examples:
- name: show
description: Displays a greeting from the extension.
usage: azd tagger show
Registrera providrar
När tillägget tillhandahåller anpassade tjänstmål eller ramverkstjänster deklarerar du dem i providers avsnittet så azd att du vet vad tillägget erbjuder:
providers:
- name: tagger
type: service-target
description: Deploys tagged resources to Azure.
Lägga till plattformsspecifik konfiguration
Använd egenskapen platforms för att tillhandahålla plattformsspecifika metadata, till exempel det körbara namnet för varje operativsystem.
platforms:
windows:
executable: tagger.exe
linux:
executable: tagger
darwin:
executable: tagger
Deklarera beroenden
Tillägg kan vara beroende av andra tillägg genom att använda arrayen dependencies. Beroenden stöder begränsningar för semantisk versionshantering:
dependencies:
- id: microsoft.azd.core
version: "^1.0.0"
azd installerar eller uppgraderar till den högsta publicerade versionen som uppfyller varje villkor. Vanliga villkorsformat är:
-
^1.0.0: Kompatibel med version 1.x.x. -
~1.2.0: Kompatibel med version 1.2.x. -
>=1.0.0 <2.0.0: Ett versionsintervall.
Gruppera tillägg med tilläggspaket
Ett tilläggspaket är ett manifest som grupperar relaterade tillägg så att användarna kan installera dem med ett enda kommando. Ett paket deklarerar dependencies men tillhandahåller inte en körbar fil, ett kommandonamnområde eller egna funktioner. Använd ett paket för att publicera en kuraterad uppsättning tillägg, till exempel en produktfamilj eller ett scenariopaket:
# yaml-language-server: $schema=https://raw.githubusercontent.com/Azure/azure-dev/refs/heads/main/cli/azd/extensions/extension.schema.json
id: contoso.tools
displayName: Contoso Tools Extension Pack
description: Installs the Contoso azd extensions.
version: 0.1.0
dependencies:
- id: contoso.azd.tagger
version: "~0.1.0"
När du installerar ett paket installeras rekursivt dess beroenden från samma tilläggskälla som paketet.