Tutorial: usa il clone completo con una sorgente di GitHub pipeline - AWS CodePipeline

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

Tutorial: usa il clone completo con una sorgente di GitHub pipeline

Puoi scegliere l'opzione di clonazione completa per la tua azione di GitHub origine in. CodePipeline Usa questa opzione per eseguire CodeBuild comandi per i metadati Git nell'azione di creazione della pipeline.

Importante

Come parte della creazione di una pipeline, per gli artefatti verrà utilizzato un bucket di artefatti S3 fornito dal cliente. CodePipeline (Questo è diverso dal bucket utilizzato per un'azione sorgente S3.) Se il bucket di artefatti S3 si trova in un account diverso da quello della pipeline, assicurati che il bucket di artefatti S3 sia di proprietà di utenti sicuri e affidabili. Account AWS

In questo tutorial, creerai una pipeline che si connette al tuo GitHub repository, utilizza l'opzione full clone per i dati di origine ed CodeBuild eseguirai una build che clona il tuo repository ed esegue comandi Git per il repository.

Nota

Questa funzionalità non è disponibile nelle regioni di Asia Pacifico (Hong Kong), Africa (Città del Capo), Medio Oriente (Bahrein), Europa (Zurigo) o (Stati Uniti occidentali). AWS GovCloud Per fare riferimento ad altre azioni disponibili, consulta. Integrazioni di prodotti e servizi con CodePipeline Per considerazioni su questa azione nella regione Europa (Milano), si veda la nota inCodeStarSourceConnection per Bitbucket Cloud, GitHub Enterprise Server GitHub, GitLab .com e GitLab azioni autogestite.

Prerequisiti

Prima di iniziare è necessario:

  • Crea un GitHub repository con il tuo GitHub account.

  • Tieni a portata di mano GitHub le tue credenziali. Quando utilizzi il AWS Management Console per configurare una connessione, ti viene chiesto di accedere con GitHub le tue credenziali.

Fase 1: Creare un file README

Dopo aver creato il GitHub repository, segui questi passaggi per aggiungere un README file.

  1. Accedi al tuo GitHub repository e scegli il tuo repository.

  2. Per creare un nuovo file, scegli Aggiungi file > Crea nuovo file. Assegna un nome al fileREADME.md. file e aggiungi il testo seguente.

    This is a GitHub repository!
  3. Scegliere Commit changes (Applica modifiche).

    Assicurati che il file README.md si trovi al livello root del repository.

Fase 2: Crea la tua pipeline e crea il progetto

In questa sezione, andrai a creare una pipeline con le operazioni seguenti:

  • Una fase di origine con una connessione al GitHub repository e all'azione.

  • Una fase di compilazione con un'azione di AWS CodeBuild compilazione.

Per creare una pipeline con la procedura guidata
  1. Accedi alla CodePipeline console all'indirizzo https://console.aws.amazon.com/codepipeline/.

  2. Nella pagina Welcome (Benvenuto), pagina Getting started (Nozioni di base) o pagina Pipelines (Pipeline), scegli Create pipeline (Crea pipeline).

  3. In Step 1: Choose pipeline settings (Fase 1: scelta delle impostazioni della pipeline), in Pipeline name (Nome pipeline), immettere MyGitHubPipeline.

  4. Nel tipo di pipeline, scegli V1 ai fini di questo tutorial. Puoi anche scegliere V2; tuttavia, tieni presente che i tipi di tubazione differiscono per caratteristiche e prezzo. Per ulteriori informazioni, consulta Tipi di tubazioni.

  5. In Service Role (Ruolo del servizio), scegliere New service role (Nuovo ruolo del servizio).

    Nota

    Se invece scegli di utilizzare il tuo ruolo di CodePipeline servizio esistente, assicurati di aver aggiunto l'codeconnections:UseConnectionIAMautorizzazione alla tua politica relativa al ruolo di servizio. Per istruzioni sul ruolo CodePipeline di servizio, consulta Aggiungere autorizzazioni al ruolo CodePipeline di servizio.

  6. In Impostazioni avanzate non modificare le impostazioni predefinite. In Artifact store (Archivio artefatti), seleziona Default location (Posizione predefinita) per utilizzare l'archivio artefatti predefinito, ad esempio il bucket Amazon S3 dedicato agli artefatti designato come predefinito, per la pipeline nella regione selezionata.

    Nota

    Non si tratta del bucket di origine per il codice sorgente, ma dell'archivio artefatti per la pipeline. È richiesto un archivio artefatti separato, ad esempio un bucket S3, per ogni pipeline.

    Seleziona Next (Successivo).

  7. Nella Fase 2: Aggiungi una fase di origine, aggiungi una fase di origine:

    1. In Provider di origine, scegli GitHub (versione 2).

    2. In Connessione, scegli una connessione esistente o creane una nuova. Per creare o gestire una connessione per l'azione GitHub sorgente, consultaGitHub connessioni.

    3. In Nome archivio, scegli il nome del tuo GitHub repository.

    4. In Nome del ramo, scegli il ramo del repository che desideri utilizzare.

    5. Assicurati che l'opzione Avvia la pipeline alla modifica del codice sorgente sia selezionata.

    6. In Formato artefatto di output, scegli Clone completo per abilitare l'opzione Git clone per il repository di origine. Solo le azioni fornite da CodeBuild possono utilizzare l'opzione Git clone. Passaggio 3: Aggiornare la politica del ruolo CodeBuild di servizio per utilizzare le connessioniIn questo tutorial utilizzerai questa opzione per aggiornare le autorizzazioni per il tuo ruolo di CodeBuild project service.

    Scegli Next (Successivo).

  8. In Add build stage (Aggiungi fase di compilazione), aggiungi una fase di compilazione:

    1. In Build provider (Provider compilazione), scegli AWS CodeBuild. Consenti a Region (Regione) di preimpostarsi sulla regione della pipeline.

    2. Seleziona Crea progetto.

    3. In Project name (Nome progetto) immettere un nome per questo progetto di compilazione.

    4. In Environment image (Immagine ambiente), scegli Managed image (Immagine gestita). In Operating system (Sistema operativo), seleziona Ubuntu.

    5. In Runtime, seleziona Standard. Per Immagine, scegli aws/codebuild/standard:5.0.

    6. Per Service Role (Ruolo del servizio), scegli New service role (Nuovo ruolo del servizio).

      Nota

      Annota il nome del tuo ruolo di CodeBuild servizio. Avrai bisogno del nome del ruolo per l'ultimo passaggio di questo tutorial.

    7. In Buildspec, per Build specifications (Specifiche di compilazione), scegli Insert build commands (Inserisci comandi di compilazione). Scegli Passa all'editor e incolla quanto segue nei comandi di creazione.

      Nota

      Nella env sezione delle specifiche di compilazione, assicurati che l'helper delle credenziali per i comandi git sia abilitato come mostrato in questo esempio.

      version: 0.2 env: git-credential-helper: yes phases: install: #If you use the Ubuntu standard image 2.0 or later, you must specify runtime-versions. #If you specify runtime-versions and use an image other than Ubuntu standard image 2.0, the build fails. runtime-versions: nodejs: 12 # name: version #commands: # - command # - command pre_build: commands: - ls -lt - cat README.md build: commands: - git log | head -100 - git status - ls - git archive --format=zip HEAD > application.zip #post_build: #commands: # - command # - command artifacts: files: - application.zip # - location #name: $(date +%Y-%m-%d) #discard-paths: yes #base-directory: location #cache: #paths: # - paths
    8. Scegli Continua a. CodePipeline Questo ritorna alla CodePipeline console e crea un CodeBuild progetto che utilizza i comandi di build per la configurazione. Il progetto di compilazione utilizza un ruolo di servizio per gestire le AWS servizio autorizzazioni. Questa operazione potrebbe richiedere un paio di minuti.

    9. Seleziona Next (Successivo).

  9. Nella pagina Step 4: Add deploy stage (Fase 4: aggiunta della fase di distribuzione), scegli Skip deploy stage (Ignora fase di distribuzione), quindi accetta il messaggio di avviso scegliendo Skip (Ignora). Seleziona Next (Successivo).

  10. Nella Step 5: Review (Fase 5: revisione), scegliere Create pipeline (Crea pipeline).

Passaggio 3: Aggiornare la politica del ruolo CodeBuild di servizio per utilizzare le connessioni

L'esecuzione iniziale della pipeline avrà esito negativo perché il ruolo CodeBuild di servizio deve essere aggiornato con le autorizzazioni per utilizzare le connessioni. Aggiungi l'codeconnections:UseConnectionIAMautorizzazione alla tua politica del ruolo di servizio. Per istruzioni su come aggiornare la policy nella IAM console, consultaAggiungi le autorizzazioni per le connessioni a Bitbucket, Enterprise Server o.com CodeBuild GitClone GitHub GitHub GitLab.

Passaggio 4: Visualizza i comandi del repository nell'output della build

  1. Quando il ruolo di servizio viene aggiornato correttamente, scegli Riprova nella fase non riuscita CodeBuild .

  2. Dopo che la pipeline è stata eseguita correttamente, nella fase di compilazione corretta, scegli Visualizza dettagli.

    Nella pagina dei dettagli, scegli la scheda Registri. Visualizza l'output della CodeBuild build. I comandi restituiscono il valore della variabile inserita.

    I comandi generano il contenuto del README.md file, elencano i file nella directory, clonano il repository, visualizzano il registro e archiviano il repository come file. ZIP