Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
L'interfaccia della riga di comando di Azure consente di caricare estensioni. Le estensioni per l'interfaccia della riga di comando di Azure sono caratterizzate da ruote Python che non vengono fornite come parte dell'interfaccia della riga di comando, ma vengono eseguite come comandi dell'interfaccia della riga di comando. Con le estensioni è possibile accedere ai comandi sperimentali e preliminari, oltre alla possibilità di scrivere interfacce a riga di comando personalizzate. Questo articolo illustra come gestire le estensioni e risponde a domande comuni relative al loro uso.
Come trovare le estensioni
Per visualizzare le estensioni dell'interfaccia della riga di comando di Azure fornite e gestite da Microsoft, usare il comando az extension list-available .
az extension list-available --output table
L'elenco delle estensioni è anche disponibile nel sito della documentazione.
Come installare le estensioni
Installare le estensioni manualmente
Una volta trovata un'estensione da installare, usare az extension add per ottenerla. Se l'estensione è elencata in az extension list-available
, è possibile installarla tramite il nome.
az extension add --name <extension-name>
Se l'estensione proviene da una risorsa esterna o se è disponibile un collegamento diretto a essa, indicare l'URL di origine o il percorso locale. L'estensione deve essere un file wheel di Python compilato.
az extension add --source <URL-or-path>
È anche possibile compilare un indice di estensione privato seguendo il formato in index.json, quindi impostare l'URL dell'indice dell'estensione usato dall'interfaccia della riga di comando di Azure a partire dalla versione 2.20.0
. Successivamente, è possibile installare l'estensione per nome dall'indice delle estensioni private.
az config set extension.index_url=<URL>
az extension add --name <extension-name>
Dopo aver installato un'estensione, questa viene visualizzata nel valore della variabile della shell $AZURE_EXTENSION_DIR
. Se questa variabile non è impostata, per impostazione predefinita il valore è $HOME/.azure/cliextensions
su Linux e macOS e %USERPROFILE%\.azure\cliextensions
in Windows.
Installare le estensioni automaticamente
Quando si esegue un comando di estensione non installato, l'interfaccia della riga di comando di Azure può riconoscere il comando eseguito e installare automaticamente l'estensione a partire dalla versione 2.10.0
. Questa funzionalità, denominata dynamic install, è abilitata per impostazione predefinita dall'epoca 2.12.0
. È anche possibile abilitarlo tramite la configurazione per le versioni supportate precedenti.
az config set extension.use_dynamic_install=yes_prompt
Usare il comando di configurazione seguente per abilitare l'installazione dinamica senza richiesta.
az config set extension.use_dynamic_install=yes_without_prompt
Usare il comando di configurazione seguente per disattivare la funzionalità di installazione dinamica ripristinando il comportamento predefinito. Il comando di estensione restituisce un errore di comando non trovato se l'estensione non è installata.
az config set extension.use_dynamic_install=no
Per impostazione predefinita, un comando di estensione che richiede l'installazione dinamica continuerà a essere eseguito dopo l'installazione dell'estensione. È possibile modificare il comportamento predefinito e impostare la run_after_dynamic_install
proprietà su no
.
az config set extension.run_after_dynamic_install=no
Come aggiornare le estensioni
Se si installa un'estensione per nome, aggiornarla usando az extension update.
az extension update --name <extension-name>
In caso contrario, è possibile aggiornare l'estensione dall'origine seguendo le istruzioni riportate in Installare le estensioni.
Se non è possibile usare l'interfaccia della riga di comando per risolvere un nome di estensione, disinstallarlo e tentare di reinstallarlo. È anche possibile che l'estensione sia diventata parte dell'interfaccia della riga di comando di base. Provare ad aggiornare l'interfaccia della riga di comando come descritto in Installare l'interfaccia della riga di comando di Azure e verificare se i comandi dell'estensione sono stati aggiunti.
Come disinstallare le estensioni
Se un'estensione non è più necessaria, rimuoverla con az extension remove.
az extension remove --name <extension-name>
È anche possibile rimuovere manualmente l'estensione eliminandola dalla posizione in cui è stata installata. La variabile della shell $AZURE_EXTENSION_DIR
definisce dove vengono installati i moduli.
Se questa variabile non è impostata, per impostazione predefinita il valore è $HOME/.azure/cliextensions
su Linux e macOS e %USERPROFILE%\.azure\cliextensions
in Windows.
rm -rf $AZURE_EXTENSION_DIR/<extension-name>
Domande frequenti
Di seguito sono fornite alcune risposte ad altre domande comuni sulle estensioni dell'interfaccia della riga di comando.
Quali sono i formati di file per cui è consentita l'installazione?
Al momento è possibile installare come estensioni solo i file wheel di Python compilati.
Le estensioni possono sostituire i comandi esistenti?
Sì. Le estensioni possono sostituire i comandi esistenti, ma prima di eseguire un comando che è stato sostituito dall'interfaccia della riga di comando genera un avviso.
Come è possibile stabilire se un'estensione è in versione non definitiva?
La documentazione e il controllo delle versioni di un'estensione indicano se è in versione preliminare. Microsoft rilascia spesso comandi in anteprima come estensioni dell'interfaccia della riga di comando, con l'opzione di trasferirli nel prodotto principale dell'interfaccia della riga di comando in un secondo momento. Quando i comandi vengono trasferiti all'esterno delle estensioni, l'estensione precedente deve essere disinstallata.
Le estensioni possono dipendere l'una dall'altra?
No. Dato che l'interfaccia della riga di comando non garantisce un ordine di caricamento, è possibile che le dipendenze non vengano soddisfatte. La rimozione di un'estensione non influisce su altri utenti.
Le estensioni vengono aggiornate insieme al CLI?
No. Le estensioni devono essere aggiornate separatamente, come descritto in Aggiornare le estensioni.
Come è possibile sviluppare un'estensione personalizzata?
Consulta il repository ufficiale per ulteriore aiuto. Azure/azure-cli-extensions