Tutorial: implementazioni di funzioni Lambda con CodePipeline - 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: implementazioni di funzioni Lambda con CodePipeline

Questo tutorial ti aiuta a creare un'azione di distribuzione CodePipeline che distribuisce il codice alla funzione che hai configurato in Lambda. Creerai una funzione Lambda di esempio in cui creerai un alias e una versione, aggiungerai la funzione Lambda compressa alla posizione di origine ed eseguirai l'azione Lambda nella pipeline.

Nota

Come parte della creazione di una pipeline nella console, per gli artefatti verrà utilizzato un bucket di artefatti S3. 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

Nota

L'Lambdaazione di distribuzione è disponibile solo per le pipeline di tipo V2.

Prerequisiti

Per utilizzare questo tutorial per creare la pipeline di distribuzione continua, è necessario disporre di alcune risorse. Ecco di cosa hai bisogno prima di iniziare:

Nota

Tutte queste risorse devono essere create all'interno della stessa regione. AWS

  • Un repository di controllo del codice sorgente, ad esempio GitHub, o un bucket S3 di origine (questo tutorial utilizza S3) in cui archivierai un .zip file creato per la tua funzione Lambda.

  • È necessario utilizzare un ruolo di CodePipeline servizio esistente che è stato aggiornato con le autorizzazioni per questa azione. Per aggiornare il tuo ruolo di servizio, consultaAutorizzazioni della policy del ruolo di servizio per l'azione di distribuzione Lambda.

Dopo aver soddisfatto questi prerequisiti, puoi procedere con il tutorial e creare la pipeline di distribuzione continua.

Fase 1: Creare la funzione Lambda di esempio

In questo passaggio, creerai la funzione Lambda in cui verrà distribuita.

Per creare la tua funzione Lambda
  1. Accedi alla console Lambda e segui i passaggi del seguente tutorial per creare una funzione Lambda di esempio: link.

  2. Dalla barra di navigazione in alto, scegli Crea e seleziona Inizia da zero nella parte superiore della pagina.

  3. In Nome, inserisci MyLambdaFunction.

  4. Pubblica una nuova versione. Questa sarà la versione a cui punterà l'alias.

    1. Seleziona la tua funzione.

    2. Scegli il menu a discesa Azioni.

    3. Selezionare Publish new version (Pubblica nuova versione).

    4. (Facoltativo) Aggiungi alla descrizione in Descrizione.

    5. Seleziona Publish (Pubblica).

  5. Crea un alias per la tua funzione, ad esempioaliasV1.

  6. Assicurati che l'alias punti alla versione che hai appena creato (ad esempio 1).

    Nota

    Se scegli $LATEST, non puoi utilizzare le funzionalità di spostamento del traffico perché Lambda non supporta $LATEST per un alias che punta a più di una versione.

Passaggio 2: carica il file della funzione nel tuo repository

Scaricate la funzione e salvatela come file zip. Carica il file compresso nel tuo bucket S3 seguendo i seguenti passaggi.

Aggiunta di un file .zip nell'archivio di codice sorgente
  1. Apri il tuo bucket S3.

  2. Scegli Carica.

  3. Carica il file zip contenente il sample_lambda_source.zip file nel bucket di origine.

    Prendi nota del percorso.

    object key

Fase 3: Creazione della pipeline

Usa la CodePipeline procedura guidata per creare le fasi della pipeline e connettere il tuo repository di origine.

Creazione della pipeline
  1. Apri la console all' CodePipeline indirizzo. https://console.aws.amazon.com/codepipeline/

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

  3. Nella pagina Passaggio 1: Scegli l'opzione di creazione, in Opzioni di creazione, scegli l'opzione Crea pipeline personalizzata. Scegli Next (Successivo).

  4. Nel Passaggio 2: Scegliete le impostazioni della pipeline, in Nome della tubazione, immettete. MyPipeline

  5. CodePipeline fornisce condotte di tipo V1 e V2, che differiscono per caratteristiche e prezzo. Il tipo V2 è l'unico tipo che puoi scegliere nella console. Per ulteriori informazioni, consulta i tipi di pipeline. Per informazioni sui prezzi di CodePipeline, vedi Prezzi.

  6. In Ruolo di servizio, scegli Usa il ruolo di servizio esistente, quindi scegli il ruolo di CodePipeline servizio che è stato aggiornato con le autorizzazioni richieste per questa azione. Per configurare il ruolo CodePipeline di servizio per questa azione, consultaAutorizzazioni della policy del ruolo di servizio per l'azione di distribuzione Lambda.

  7. Lasciare i valori predefiniti delle impostazioni in Advanced settings (Impostazioni avanzate), quindi scegliere Next (Successivo).

  8. Nella pagina Passaggio 3: Aggiungi fase di origine, aggiungi una fase di origine:

    1. In Provider di origine, scegli Amazon S3.

    2. Nella chiave Object, aggiungi il nome del tuo file.zip, inclusa l'estensione del file, ad esempio. sample_lambda_source.zip

    Scegli Next (Successivo).

  9. Nella pagina Passaggio 4: Aggiungi fase di compilazione, scegli Ignora.

  10. Nella pagina Passaggio 5: Aggiungi fase di test, scegli Salta.

  11. Nella pagina Fase 6: Aggiungi fase di distribuzione, scegli Lambda.

    Aggiungi un'azione di distribuzione Lambda alla tua pipeline.
    1. Aggiungi il nome e l'alias della funzione.

    2. Scegli la tua strategia di implementazione.

    3. Scegli Next (Successivo).

  12. Nella pagina Passaggio 7: revisione, rivedi la configurazione della pipeline e scegli Crea pipeline per creare la pipeline.

    Un diagramma della console che mostra un'esecuzione corretta della pipeline con l'azione di distribuzione Lambda aggiunta alla pipeline.

Fase 4: test della pipeline

La tua pipeline dovrebbe avere tutto il necessario per eseguire una distribuzione continua nativa. end-to-end AWS Ora, testane la funzionalità inserendo una modifica del codice all'archivio del codice sorgente.

Test della pipeline
  1. Effettua una modifica del codice nell'archivio del codice sorgente configurato, conferma e inserisci la modifica.

  2. Apri la CodePipeline console all'indirizzo https://console.aws.amazon.com/codepipeline/.

  3. Seleziona la pipeline nell'elenco.

  4. Osserva l'avanzamento della pipeline attraverso le varie fasi. La pipeline dovrebbe essere completata e l'azione verrà implementata nella funzione Lambda.

Ulteriori informazioni

L'azione di implementazione Lambda consente due metodi di distribuzione. Un metodo consiste nel solo spostamento del traffico senza alcun elemento di input proveniente dall'azione di origine. L'altro metodo consiste nell'aggiornare il codice della funzione utilizzando un elemento di input dell'azione sorgente, quindi nella pubblicazione di una nuova versione basata sul codice aggiornato. Per il secondo metodo, se viene fornito l'alias, CodePipeline effettuerà anche lo spostamento del traffico. Questo tutorial sulle azioni di implementazione di Lambda mostra l'aggiornamento della funzione utilizzando un artefatto sorgente.

Per ulteriori informazioni sull'azione, consulta la pagina di riferimento dell'azione all'indirizzo. AWS Lambda distribuire un riferimento all'azione