Automatizza le build utilizzando Cloud Build

Questa pagina spiega come utilizzare Cloud Build per automatizzare le build.

Cloud Build utilizza i trigger di build per abilitare le automazioni CI/CD. Puoi configurare gli attivatori in modo che ascoltino gli eventi in arrivo, ad esempio quando viene eseguito il push di un nuovo commit in un repository o quando viene avviata una richiesta pull, quindi invocare automaticamente una compilazione quando arrivano nuovi eventi.

Creerai un trigger e lo configurerai per richiamare una build in qualsiasi momento esegui il push di una modifica in un repository GitHub.


Per seguire una guida passo passo per questa attività direttamente nel Editor di Cloud Shell, fai clic su Procedura guidata:

Procedura guidata


Prima di iniziare

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Cloud Build API.

    Enable the API

  5. Install the Google Cloud CLI.
  6. To initialize the gcloud CLI, run the following command:

    gcloud init
  7. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  8. Make sure that billing is enabled for your Google Cloud project.

  9. Enable the Cloud Build API.

    Enable the API

  10. Install the Google Cloud CLI.
  11. To initialize the gcloud CLI, run the following command:

    gcloud init
  12. Se non ne hai già uno, crea un account su GitHub.

  13. Se hai configurato l'autenticazione a due fattori su GitHub, crea un token di accesso personale da usare al posto di una password GitHub con la riga di comando.

Crea un fork e clona un repository GitHub di esempio

Per la compilazione, avrai bisogno di un codice sorgente di esempio. In questa sezione, clonerai un repository di origine esistente contenente un esempio di Hello World in Vai al tuo account utente GitHub.
  1. Se non ne hai già uno, crea un account su GitHub.

  2. Se hai configurato l'autenticazione a due fattori su GitHub, crea un token di accesso personale da usare al posto di una password GitHub con la riga di comando.

  3. Crea un fork del repository cloud-build-samples nel tuo account GitHub:

    1. Vai al repository cloud-build-samples di Cloud Build.

    2. Fai clic sull'icona Fork nell'angolo in alto a destra della pagina.

    3. Fai clic sull'account utente GitHub in cui vuoi creare un fork del repository.

      Verrà visualizzata automaticamente la pagina con la tua versione del repository cloud-build-samples creata mediante fork.

  4. Apri un terminale nel tuo ambiente locale.

  5. Per clonare il repository creato mediante fork, esegui il comando riportato di seguito, dove GITHUB_USERNAME è il nome utente per il tuo account GitHub:

    git clone https://github.com/GITHUB_USERNAME/cloud-build-samples.git

Connetti Cloud Build al repository

Per creare codice sorgente su GitHub utilizzando i trigger, devi prima connetterti Cloud Build nel repository GitHub. In questa sezione, collegherai il repository cloud-build-samples a Cloud Build.
  1. Nel menu di navigazione della console Google Cloud, fai clic su Cloud Build > Trigger.

    Apri la pagina Trigger

  2. Seleziona il progetto e fai clic su Apri.

  3. Fai clic su Connetti repository.

  4. In Seleziona origine, seleziona GitHub (App GitHub di Cloud Build).

  5. Fai clic su Continua.

  6. Autentica il tuo account GitHub.

  7. Nella sezione Seleziona repository, seleziona il nome utente del tuo account GitHub. Se il tuo nome utente non è presente nell'elenco:

    1. Nell'elenco Account GitHub, fai clic su +Aggiungi.

      Verrà visualizzato un popup per installare l'app GitHub di Cloud Build.

    2. Fai clic sul tuo nome utente GitHub.

    3. Fai clic su Solo determinati repository per installare l'app GitHub di Cloud Build su repository specifici.

    4. Nel menu a discesa, seleziona GITHUB_USERNAME/cloud-build-samples, dove GITHUB_USERNAME corrisponde al nome utente del tuo account GitHub.

    5. Fai clic su Installa.

      È possibile che ti venga richiesto di inserire la password associata al tuo account GitHub per procedere.

    6. Dopo l'installazione dell'app GitHub di Cloud Build, potrai visualizzare il tuo nome utente nel menu a discesa del campo Account GitHub. Seleziona il tuo nome utente.

  8. In Repository, seleziona GITHUB_USERNAME/cloud-build-samples come tuo repository.

  9. Fai clic sul segno di spunta per accettare i termini e le condizioni per la connessione del trigger.

  10. Fai clic su Connetti.

  11. Fai clic su Fine.

Creerai un trigger nella sezione successiva.

Crea un trigger

  1. Apri la pagina Trigger nella console Google Cloud:

    Apri la pagina Trigger

  2. Seleziona il tuo progetto dal menu a discesa del selettore di progetti nella parte superiore della pagina.

  3. Fai clic su Apri.

  4. Nella pagina Trigger, fai clic su Crea trigger.

  5. Nella pagina Crea trigger, inserisci le seguenti impostazioni:

    • Nome: inserisci hello-world-trigger come nome del trigger.

    • Evento: seleziona Push al ramo come evento del repository per richiamare il trigger.

    • Origine: seleziona come origine il repository cloud-build-samples, contenente il codice sorgente e il file di configurazione della build.

    • Configurazione build: scegli File di configurazione Cloud Build come file di configurazione della build.

    • Posizione file di configurazione Cloud Build: specifica il percorso quickstart-automate/cloudbuild.yaml per il file di configurazione di Cloud Build.

  6. Fai clic su Crea per salvare il trigger di build.

Esegui il commit di una modifica

In questa sezione, eseguirai il commit di una modifica al repository cloud-build-samples cloned nel tuo account GitHub.

  1. Nel terminale, vai alla directory quickstart-automate:

    cd cloud-build-samples/quickstart-automate
  2. Apri il file main.go e aggiorna la riga contenente "Hello, world!" in "Hello, universe!"

      package main
    
      import (
          "fmt"
      )
    
      func main() {
          fmt.Println("Hello, universe!")
      }
      
  3. Controlla cloudbuild.yaml, ovvero il file di configurazione della build utilizzato da Cloud Build. Quando una build viene richiamata con un trigger, il passaggio di build in questo file indica a Cloud Build di utilizzare l'immagine golang di Docker Hub per creare ed eseguire il file main.go.

       steps:
       - name: golang
         script: go run quickstart-automate/main.go
       
  4. Torna alla directory radice del repository:

       cd ..
  5. Per effettuare il commit delle modifiche in GitHub, esegui questi comandi:

        
        git add quickstart-automate/main.go
        git commit -m "update text"
        git push

    È possibile che ti venga richiesto di inserire le credenziali quando esegui il push del codice nel repository. Se richiesto, inserisci il tuo nome utente e la password o un token di autenticazione.

Hai eseguito il push di una modifica nel repository. In questo modo, il trigger genererà una build automatica.

Visualizza dettagli build

In questa sezione vengono visualizzati i dettagli della build associata alla build invocata dopo aver eseguito il commit di una modifica.
  1. Nel menu di navigazione di Google Cloud Console, fai clic su Cloud Build > Cronologia.

    Apri la pagina Cloud Build

  2. Seleziona il progetto e fai clic su Apri.

    Verrà visualizzata la pagina Cronologia build:

    Screenshot della pagina della cronologia delle build per Automate

  3. Nella colonna Build, fai clic sul nome di una build.

  4. Nella pagina Dettagli build, fai clic su Artefatti build.

    Verrà visualizzato un output simile al seguente:

    Screenshot degli artefatti della build

  5. Per visualizzare il log della build, fai clic sull'icona di download e visualizza il file scaricato.

Hai richiamato correttamente una build di Cloud Build usando un trigger e hai visualizzato i dettagli della build.

Esegui la pulizia

Per evitare che al tuo account Google Cloud vengano addebitati costi per le risorse utilizzate in questa pagina, segui questi passaggi.

  1. Nel menu di navigazione della console Google Cloud, fai clic su Cloud Build > Trigger.

    Apri la pagina Trigger

  2. Seleziona il progetto e fai clic su Apri.

  3. Nella riga hello-world-trigger, fai clic sul menu Azioni (i tre punti verticali), posizionato all'estremità destra della riga.

  4. Seleziona Elimina.

Hai eliminato il trigger associato al tuo repository clonato.

Passaggi successivi