View a markdown version of this page

Tutorial: Caricare artefatti su Amazon S3 - Amazon CodeCatalyst

Amazon non CodeCatalyst è più aperto a nuovi clienti. I clienti esistenti possono continuare a utilizzare il servizio normalmente. Per ulteriori informazioni, consulta Come migrare da CodeCatalyst.

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: Caricare artefatti su Amazon S3

In questo tutorial, imparerai come caricare artefatti in un bucket Amazon S3 utilizzando un CodeCatalyst flusso di lavoro Amazon che include un paio di azioni di compilazione. Azioni Queste azioni vengono eseguite in serie all'avvio del flusso di lavoro. La prima azione di compilazione genera due file Hello.txt e Goodbye.txt li raggruppa in un artefatto di compilazione. La seconda azione di compilazione carica l'artefatto su Amazon S3. Configurerai il flusso di lavoro in modo che venga eseguito ogni volta che invii un commit al tuo repository di origine.

Prerequisiti

Prima di iniziare, avrai bisogno di:

  • Hai bisogno di uno CodeCatalyst spazio con un AWS account connesso. Per ulteriori informazioni, consulta Creazione di uno spazio.

  • Nel tuo spazio, hai bisogno di un progetto vuoto chiamato:

    codecatalyst-artifact-project

    Usa l'opzione Inizia da zero per creare questo progetto.

    Per ulteriori informazioni, consulta Creare un progetto vuoto in Amazon CodeCatalyst.

  • Nel tuo progetto, hai bisogno di un CodeCatalyst ambiente chiamato:

    codecatalyst-artifact-environment

    Configura questo ambiente come segue:

    • Scegli qualsiasi tipo, ad esempio Sviluppo.

    • Collega il tuo AWS account ad esso.

    • Per il ruolo IAM predefinito, scegli un ruolo qualsiasi. Specificherai un ruolo diverso in seguito.

    Per ulteriori informazioni, consulta Implementazione in Account AWS e VPC.

Fase 1: Creare un AWS role

In questo passaggio, crei un ruolo AWS IAM che successivamente assegnerai all'azione di compilazione nel tuo flusso di lavoro. Questo ruolo concede all'azione di CodeCatalyst compilazione l'autorizzazione ad accedere al tuo AWS account e scrivere su Amazon S3 dove verrà archiviato il tuo artefatto. Il ruolo è chiamato ruolo Build.

Nota

Se hai già un ruolo di compilazione che hai creato per un altro tutorial, puoi usarlo anche per questo tutorial. Assicurati solo che abbia le autorizzazioni e la politica di fiducia mostrate nella procedura seguente.

Per ulteriori informazioni sui ruoli IAM, consulta i ruoli IAM nella Guida per l'AWS AWS Identity and Access Management utente.

Per creare un ruolo di compilazione
  1. Crea una policy per il ruolo, come segue:

    1. Accedi a AWS.

    2. Aprire la console IAM all'indirizzo https://console.aws.amazon.com/iam/.

    3. Nel riquadro di navigazione, scegli Policy.

    4. Scegli Create Policy (Crea policy).

    5. Scegliere la scheda JSON.

    6. Elimina il codice esistente.

    7. Incolla il codice seguente:

      JSON
      { "Version":"2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:ListBucket" ], "Resource": "*" } ] }
      Nota

      La prima volta che il ruolo viene utilizzato per eseguire azioni del flusso di lavoro, utilizza il carattere jolly nella dichiarazione sulla politica delle risorse e quindi riduci l'ambito della politica con il nome della risorsa dopo che sarà disponibile.

      "Resource": "*"
    8. Scegliere Next: Tags (Successivo: Tag).

    9. Scegliere Next:Review (Successivo: Rivedi).

    10. Nel Nome, inserisci:

      codecatalyst-s3-build-policy
    11. Scegli Crea policy.

      Ora hai creato una politica di autorizzazioni.

  2. Crea il ruolo di compilazione, come segue:

    1. Nel pannello di navigazione, scegli Ruoli e quindi Crea ruolo.

    2. Scegli Politica di fiducia personalizzata.

    3. Elimina la politica di fiducia personalizzata esistente.

    4. Aggiungi la seguente politica di fiducia personalizzata:

    5. Scegli Avanti.

    6. In Criteri di autorizzazione, cerca codecatalyst-s3-build-policy e seleziona la relativa casella di controllo.

    7. Scegli Avanti.

    8. Per Nome del ruolo, inserisci:

      codecatalyst-s3-build-role
    9. Per la descrizione del ruolo, inserisci:

      CodeCatalyst build role
    10. Scegliere Crea ruolo.

    Ora hai creato un ruolo di compilazione con una politica di fiducia e una politica di autorizzazioni.

Passaggio 2: crea un bucket Amazon S3

In questo passaggio, crei un bucket Amazon S3 in cui verranno caricati gli Goodbye.txt artefatti Hello.txt e gli artefatti.

Come creare un bucket Amazon S3.
  1. Apri la console Amazon S3 all'indirizzo. https://console.aws.amazon.com/s3/

  2. Nel riquadro principale, scegli Crea bucket.

  3. Per il nome del bucket, inserisci:

    codecatalyst-artifact-bucket
  4. In AWS Region (Regione), scegliere una Regione. Questo tutorial presuppone che tu abbia scelto US West (Oregon) us-west-2. Per informazioni sulle regioni supportate da Amazon S3, consulta gli endpoint e le quote di Amazon Simple Storage Service nel. Riferimenti generali di AWS

  5. Nella parte inferiore della pagina, scegli Crea bucket.

  6. Copia il nome del bucket che hai appena creato, ad esempio:

    codecatalyst-artifact-bucket

Ora hai creato un bucket chiamato codecatalyst-artifact-bucket nella regione US West (Oregon) us-west-2.

Fase 3: Creare un repository di sorgenti

In questo passaggio, crei un repository di origine in. CodeCatalyst Questo repository viene utilizzato per archiviare il file di definizione del flusso di lavoro del tutorial.

Per ulteriori informazioni sui repository di origine, vedere. Creazione di un repository di sorgenti

Per creare un repository di origine
  1. Apri la CodeCatalyst console all'indirizzo. https://codecatalyst.aws/

  2. Vai al tuo progetto,codecatalyst-artifact-project.

  3. Nel riquadro di navigazione, scegli Codice, quindi scegli Source repositories.

  4. Scegli Aggiungi repository, quindi scegli Crea repository.

  5. Nel nome del repository, inserisci:

    codecatalyst-artifact-source-repository
  6. Scegli Crea.

Ora hai creato un repository chiamato. codecatalyst-artifact-source-repository

Fase 4: Creare un flusso di lavoro

In questo passaggio, si crea un flusso di lavoro costituito dai seguenti elementi costitutivi eseguiti in sequenza:

  • Un trigger: questo trigger avvia l'esecuzione automatica del flusso di lavoro quando si invia una modifica al repository di origine. Per ulteriori informazioni sui trigger, consulta. L'avvio di un flusso di lavoro viene eseguito automaticamente utilizzando i trigger

  • Un'azione di compilazione chiamataGenerateFiles: Al trigger, l'GenerateFilesazione crea due file Hello.txt e li Goodbye.txt impacchetta in un elemento di output chiamato. codecatalystArtifact

  • Un'altra azione di compilazione chiamataUpload: Al termine dell'GenerateFilesazione, l'Uploadazione esegue il AWS CLI comando aws s3 sync per caricare i file presenti nel codecatalystArtifact repository di origine nel bucket Amazon S3. AWS CLI Viene fornito preinstallato e preconfigurato sulla piattaforma di CodeCatalyst elaborazione, quindi non è necessario installarlo o configurarlo.

    Per ulteriori informazioni sul software preconfezionato sulla piattaforma di elaborazione, vedere. CodeCatalyst Specificazione delle immagini dell'ambiente di runtime Per ulteriori informazioni sul aws s3 sync comando AWS CLI's, vedi sync nel Command Reference. AWS CLI

Per ulteriori informazioni sull'azione di compilazione, consultaCostruire con flussi di lavoro.

Come creare un flusso di lavoro
  1. Nel riquadro di navigazione, scegli CI/CD, quindi scegli Flussi di lavoro.

  2. Scegli Crea flusso di lavoro.

  3. Elimina il codice di esempio YAML.

  4. Aggiungi il seguente codice YAML:

    Nota

    Nel codice YAML che segue, puoi omettere la Connections: sezione se vuoi. Se ometti questa sezione, devi assicurarti che il ruolo specificato nel campo Ruolo IAM predefinito nel tuo ambiente includa le autorizzazioni e le politiche di fiducia descritte in. Fase 1: Creare un AWS role Per ulteriori informazioni sulla configurazione di un ambiente con un ruolo IAM predefinito, consulta. Creazione di un ambiente

    Name: codecatalyst-artifact-workflow SchemaVersion: 1.0 Triggers: - Type: Push Branches: - main Actions: GenerateFiles: Identifier: aws/build@v1 Configuration: Steps: # Create the output files. - Run: echo "Hello, World!" > "Hello.txt" - Run: echo "Goodbye!" > "Goodbye.txt" Outputs: Artifacts: - Name: codecatalystArtifact Files: - "**/*" Upload: Identifier: aws/build@v1 DependsOn: - GenerateFiles Environment: Name: codecatalyst-artifact-environment Connections: - Name: codecatalyst-account-connection Role: codecatalyst-s3-build-role Inputs: Artifacts: - codecatalystArtifact Configuration: Steps: # Upload the output artifact to the S3 bucket. - Run: aws s3 sync . s3://codecatalyst-artifact-bucket

    Nel codice precedente, sostituisci:

    Per informazioni sulle proprietà di questo file, consultaCostruisci e testa azioni YAML.

  5. (Facoltativo) Scegli Convalida per assicurarti che il codice YAML sia valido prima del commit.

  6. Scegli Applica.

  7. Nella finestra di dialogo Commit workflow, inserisci quanto segue:

    1. Per il nome del file Workflow, lascia il valore predefinito,codecatalyst-artifact-workflow.

    2. Per il messaggio di conferma, inserisci:

      add initial workflow file
    3. Per Repository, scegli codecatalyst-artifact-source-repository.

    4. Per il nome della filiale, scegli main.

    5. Scegli Applica.

    Ora hai creato un flusso di lavoro. L'esecuzione di un flusso di lavoro viene avviata automaticamente grazie al trigger definito nella parte superiore del flusso di lavoro. In particolare, quando hai eseguito il commit (e il push) del codecatalyst-artifact-workflow.yaml file nel tuo repository di origine, il trigger ha avviato l'esecuzione del flusso di lavoro.

Per visualizzare l'esecuzione del flusso di lavoro in corso
  1. Nel riquadro di navigazione, scegli CI/CD, quindi scegli Flussi di lavoro.

  2. Scegli il flusso di lavoro che hai appena creato:codecatalyst-artifact-workflow.

  3. Scegli GenerateFiles di vedere lo stato di avanzamento della prima azione di compilazione.

  4. Scegli Carica per vedere l'avanzamento della seconda azione di compilazione.

  5. Al termine dell'azione di caricamento, procedi come segue:

    • Se l'esecuzione del flusso di lavoro è riuscita, vai alla procedura successiva.

    • Se l'esecuzione del flusso di lavoro non è riuscita, scegli Registri per risolvere il problema.

Passaggio 5: verifica i risultati

Una volta eseguito il flusso di lavoro, accedi al servizio Amazon S3 e cerca nel codecatalyst-artifact-bucket bucket. Ora dovrebbe includere i seguenti file e cartelle:

. |— .aws/ |— .git/ |Goodbye.txt |Hello.txt |REAME.md

Hello.txtI file Goodbye.txt e sono stati caricati perché facevano parte dell'codecatalystArtifactartefatto. I README.md file .aws/.git/, e sono stati caricati perché si trovavano nel tuo repository di origine.

Eliminazione

Fai attenzione CodeCatalyst ed evita AWS che ti vengano addebitati questi servizi.

Per ripulire CodeCatalyst
  1. Apri la CodeCatalyst console all'indirizzo https://codecatalyst.aws/.

  2. Elimina il repository dei codecatalyst-artifact-source-repository sorgenti.

  3. Elimina il codecatalyst-artifact-workflow flusso di lavoro.

Per ripulire AWS
  1. Effettua la pulizia in Amazon S3, come segue:

    1. Apri la console Amazon S3 all'indirizzo. https://console.aws.amazon.com/s3/

    2. Elimina i file nel codecatalyst-artifact-bucket bucket.

    3. Elimina il codecatalyst-artifact-bucket bucket.

  2. Ripulisci in IAM, come segue:

    1. Aprire la console IAM all'indirizzo https://console.aws.amazon.com/iam/.

    2. Eliminare il codecatalyst-s3-build-policy.

    3. Eliminare il codecatalyst-s3-build-role.