Funzionamento di Azure Developer CLI

Completato

Azure Developer CLI (azd) si basa su comandi intuitivi per gli sviluppatori e su modelli di applicazione fondamentali. azd fornisce un set di comandi che consentono di eseguire l'onboarding dell'applicazione e di gestirla in Azure usando modelli di progetto standardizzati. Questi modelli includono tutto il codice sorgente e gli asset di configurazione necessari per il provisioning e la distribuzione dell'app in Azure. È possibile iniziare a usare azd lavorando su uno dei modelli di esempio esistenti ed estendibili oppure creandone uno.

Esplorare i comandi azd

Azure Developer CLI include un set di comandi facilmente accessibili che corrispondono alle fasi più comuni del flusso di lavoro di sviluppo, come il provisioning e la distribuzione delle risorse. Alcuni comandi azd, come azd up, gestiscono anche più fasi contemporaneamente per semplificare ulteriormente queste attività.

Ad esempio, un flusso di lavoro azd tipico che usa un modello esistente include i passaggi seguenti:

  1. Eseguire il comando azd init con il parametro --template per clonare un modello esistente e impostare un nome di ambiente quando richiesto.

    azd init --template todo-nodejs-mongo
    
  2. Eseguire il comando azd auth login per accedere alla sottoscrizione di Azure.

    azd auth login
    
  3. Eseguire il comando azd up per effettuare il provisioning e distribuire le risorse del modello in Azure.

    azd up
    
  4. Dopo aver configurato l'ambiente in Azure, è possibile modificare in locale le funzionalità dell'applicazione o i modelli di risorse di Azure e quindi eseguire azd up di nuovo per effettuare il provisioning delle modifiche.

Sono disponibili altri comandi azd per completare altre attività ed espandere questo flusso di lavoro. azd è stato progettato per avere un numero minimo di comandi con pochi parametri per una maggiore facilità d'uso. Alcuni dei comandi di azd più comuni da usare includono:

  • azd init: inizializza una nuova applicazione.
  • azd up: effettua il provisioning delle risorse di Azure e distribuisce il progetto con un singolo comando.
  • azd provision: effettua il provisioning delle risorse di Azure per un'applicazione.
  • azd deploy: distribuisce il codice dell'applicazione in Azure.
  • azd pipeline: (beta) gestisce e configura le pipeline di distribuzione.
  • azd auth: esegue l'autenticazione con Azure.
  • azd config: gestisce le configurazioni azd, ad esempio, sottoscrizione di Azure predefinita, località.
  • azd down: elimina le risorse di Azure per un'applicazione.

Esplorare i modelli azd

I comandi di Azure Developer CLI sono stati progettati per funzionare con modelli di progetto standardizzati. Ogni modello è un repository di codice che aderisce a specifiche convenzioni di file e cartelle. I modelli contengono gli asset di cui azd ha bisogno per il provisioning delle risorse di Azure e, facoltativamente, per la distribuzione del codice sorgente dell'applicazione. Alcuni modelli potrebbero non includere il codice sorgente dell'applicazione, presumendo che l'utente aggiunga il proprio. Quando si esegue un comando, ad esempio azd up, lo strumento usa gli asset del modello di progetto per eseguire vari passaggi del flusso di lavoro, ad esempio il provisioning o la distribuzione delle risorse in Azure.

Sono due gli approcci principali per lavorare con i modelli azd:

  • Estendere un modello azdesistente: esiste già un'ampia libreria di modelli azd per coprire gli stack di applicazioni locali, gli scenari e le architetture più comuni. È possibile esplorare molti dei modelli sul sito modelli di raccolta awesome-azd. Se si trova un modello che corrisponde allo stack di applicazioni locale o all'architettura desiderata, è possibile utilizzarlo come punto di partenza. Quindi, sostituire la directory del codice sorgente e modificare i file di configurazione o di infrastruttura in base alle esigenze.

  • Convertire l'app in un modello azd: è anche possibile convertire un'app esistente in un azd template seguendo la guida Rendere il progetto compatibile con azd. La creazione di un modello personalizzato è spesso più laboriosa all'inizio, ma consente il massimo controllo e produce una soluzione riutilizzabile per lo sviluppo futuro dell'app. I passaggi fondamentali per creare il modello sono i seguenti:

    • Inizializzare il modello di progetto con azd init.

    • Creare l'infrastruttura come file di codice usando Bicep o Terraform.

    • Aggiornare il file azure.yaml per collegare i servizi app con le risorse di Azure.

    • Effettuare il provisioning e la distribuzione con azd up.

      A diagram showing the Azure Developer CLI template creation workflow.

Indipendentemente dall'approccio scelto, la struttura del modello risultante è la stessa. Tutti i modelli azd includono gli asset seguenti:

  • Cartella infra: contiene tutta l'infrastruttura di Bicep o Terraform come file di codice per il modello azd. L'infrastruttura come codice consente di definire le risorse e le configurazioni dell'infrastruttura nei file di definizione dichiarativa che generano in modo affidabile gli stessi ambienti ogni volta che vengono distribuiti. Terraform funziona su più piattaforme cloud, mentre Bicep è specifico di Azure. azd esegue questi file per creare le risorse di Azure necessarie per ospitare l'app. Per altre informazioni sull'infrastruttura come codice, vedere il modulo di formazione Che cos'è l'infrastruttura come codice?

  • File azure.yaml: file di configurazione che definisce uno o più servizi nel progetto e li associa 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 essenziali di Azure, ad esempio la posizione in cui distribuire le risorse o altre informazioni sulla sottoscrizione.

  • src folder: contiene tutto il codice sorgente dell'app distribuibile. Alcuni modelli azd forniscono solo gli asset dell'infrastruttura e lasciano vuota la directory src in modo che l'utente possa aggiungere il proprio codice dell'applicazione.

    A screenshot showing the Azure Developer CLI template structure.

La maggior parte dei modelli azd include anche una o più delle cartelle seguenti:

  • Cartella .devcontainer: consente di configurare un ambiente Dev Container per l'applicazione. Un approccio comune all'ambiente di sviluppo non specifico di azd.
  • Cartella .github: contiene i file del flusso di lavoro CI/CD per GitHub Actions, 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.