

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
<a name="tutorials-lambda-deploy"></a>

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'`Lambda`azione di distribuzione è disponibile solo per le pipeline di tipo V2.

## Prerequisiti
<a name="tutorials-lambda-deploy-prereqs"></a>

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, consulta[Autorizzazioni della policy del ruolo di servizio per l'azione di distribuzione Lambda](action-reference-LambdaDeploy.md#action-reference-LambdaDeploy-permissions-action).

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
<a name="tutorials-lambda-deploy-instances"></a>

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.

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

1. In **Nome**, inserisci **MyLambdaFunction**. 

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

   1. Seleziona la tua funzione.

   1. Scegli il menu a discesa **Azioni**.

   1. Selezionare **Publish new version** (Pubblica nuova versione).

   1. (Facoltativo) Aggiungi alla descrizione in **Descrizione**.

   1. Seleziona **Pubblica**.

1. Crea un alias per la tua funzione, ad esempio`aliasV1`.

1. Assicurati che l'alias punti alla versione che hai appena creato (ad esempio 1).
**Nota**  
Se scegli \$1LATEST, non puoi utilizzare le funzionalità di spostamento del traffico perché Lambda non supporta \$1LATEST per un alias che punta a più di una versione.

## Passaggio 2: carica il file della funzione nel tuo repository
<a name="tutorials-lambda-deploy-file"></a>

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.

1. Scegli **Carica**.

1. 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
<a name="tutorials-lambda-deploy-pipeline"></a>

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/](https://console.aws.amazon.com/codepipeline/)

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

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

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

1. 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.](https://docs.aws.amazon.com/codepipeline/latest/userguide/pipeline-types-planning.html?icmpid=docs_acp_help_panel) Per informazioni sui prezzi di CodePipeline, vedi [Prezzi](https://aws.amazon.com/codepipeline/pricing/).

1. 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, consulta[Autorizzazioni della policy del ruolo di servizio per l'azione di distribuzione Lambda](action-reference-LambdaDeploy.md#action-reference-LambdaDeploy-permissions-action).

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

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

   1. In **Provider di origine**, scegli **Amazon S3**.

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

      

   Scegli **Next (Successivo)**.

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

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

1. Nella pagina **Fase 6: Aggiungi fase di distribuzione**, scegli **Lambda**.  
![\[\]](http://docs.aws.amazon.com/it_it/codepipeline/latest/userguide/images/lambdadeploy-edit-screen.png)

   1. Aggiungi il nome e l'alias della funzione. 

   1. Scegli la tua strategia di implementazione.

   1. Scegli **Next (Successivo)**.

1. Nella pagina **Passaggio 7: revisione**, rivedi la configurazione della pipeline e scegli **Crea pipeline per creare la pipeline**.  
![\[\]](http://docs.aws.amazon.com/it_it/codepipeline/latest/userguide/images/lambdadeploy-pipeline-screen.png)

## Fase 4: test della pipeline
<a name="tutorials-lambda-deploy-test"></a>

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.

1. Apri la CodePipeline console all'indirizzo [https://console.aws.amazon.com/codepipeline/](https://console.aws.amazon.com/codepipeline/).

1. Seleziona la pipeline nell'elenco.

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

## Ulteriori informazioni
<a name="tutorials-lambda-deploy-learn"></a>

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](action-reference-LambdaDeploy.md)