Esegui l'esempio di GitHub pull request e di filtro webhook per CodeBuild - AWS CodeBuild

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Esegui l'esempio di GitHub pull request e di filtro webhook per CodeBuild

AWS CodeBuild supporta i webhook quando il repository di origine è. GitHub Ciò significa che per un progetto di CodeBuild compilazione il cui codice sorgente è archiviato in un GitHub repository, i webhook possono essere utilizzati per ricostruire il codice sorgente ogni volta che viene inserita una modifica al codice nel repository. Per alcuni esempi, consulta Samples. CodeBuild AWS CodeBuild

Nota

Quando si utilizzano i webhook, è possibile che un utente attivi una build inaspettata. Per mitigare questo rischio, consulta. Procedure consigliate per l'utilizzo dei webhook

Fase 1: Creare un progetto di compilazione con GitHub e abilitare i webhook

  1. Apri la AWS CodeBuild console su https://console.aws.amazon.com/codesuite/codebuild/home.

  2. Se viene visualizzata una pagina di CodeBuild informazioni, scegli Crea progetto di compilazione. Altrimenti, nel riquadro di navigazione, espandi Crea, scegli Crea progetti, quindi scegli Crea progetto di compilazione.

  3. Scegliere Create build project (Crea progetto di compilazione).

  4. In Project configuration (Configuratore progetto):

    Project name (Nome progetto)

    Inserisci un nome per questo progetto di compilazione. I nomi dei progetti di build devono essere univoci per ogni AWS account. Puoi anche includere una descrizione opzionale del progetto di compilazione per aiutare gli altri utenti a capire a cosa serve questo progetto.

  5. In Source (Origine):

    Fornitore di origine

    Scegli GitHub. Segui le istruzioni per connetterti (o riconnetterti) con GitHub , quindi scegli Autorizza.

    Repository

    Scegli Repository nel mio account. GitHub

    GitHub deposito

    Inserisci il campo URL per il tuo GitHub repository.

  6. In Primary source webhook events, seleziona quanto segue.

    Nota

    La sezione Primary source webhook events è visibile solo se hai scelto Repository nel mio GitHub account nel passaggio precedente.

    1. Al momento della creazione di un progetto, selezionare Rebuild every time a code change is pushed to this repository (Ricompila ogni volta che viene inviata una modifica del codice a questo repository).

    2. Da Event type (Tipo di evento), selezionare uno o più eventi.

    3. Per applicare un filtro che stabilisce quando un evento avvia una compilazione, in Start a build under these conditions (Avvia una compilazione in queste condizioni) aggiungere uno o più filtri facoltativi.

    4. Per applicare un filtro che stabilisce quando un evento non avvia una compilazione, in Don't start a build under these conditions (Non avviare una compilazione in queste condizioni) aggiungere uno o più filtri facoltativi.

    5. Scegli Aggiungi gruppo di filtri per aggiungere un altro gruppo di filtri, se necessario.

    Per ulteriori informazioni sui tipi di eventi e sui filtri dei GitHub webhook, consultaGitHub eventi webhook.

  7. In Environment (Ambiente):

    Immagine dell'ambiente

    Seleziona una delle seguenti opzioni:

    Per utilizzare un'immagine Docker gestita da AWS CodeBuild:

    Scegli Immagine gestita, quindi effettua le selezioni tra Sistema operativo, Runtime (s), Immagine e Versione dell'immagine. Se disponibile, eseguire una selezione da Environment type (Tipo ambiente).

    Per usare un'altra immagine Docker:

    Scegli Immagine personalizzata. Per Tipo di ambiente ARM, scegli LinuxGPU, Linux o Windows. Se scegli Altro registro, per Registro esterno URL, inserisci il nome e il tag dell'immagine Docker in Docker Hub, utilizzando il formato. docker repository/docker image name Se scegli Amazon ECR, utilizza il ECRrepository Amazon e ECRl'immagine Amazon per scegliere l'immagine Docker nel tuo AWS account.

    Per usare un'immagine Docker privata:

    Scegli Immagine personalizzata. Per Tipo di ambiente ARM, scegli LinuxGPU, Linux o Windows. Per Registro immagini, scegli Altro registro, quindi inserisci le ARN credenziali per l'immagine Docker privata. Le credenziali devono essere create da Secrets Manager. Per ulteriori informazioni, consulta What Is? AWS Secrets Manager nella Guida AWS Secrets Manager per l'utente.

    Ruolo di servizio

    Seleziona una delle seguenti opzioni:

    • Se non disponi di un ruolo CodeBuild di servizio, scegli Nuovo ruolo di servizio. In Nome ruolo, inserisci un nome per il nuovo ruolo.

    • Se hai un ruolo CodeBuild di servizio, scegli Ruolo di servizio esistente. In Ruolo ARN, scegli il ruolo di servizio.

    Nota

    Quando utilizzi la console per creare o aggiornare un progetto di build, puoi creare contemporaneamente un ruolo di CodeBuild servizio. Per impostazione predefinita, il ruolo funziona solo con tale progetto di compilazione. Se si utilizza la console per associare questo ruolo del servizio con un altro progetto di compilazione, il ruolo viene aggiornato per funzionare con l'altro progetto. Un ruolo del servizio può funzionare con un massimo di 10 progetti di compilazione.

  8. In Buildspec, esegui una delle seguenti operazioni:

    • Scegliete Usa un file buildspec per usare il file buildspec.yml nella directory principale del codice sorgente.

    • Scegli Inserisci comandi di compilazione per utilizzare la console per inserire i comandi di compilazione.

    Per ulteriori informazioni, consulta la Riferimento per buildspec.

  9. In Artifacts (Artefatti):

    Type

    Seleziona una delle seguenti opzioni:

    • Se non si desidera creare artefatti di output di compilazione, scegliere No artifacts (Nessun artefatto).

    • Per archiviare l'output della build in un bucket S3, scegli Amazon S3, quindi procedi come segue:

      • Se desideri utilizzare il nome del progetto per il ZIP file o la cartella di output della build, lascia vuoto il campo Nome. In caso contrario, digitare il nome. Per impostazione predefinita, il nome dell'artefatto è quello del progetto. Se si desidera utilizzare un nome diverso, immetterlo nella casella del nome degli artefatti. Se vuoi generare un ZIP file, includi l'estensione zip.

      • Per Bucket name (Nome bucket) selezionare il nome del bucket di output.

      • Se avete scelto Inserisci comandi di compilazione in precedenza in questa procedura, per i file di output, inserite le posizioni dei file della build che desiderate inserire nel ZIP file o nella cartella di output della build. Per più posizioni, separarne ognuna con una virgola (per esempio, appspec.yml, target/my-app.jar). Per ulteriori informazioni, consultare la descrizione di files in Sintassi buildspec.

    Configurazione aggiuntiva

    Espandere Additional configuration (Configurazione aggiuntiva) e impostare le opzioni come opportuno.

  10. Scegliere Create build project (Crea progetto di compilazione). Nella pagina Review (Verifica), selezionare Start build (Avvia compilazione) per eseguire la compilazione.

Passaggio 2: Verifica che i webhook siano abilitati

  1. Apri la AWS CodeBuild console su codebuild/homehttps://console.aws.amazon.com/codesuite/.

  2. Nel riquadro di navigazione, scegliere Build projects (Progetti di compilazione).

  3. Esegui una di queste operazioni:

    • Selezionare il collegamento del progetto di compilazione con i webhook da verificare, quindi selezionare Build details (Dettagli compilazione).

    • Scegli il pulsante accanto al progetto di compilazione con i webhook che desideri verificare, scegli Visualizza dettagli, quindi scegli la scheda Dettagli della build.

  4. In Primary source webhook events, scegli il link Webhook. URL

  5. Nel tuo GitHub repository, nella pagina Impostazioni, sotto Webhook, verifica che siano selezionate le Pull Requests e Push.

  6. Nelle impostazioni del tuo GitHub profilo, in Impostazioni personali, Applicazioni, OAuthApp autorizzate, dovresti vedere che l'applicazione è stata autorizzata ad accedere alla AWS regione selezionata.