Configurare la pipeline CI/CD

Completato

È stato creato un modello ed è stato effettuato il provisioning delle relative risorse in Azure. Tuttavia, i flussi di lavoro precedenti si basavano su comandi manuali per l'applicazione di modifiche all'ambiente. Il modello iniziale fornisce anche i file di configurazione per automatizzare ulteriormente questo processo usando una pipeline CI/CD con GitHub Actions o Azure Pipelines. Configurando una pipeline CI/CD, è possibile aggiornare automaticamente l'ambiente di Azure con le modifiche più recenti semplicemente eseguendone il commit e il push in GitHub.

Configurare la pipeline

La maggior parte dei modelli azd include i file del flusso di lavoro CI/CD nella cartella .github per GitHub Actions o nella cartella .azdo per Azure Pipelines (o per entrambi). Il modello di esempio creato in questo modulo è stato inizializzato con entrambi. Questi file del flusso di lavoro usano una struttura standard per le rispettive piattaforme, quindi un'esplorazione approfondita delle configurazioni del flusso di lavoro CI/CD esula dall'ambito di questo modulo. Tuttavia, non è necessario conoscere in modo approfondito GitHub Actions o Azure Pipelines per completare questo modulo, poiché azd astrae gran parte del lavoro dietro semplici comandi che usano i file di configurazione del flusso di lavoro.

Il comando azd e il flusso di lavoro per configurare una pipeline CI/CD sono gli stessi indipendentemente dal fatto che si scelga GitHub Actions o Azure Pipelines. Per poter configurare CI/CD, è necessario un repository GitHub. È possibile creare il nuovo repository eseguendo una copia tramite fork del repository modello azd originale e impostandolo come repository remoto oppure usando azd durante il processo di configurazione della pipeline, che è l'approccio che verrà usato in questo esempio.

Completare i passaggi seguenti per configurare una pipeline CI/CD per il modello:

  1. Da un prompt dei comandi nella directory radice del progetto eseguire il comando seguente:

    azd pipeline config
    
  2. Se un'origine GitHub non è impostata per il progetto, azd chiede come configurare il repository remoto. Selezionare l'opzione Crea un nuovo repository GitHub privato e quindi immettere un nome per il nuovo repository. azd completa le attività seguenti:

    • Crea un repository GitHub e vi esegue il commit del codice del progetto.
    • Creazione e configurazione di un'entità servizio per l'app nella sottoscrizione di Azure.
    • Configura una connessione sicura tra Azure e il repository usando l'entità servizio e i segreti GitHub.
  3. azd chiede anche se si vuole eseguire il commit e il push delle modifiche locali nella pipeline configurata. Immettere e attendere il completamento.

  4. Selezionare l'URL di output nella console per aprire una scheda del browser nel nuovo repository GitHub.

  5. Passare alla scheda Actions (Azioni) per trovare un flusso di lavoro in esecuzione che esegue l'autenticazione, la creazione del pacchetto, il provisioning e la distribuzione del codice. Il flusso di lavoro usa gli stessi comandi azd auth login, azd provision e azd deploy usati in precedenza. È possibile esplorare i dettagli di questo flusso di lavoro nella cartella .github del progetto.

    A screenshot showing a GitHub actions workflow running.

Dopo aver configurato la pipeline, è possibile aggiornare continuamente l'ambiente di Azure e l'app distribuita eseguendo il push delle modifiche del codice in GitHub. È anche possibile continuare a eseguire i comandi azd in locale come nei passaggi precedenti.