Tutorial: usa il clone completo con una sorgente di CodeCommit 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 CodeCommit pipeline

Puoi scegliere l'opzione di clonazione completa per la tua azione di CodeCommit origine in. CodePipeline Usa questa opzione per consentire l'accesso CodeBuild ai metadati Git nell'azione di creazione della pipeline.

In questo tutorial, crei una pipeline che accede al tuo CodeCommit repository, utilizza l'opzione full clone per i dati di origine ed esegue una CodeBuild build che clona il tuo repository ed esegue comandi Git per il repository.

Nota

CodeBuild le azioni sono le uniche azioni a valle che supportano l'uso dei metadati Git disponibili con l'opzione Git clone. Inoltre, sebbene la pipeline possa contenere azioni tra più account, l' CodeCommitazione e l' CodeBuild azione devono trovarsi nello stesso account affinché l'opzione di clonazione completa abbia successo.

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

Prerequisiti

Prima di iniziare, devi creare un CodeCommit repository nello stesso account e nella stessa regione della pipeline. AWS

Passaggio 1: creare un file README

Segui questi passaggi per aggiungere un README file al tuo repository di origine. Il README file fornisce un file sorgente di esempio da leggere per l'azione a CodeBuild valle.

Per aggiungere un file README
  1. Accedi al tuo repository e scegli il tuo repository.

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

    This is a CodeCommit 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 un'azione CodeCommit di origine.

  • 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 MyCodeCommitPipeline.

  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), procedere in uno dei seguenti modi:

    • Scegli Existing service role (Ruolo di servizio esistente).

    • Scegliete il vostro ruolo di CodePipeline servizio esistente. Questo ruolo deve avere l'codecommit:GetRepositoryIAMautorizzazione alla tua politica relativa al ruolo di servizio. Vedi Aggiungere autorizzazioni al ruolo di CodePipeline servizio.

  6. In Impostazioni avanzate non modificare le impostazioni predefinite. Scegli Next (Successivo).

  7. Nella pagina Passaggio 2: Aggiungi fase di origine, procedi come segue:

    1. In Source provider (Provider origine), scegliere CodeCommit.

    2. In Nome archivio, scegli il nome del tuo repository.

    3. In Nome del ramo, scegli il nome del tuo ramo.

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

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

    Scegli Next (Successivo).

  8. Nella fase Aggiungi compilazione, procedi come segue:

    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 CodeBuild di 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, quindi in Comandi di creazione incolla il codice seguente.

      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 describe --all #post_build: #commands: # - command # - command #artifacts: #files: # - location #name: $(date +%Y-%m-%d) #discard-paths: yes #base-directory: location #cache: #paths: # - paths
    8. Scegli Continua a CodePipeline. Questo ti riporta 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 Servizio AWS 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).

Fase 3: Aggiornare la policy del ruolo CodeBuild di servizio per clonare il repository

L'esecuzione iniziale della pipeline avrà esito negativo perché è necessario aggiornare il ruolo di CodeBuild servizio con le autorizzazioni per l'estrazione dal repository.

Aggiungi l'codecommit:GitPullIAMautorizzazione alla tua politica sul ruolo di servizio. Per istruzioni su come aggiornare la policy nella IAM console, consultaAggiungi CodeBuild GitClone le autorizzazioni per le azioni CodeCommit di origine.

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

Per visualizzare l'output della build
  1. Quando il ruolo di servizio viene aggiornato correttamente, scegli Riprova nella CodeBuild fase non riuscita.

  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 ed eseguono. git describe --all