Extensies gebruiken en beheren met de Azure CLI

De Azure CLI biedt de mogelijkheid om extensies te laden. Extensies voor de Azure CLI worden gekenmerkt als Python-wielen die niet worden geleverd als onderdeel van de CLI, maar worden uitgevoerd als CLI-opdrachten. Met extensies krijgt u toegang tot experimentele en voorlopige opdrachten, samen met de mogelijkheid om uw eigen CLI-interfaces te schrijven. In dit artikel wordt uitgelegd hoe u extensies kunt beheren en worden antwoorden op veelgestelde vragen over het gebruik ervan gegeven.

Extensies zoeken

Als u de Azure CLI-extensies wilt zien die door Microsoft worden geleverd en onderhouden, gebruikt u de opdracht az extension list-available .

az extension list-available --output table

Op de documentatiesite bieden we ook een lijst met extensies.

Extensies installeren

Extensies handmatig installeren

Wanneer u een extensie hebt gevonden die u wilt installeren, gebruikt u az extension add om de extensie te downloaden. Als de extensie wordt weergegeven in az extension list-available, kunt u de extensie installeren aan de hand van de naam.

az extension add --name <extension-name>

Als de extensie van een externe bron komt of u over een directe koppeling beschikt, kunt u de bron-URL of het lokale pad opgeven. De extensie moet een gecompileerd Python-wheel-bestand zijn.

az extension add --source <URL-or-path>

U kunt ook een persoonlijke extensie-index maken volgens de indeling in index.json en vervolgens de URL van de extensie-index die door Azure CLI wordt gebruikt, instellen op deze vanaf versie 2.20.0. Daarna kunt u de extensie op naam installeren vanuit de index van de persoonlijke extensie.

az config set extension.index_url=<URL>
az extension add --name <extension-name>

Wanneer een uitbreiding is geïnstalleerd, is deze te vinden onder de waarde van de shell-variabele $AZURE_EXTENSION_DIR. Als deze variabele niet is ingesteld, is de standaardwaarde in Linux en MacOS $HOME/.azure/cliextensions en in Windows %USERPROFILE%\.azure\cliextensions.

Extensies automatisch installeren

Wanneer u een extensieopdracht uitvoert die niet is geïnstalleerd, kan de Azure CLI de opdracht die u uitvoert herkennen en de extensie automatisch installeren vanaf versie 2.10.0. Deze functie, ook wel dynamische installatie genoemd, is standaard ingeschakeld sinds 2.12.0. U kunt het ook inschakelen via configuratie voor eerdere ondersteunde versies.

az config set extension.use_dynamic_install=yes_prompt

Gebruik de volgende configuratieopdracht om dynamische installatie zonder prompt in te schakelen.

az config set extension.use_dynamic_install=yes_without_prompt

Gebruik de volgende configuratieopdracht om de functie voor dynamische installatie uit te schakelen om terug te keren naar het standaardgedrag. De extensieopdracht retourneert een opdracht-niet-gevonden-fout als de extensie niet is geïnstalleerd.

az config set extension.use_dynamic_install=no

Standaard blijft een extensieopdracht waarmee dynamische installatie wordt gevraagd, worden uitgevoerd nadat de extensie is geïnstalleerd. U kunt het standaardgedrag wijzigen en de opdracht afsluiten zonder opnieuw uit te voeren door de run_after_dynamic_install eigenschap in te stellen op no.

az config set extension.run_after_dynamic_install=no

Extensies bijwerken

Als u een extensie op naam installeert, werkt u deze bij met az extension update.

az extension update --name <extension-name>

Zo niet, dan kan de extensie worden bijgewerkt vanuit de bron door de instructies in Extensies installeren te volgen.

Als u CLI niet kunt gebruiken om een extensienaam op te lossen, verwijdert u deze en probeert u deze opnieuw te installeren. De extensie kan ook onderdeel van de basis-CLI zijn geworden. Werk de CLI bij zoals wordt beschreven in De Azure CLI installeren en controleer of de opdrachten van de extensie zijn toegevoegd.

Extensies verwijderen

Als u een extensie niet meer nodig hebt, verwijder deze dan met behulp van az extension remove.

az extension remove --name <extension-name>

U kunt een extensie ook handmatig verwijderen, door deze te verwijderen van de locatie waar deze is geïnstalleerd. De shell-variabele $AZURE_EXTENSION_DIR definieert waar de modules zijn geïnstalleerd. Als deze variabele niet is ingesteld, is de standaardwaarde in Linux en MacOS $HOME/.azure/cliextensions en in Windows %USERPROFILE%\.azure\cliextensions.

rm -rf $AZURE_EXTENSION_DIR/<extension-name>

Veelgestelde vragen

Hier vindt u nog enkele antwoorden op andere veelgestelde vragen over CLI-extensies.

Welke bestandsformaten zijn toegestaan voor installatie?

Op dit moment kunnen alleen gecompileerde Python-wheel-bestanden als extensie worden geïnstalleerd.

Kunnen extensies bestaande opdrachten vervangen?

Ja. Extensies kunnen bestaande opdrachten vervangen, maar voordat een opdracht wordt uitgevoerd die is vervangen, geeft de CLI een waarschuwing.

Hoe weet ik of een extensie in voorlopige versie is?

De documentatie en versiebeheer van een extensie laten zien of deze in voorlopige versie is. Microsoft brengt regelmatig preview-opdrachten uit als CLI-extensies, met de optie ze later te verplaatsen naar het CLI-hoofdproduct. Wanneer opdrachten uit extensies worden gehaald, moet de oude extensie worden verwijderd.

Kunnen extensies van elkaar afhankelijk zijn?

Nee. Omdat de CLI geen garantie voor een laadvolgorde biedt, wordt er mogelijk geen rekening gehouden met afhankelijkheden. Het verwijderen van een extensie heeft geen invloed op andere extensies.

Worden extensies tegelijkertijd met de CLI bijgewerkt?

Nee. Extensies moeten afzonderlijk worden bijgewerkt zoals wordt beschreven in Extensies bijwerken.

Hoe ontwikkel je onze eigen extensie?

Raadpleeg de officiële opslagplaats voor meer hulp. Azure/azure-cli-extensions