Configurare una pipeline CI/CD per il modello

Completato

Si è appreso come effettuare il provisioning e distribuire le risorse dell'app in Azure e come aggiornarle con nuove modifiche. Tuttavia, i flussi di lavoro precedenti si basavano sull'esecuzione di comandi manuali per l'applicazione di modifiche all'ambiente. Azure Developer CLI (azd) consente anche di automatizzare ulteriormente questo processo usando una pipeline di integrazione continua e recapito continuo (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 di azd include i file del flusso di lavoro CI/CD nella cartella .github per GitHub Actions o nella cartella .azdo per Azure Pipelines. Il modello di esempio usato in questo modulo si basa su GitHub Actions, ma il comando azd e il flusso di lavoro sono gli stessi indipendentemente dalla piattaforma CI/CD. 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. Selezionare GitHub.

  3. Se un'origine GitHub non è impostata per il progetto, azd chiederà come configurare il repository remoto. Selezionare l'opzione Create a new private GitHub repository (Crea un nuovo repository GitHub privato) e quindi immettere un nome per il nuovo repository. azd completerà automaticamente le attività seguenti:

    • Creazione di un repository GitHub e commit del codice del progetto.
    • Creazione e configurazione di un'entità servizio per l'app nella sottoscrizione di Azure.
    • Configurazione di una connessione sicura tra Azure e il repository con l'entità servizio e i segreti GitHub.
  4. azd chiederà anche se si vuole eseguire il commit e il push delle modifiche locali nella pipeline configurata. Immettere yes (sì) e attendere il completamento.

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

  6. 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.

    Screenshot che mostra un flusso di lavoro di GitHub Actions in esecuzione.

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