Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Nadat u een Azure Developer CLI-extensie (azd) hebt gemaakt, verpakt en publiceert u deze naar een register, zodat anderen deze kunnen installeren. In dit artikel leest u hoe u de voorbeeldextensie Contoso Resource Tagger publiceert vanuit de quickstart een voorbeeldextensie bouwen. U kunt dezelfde stappen toepassen op elke extensie.
Opmerking
Het azd extensieframework is algemeen beschikbaar. Afzonderlijke extensies of mogelijkheden hebben mogelijk hun eigen preview-status.
Een register kiezen
azd kan extensies uit het officiële register, aangepaste url-registermanifesten, op bestanden gebaseerde registermanifesten en draagbare bundelbestanden oplossen. Kies de distributiebenadering die overeenkomt met de manier waarop gebruikers uw extensie installeren:
-
Officieel register: het register dat met
azdwordt meegeleverd. Als u hier wilt publiceren, dient u een pull-aanvraag in bij een fork van de azure/azure-dev-opslagplaats. - Aangepast op URL gebaseerd register: een extern registermanifest dat door uw team wordt gehost voor openbare of persoonlijke distributie.
- Register op basis van bestanden: een lokaal registermanifest voor ontwikkeling, testen, offlinegebruik of privédistributie.
- Ontwikkelings- of nachtregister: een opt-in-register voor werk in uitvoering of automatisch ingebouwde extensies van derden. Extensies in het ontwikkelaarsregister zijn niet ondertekend, niet gedekt door ondersteuning voor Azure en kunnen zonder kennisgeving worden gewijzigd of verwijderd.
-
Draagbare bundel: een zelfstandig
.zippakket dat gebruikers rechtstreeks vanuit een lokaal pad of HTTPS-URL installeren zonder een registerbron toe te voegen.
In dit artikel wordt het ontwikkelingsregister gebruikt om publicatie naar een gedeelde testbron te demonstreren. Zie de naslaginformatie over het extensieframework voor meer informatie over de bron- en versieomzetting.
Prerequisites
- Een voltooide extensie uit de quickstart voor het bouwen van een voorbeeldextensie.
- De
azdextensie voor ontwikkelaars (microsoft.azd.extensions), die deazd xopdrachten biedt die worden gebruikt om te verpakken en te publiceren. Als u de quickstart hebt voltooid, is deze al geïnstalleerd. Voer anders het volgende uitazd extension install microsoft.azd.extensions. - Een GitHub-account en een opslagplaats voor het hosten van de releaseartefacten.
- Een persoonlijk toegangstoken (PAT) van GitHub met de
reposcope. De releaseopdracht gebruikt dit token om GitHub releases te maken en artefacten te uploaden. Zie Uw persoonlijke toegangstokens beheren voor meer informatie.
De versie en het wijzigingenlogboek bijwerken
Voordat u publiceert, moet u de versie bijwerken en uw wijzigingen documenteren:
Werk de eigenschap
versioninextension.yamlbij volgens semantische versionering. Verhoog het primaire, secundaire of patchnummer op basis van het type wijziging.Werk
CHANGELOG.mdbij met de belangrijke wijzigingen voor deze versie.azdmaakt gebruik van het wijzigingenlogboek om opmerkingen bij de release te genereren.
De extensie verpakken
Gebruik de azd x pack opdracht om platformspecifieke binaire bestanden te bouwen en de extensie te verpakken:
azd x pack
Met de opdracht worden artefacten gemaakt voor elk ondersteund platform in uw uitvoermap.
azd x release uploadt deze artefacten en azd x publish werkt de metagegevens van het register bij. In de verpakking worden ook momentopnametests uitgevoerd om te controleren of de extensie zich gedraagt zoals verwacht voordat u publiceert.
Als u een extensie rechtstreeks wilt distribueren in plaats van deze te publiceren via een register, maakt u een zelfstandige bundel met azd x pack --bundle. De bundel is een draagbare .zip die de registermetagegevens en artefacten bevat die nodig zijn voor installatie vanuit een bestandspad of HTTPS-URL.
De extensie vrijgeven
Gebruik de azd x release opdracht om een GitHub release te maken en de verpakte artefacten te uploaden. Geef uw GitHub PAT op zodat de opdracht de release kan maken:
azd x release
Met de opdracht maakt u een release in uw GitHub opslagplaats, uploadt u de verpakte binaire bestanden en genereert u releaseopmerkingen uit uw wijzigingenlogboek. Publiceren op basis van een register maakt gebruik van deze releaseartefacten als downloadbare extensiepakketten. Voor directe bundeldistributie is deze releasestap niet vereist, tenzij u de bundel in GitHub wilt hosten.
Tip
Sla uw GitHub PAT op in een omgevingsvariabele in plaats van deze door te geven op de opdrachtregel. Bekijk de helppagina van de opdracht door azd x release --help uit te voeren voor de ondersteunde authenticatieopties.
Publiceren naar het register
Gebruik de opdracht om de azd x publish vermelding van uw extensie toe te voegen of bij te werken in het extensieregister:
azd x publish
Met de opdracht worden de metagegevens van het register bijgewerkt, zodat gebruikers uw extensie kunnen detecteren en installeren vanuit het ontwikkelingsregister. Deze stap verschilt van de lokale publicatie die azd x init in de quickstart uitvoert, waarbij de extensie alleen in een lokale bron op uw machine wordt geregistreerd. Door azd x publish uit te voeren, werkt u het gedeelde ontwikkelregister bij, zodat andere gebruikers uw extensie kunnen installeren.
Installeren en verifiëren
Nadat u de extensie hebt gepubliceerd, controleert u of anderen uw extensie kunnen installeren vanuit het ontwikkelingsregister:
Zorg ervoor dat u het ontwikkelingsregister al hebt toegevoegd.
azd extension source add -n dev -t url -l "https://aka.ms/azd/extensions/registry/dev"Installeer de extensie op basis van de id.
azd extension install contoso.azd.taggerVoer een opdracht uit om te bevestigen dat de extensie werkt.
azd tagger show
Publiceren naar het officiële register
Als u naar het officiële register wilt publiceren, dient u uw extensie in bij de opslagplaats azure/azure-dev:
- Fork de opslagplaats azure/azure-dev.
- Voeg de registervermelding van uw extensie toe aan het officiële registerbestand in uw fork.
- Dien een pull request in voor beoordeling.
Het Azure Developer CLI-team controleert officiële registerinzendingen voor kwaliteit en beveiliging voordat ze worden samengevoegd.
Problemen met publiceren oplossen
De volgende tabel bevat veelvoorkomende publicatieproblemen en de bijbehorende oplossingen:
| Issue | Resolutie / Besluit |
|---|---|
| Release mislukt met een verificatiefout | Controleer of uw GitHub PAT geldig is en het repo bereik heeft. |
Momentopnametests mislukken tijdens azd x pack |
Controleer de testuitvoer, werk uw momentopnamen bij als de wijzigingen worden verwacht en voer de opdracht opnieuw uit. |
| Gebruikers kunnen uw extensie niet vinden | Controleer of het ontwikkelregister is toegevoegd en of azd x publish succesvol is voltooid. |
| Versieconflict tijdens publicatie | Verhoog de version in extension.yaml naar een nieuwe, ongebruikte versie. |