Interfaccia della riga di comando per sviluppatori di Azure e ambienti di distribuzione di Azure
Questo articolo illustra l'interfaccia della riga di comando per sviluppatori di Azure (azd
) e come funziona con Gli ambienti di distribuzione di Azure per semplificare il processo di provisioning dell'infrastruttura dell'applicazione e la distribuzione del codice dell'applicazione nella nuova infrastruttura.
azd
è uno strumento da riga di comando open source che fornisce comandi descrittivi per gli sviluppatori che eseguono il mapping alle fasi principali del flusso di lavoro. È possibile installare azd
localmente nel computer o usarlo in altri ambienti.
Con Ade è possibile creare ambienti da una definizione di ambiente in un catalogo collegato al dev center o usando il modello di estendibilità DIE per eseguire le distribuzioni.
azd
Aggiungendo , è possibile semplificare il processo di provisioning dell'infrastruttura e la distribuzione del codice nel cloud.
Come funziona azd
con ADE?
azd
funziona con ADE per consentire di creare ambienti da cui si lavora.
Con ADE e azd
, i singoli sviluppatori che lavorano con un'infrastruttura e un codice univoci che vogliono caricare nel cloud possono creare un ambiente da una cartella locale. Possono usare azd
per effettuare il provisioning di un ambiente e distribuirne facilmente il codice.
Su larga scala, l'uso di ADE e azd
insieme consente di fornire agli sviluppatori un modo per creare l'infrastruttura e il codice delle app. Il team può creare più ambienti ADE dalla stessa definizione di ambiente compatibile azd
e effettuare il provisioning del codice nel cloud in modo coerente.
Informazioni sui modelli azd
I comandi di Azure Developer CLI sono progettati per funzionare con modelli standardizzati. Ogni modello è un repository di codice che aderisce a specifiche convenzioni di file e cartelle. I modelli contengono gli asset azd
necessari per effettuare il provisioning di un ambiente di distribuzione di Azure. Quando si esegue un comando come azd up
, lo strumento usa gli asset del modello per eseguire vari passaggi del flusso di lavoro, ad esempio il provisioning o la distribuzione di risorse in Azure.
Il diagramma seguente mostra una struttura modello tipica:
├── infra [ Contains infrastructure as code files ]
├── .azdo [ Configures an Azure Pipeline ]
├── .devcontainer [ For DevContainer ]
├── .github [ Configures a GitHub workflow ]
├── .vscode [ VS Code workspace configurations ]
├── .azure [ Stores Azure configurations and environment variables ]
├── src [ Contains all of the deployable app source code ]
└── azure.yaml [ Describes the app and type of Azure resources]
Tutti i modelli azd
includono gli asset seguenti:
Cartella infra: la cartella infra non viene usata in
azd
con ADE. Contiene tutte le infrastrutture Bicep o Terraform come file di codice per ilazd
modello. ADE fornisce l'infrastruttura come file di codice per il modelloazd
. Non è necessario includere questi file nel modelloazd
.file azure.yaml: file di configurazione che definisce uno o più servizi nel progetto e ne esegue il mapping alle risorse di Azure per la distribuzione. Ad esempio, è possibile definire un servizio API e un servizio front-end Web, ognuno con attributi che li associano a risorse diverse di Azure per la distribuzione.
Cartella .azure: contiene le configurazioni e le variabili di ambiente di Azure essenziali, ad esempio il percorso per distribuire le risorse o altre informazioni sulla sottoscrizione.
Cartella src: contiene tutto il codice sorgente dell'app distribuibile. Alcuni modelli
azd
forniscono solo asset di infrastruttura e lasciano vuota la directory src per aggiungere il codice dell'applicazione.
La maggior parte dei modelli azd
include anche una o più delle cartelle seguenti:
Cartella .devcontainer: consente di configurare un ambiente contenitore di sviluppo per l'applicazione. Questo approccio comune all'ambiente di sviluppo non specifico di
azd
.Cartella .github: contiene i file del flusso di lavoro CI/CD per GitHub Actions, ovvero il provider CI/CD predefinito per
azd
.Cartella azdo: se si decide di usare Azure Pipelines per CI/CD, definire i file di configurazione del flusso di lavoro in questa cartella.
azd
cataloghi compatibili
I cataloghi degli ambienti di distribuzione di Azure sono costituiti da definizioni di ambiente: modelli IaC che definiscono le risorse dell'infrastruttura di cui viene effettuato il provisioning per un ambiente di distribuzione. Azure Developer CLI usa le definizioni di ambiente nel catalogo collegato al Dev Center per effettuare il provisioning di nuovi ambienti.
L'interfaccia della riga di comando per sviluppatori di Azure funziona con i modelli di Azure Resource Manager archiviati nel catalogo di Dev Center ambienti di distribuzione di Azure. Supporta anche altri modelli IaC, ad esempio Bicep e Terraform tramite il modello di estendibilità DIE. Per informazioni su come configurare il modello di estendibilità di ADE, vedere Modello di estendibilità degli ambienti di distribuzione di Azure.
Per supportare correttamente determinati servizi di Calcolo di Azure, Azure Developer CLI richiede più impostazioni di configurazione nel modello IaC. Ad esempio, è necessario contrassegnare gli host del servizio app con informazioni specifiche in modo che azd
sappia come trovare gli host e distribuirli.
È possibile visualizzare un elenco dei servizi di Azure supportati qui: Servizi di calcolo di Azure supportati (host).
Rendere il catalogo di ADE compatibile con azd
Per consentire ai team di sviluppo di usare azd
con ADE, è necessario creare una definizione di ambiente nel catalogo compatibile con azd
. È possibile creare una nuova azd
definizione di ambiente compatibile oppure usare una definizione di ambiente esistente dal catalogo Dev Center degli Ambienti di distribuzione di Azure. Se si sceglie di usare una definizione di ambiente esistente, è necessario apportare alcune modifiche per renderla compatibile con azd
.
Le modifiche includono:
- Se si modifica un modello esistente
azd
, rimuovere la cartellainfra
. ADE usa i file seguenti per creare l'infrastruttura:- Modello di ARM (azuredeploy.json)
- File di configurazione che definisce i parametri (environment.yaml o manifest.yaml)
- Contrassegnare le risorse in azure.yaml con informazioni specifiche in modo che
azd
sappia come trovare gli host e distribuirli.- Informazioni sull'Assegnazione di tag alle risorse per gli ambienti di distribuzione di Azure.
- Informazioni sullo schema azure.yaml di Azure Developer CLI.
Per altre informazioni su come rendere compatibile la definizione dell'ambiente ADE con azd
, vedere Rendere il progetto compatibile con Azure Developer CLI.
Abilitare il supporto azd
in ADE
Per abilitare il supporto azd
con ADE, è necessario impostare platform.type
su devcenter. Questa configurazione consente di azd
usare nuovi componenti di Dev Center per lo stato e il provisioning dell'ambiente remoto e significa che la cartella infra nei modelli viene ignorata. Usa invece azd
uno dei modelli di infrastruttura definiti nel catalogo di Dev Center per il provisioning delle risorse.
Per abilitare il supporto azd
, eseguire il comando seguente:
azd config set platform.type devcenter
Esplorare i comandi azd
Quando la funzionalità dev Center è abilitata, il comportamento predefinito di alcuni comandi comuni azd
cambia per funzionare con questi ambienti remoti. Per altre informazioni, vedere Usare ambienti di distribuzione di Azure.