

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

# Esempio 2: crea una pipeline Amazon S3 con AWS CloudFormation
<a name="tutorials-cloudformation-s3"></a>

Questa procedura dettagliata mostra come utilizzare la AWS CloudFormation console per creare un'infrastruttura che includa una pipeline connessa a un bucket di origine Amazon S3. In questo tutorial, utilizzi il file modello di esempio fornito per creare il tuo stack di risorse, che include il bucket di origine, l'archivio di artefatti, la pipeline e le risorse per il rilevamento delle modifiche, come la regola e il percorso di Amazon Events. CloudWatch CloudTrail Dopo aver creato lo stack di risorse in AWS CloudFormation, puoi visualizzare la pipeline nella console. AWS CodePipeline La pipeline è una pipeline in due fasi con una fase di origine di Amazon S3 e una fase di distribuzione. CodeDeploy

**Prerequisiti:**

È necessario disporre delle seguenti risorse da utilizzare con il modello di esempio: AWS CloudFormation 
+ Devi aver creato le istanze Amazon EC2, dove hai installato l' CodeDeploy agente sulle istanze. È necessario aver creato un' CodeDeploy applicazione e un gruppo di distribuzione. Usa Amazon EC2 e CodeDeploy le risorse in cui hai creato. [Tutorial: creare una semplice pipeline (CodeCommit repository)](tutorials-simple-codecommit.md)
+ Scegli i seguenti link per scaricare i file AWS CloudFormation modello di esempio per creare una pipeline con una fonte Amazon S3: 
  + Scaricare il modello di esempio per la pipeline: [YAML](samples/codepipeline-s3-events-yaml.zip) \| [JSON](samples/codepipeline-s3-events-json.zip)
  + Scarica il modello di esempio per il tuo CloudTrail bucket and trail: [ YAML \| JSON ](samples/codepipeline-s3-cloudtrail-yaml.zip) [samples/codepipeline-s3-cloudtrail-json.zip](samples/codepipeline-s3-cloudtrail-json.zip)
  + Decomprimi i file e memorizzali nel computer locale.
+ Scarica l'applicazione di esempio da \_. [ SampleApp Linux.zip ](samples/SampleApp_Linux.zip)

  Salva il file .zip nel computer locale. Puoi caricare il file .zip dopo aver creato lo stack.

**Crea la tua pipeline in AWS CloudFormation**

1. Apri la AWS CloudFormation console e scegli ** Crea stack**. Scegliere **Con nuove risorse (standard)**.

1. In ** Scegli un modello**, scegli ** Carica un modello**. Seleziona ** Scegli file**, quindi scegli il file modello dal tuo computer locale. Scegli **Avanti**.

1. Nel campo **Stack name (Nome stack)**, immetti un nome per la pipeline. Vengono visualizzati i parametri specificati dal modello di esempio. Immetti i seguenti parametri: 

   1. Inserisci ** ApplicationName ** il nome della tua CodeDeploy applicazione. Puoi sostituire il nome predefinito `DemoApplication`.

   1. In ** BetaFleet**, inserisci il nome del tuo gruppo di CodeDeploy distribuzione. Puoi sostituire il nome predefinito `DemoFleet`.

   1. In ** SourceObjectKey**, inserisci`SampleApp_Linux.zip`. Carica questo file nel bucket dopo che il modello ha creato il bucket e la pipeline.

1. Scegli **Avanti**. Accetta i valori predefiniti nella pagina successiva e scegli **Next (Successivo)**.

1. In ** Capacità**, seleziona ** Riconosco che AWS CloudFormation potrebbe creare risorse IAM**, quindi scegli ** Crea stack**.

1. Alla fine della creazione dello stack, visualizza l'elenco di eventi per verificare che non vi siano errori.

   **Risoluzione dei problemi**

   L'utente IAM che sta creando la pipeline in AWS CloudFormation potrebbe richiedere autorizzazioni aggiuntive per creare risorse per la pipeline. Le seguenti autorizzazioni sono richieste nella policy per consentire AWS CloudFormation di creare le risorse Amazon CloudWatch Events richieste per la pipeline Amazon S3:

   ```
   {
        "Effect": "Allow",
        "Action": [
           "events:PutRule",
           "events:PutEvents",
           "events:PutTargets",
           "events:DeleteRule",
           "events:RemoveTargets",
           "events:DescribeRule"
        ],
        "Resource": "{{resource_ARN}}"
   }
   ```

1. Nella CloudFormation** scheda ** Risorse del tuo stack, visualizza le risorse che sono state create per il tuo stack. 
**Nota**  
Per visualizzare la pipeline creata, cerca la ** colonna ID ** logico nella ** scheda ** Risorse per il tuo stack in CloudFormation. Annota il nome nella ** colonna ID ** fisico della pipeline. In CodePipeline, puoi visualizzare la pipeline con lo stesso ID fisico (nome della pipeline) nella regione in cui hai creato lo stack.

   Scegliere il bucket S3 con un'etichetta `sourcebucket` nel nome, ad esempio `s3-cfn-codepipeline-sourcebucket-y04EXAMPLE.`. Non scegliere il bucket dell'artefatto della pipeline.

   Il bucket di origine è vuoto perché la risorsa è stata appena creata da CloudFormation. Apri la console Amazon S3 e individua il bucket. `sourcebucket` Scegliere **Upload (Carica)** e seguire le istruzioni per caricare il file .zip `SampleApp_Linux.zip`.
**Nota**  
Quando Amazon S3 è il fornitore di origine per la tua pipeline, devi caricare nel bucket tutti i file sorgente impacchettati in un unico file .zip. In caso contrario, l'azione di origine ha esito negativo.

1. Accedi e apri la console all'indirizzo Console di gestione AWS . CodePipeline [ https://console.aws.amazon.com/codepipeline/ ](https://console.aws.amazon.com/codepipeline/)

   In **Pipelines (Pipeline)**, seleziona la pipeline e scegli **View (Visualizza)**. Il diagramma mostra le fasi di distribuzione e di origine della pipeline.

1. Completare i passaggi nella procedura seguente per creare le risorse AWS CloudTrail .

**Crea il tuo AWS CloudTrail risorse in AWS CloudFormation**

1. Apri la AWS CloudFormation console e scegli ** Crea stack**.

1. In **Choose a template (Scegli un modello)**, scegliere **Upload a template to Amazon S3 (Carica un modello su Amazon S3)**. Scegli ** Sfoglia**, quindi seleziona il file modello per le AWS CloudTrail risorse dal tuo computer locale. Scegli **Avanti**.

1. In **Stack name (Nome stack)** immetti un nome per lo stack di risorse. Vengono visualizzati i parametri specificati dal modello di esempio. Immetti i seguenti parametri: 

   1. In ** SourceObjectKey**, accettate l'impostazione predefinita per il file zip dell'applicazione di esempio.

1. Scegli **Avanti**. Accetta i valori predefiniti nella pagina successiva e scegli **Next (Successivo)**.

1. In ** Capacità**, seleziona ** Riconosco che AWS CloudFormation potrebbe creare risorse IAM**, quindi scegli ** Crea**.

1. Alla fine della creazione dello stack, visualizza l'elenco di eventi per verificare che non vi siano errori.

   Le seguenti autorizzazioni sono richieste nella policy per consentire di AWS CloudFormation creare CloudTrail le risorse richieste per la pipeline Amazon S3:

   ```
   {
        "Effect": "Allow",
        "Action": [
           "cloudtrail:CreateTrail",
           "cloudtrail:DeleteTrail",
           "cloudtrail:StartLogging",
           "cloudtrail:StopLogging",
           "cloudtrail:PutEventSelectors"
        ],
        "Resource": "{{resource_ARN}}"
   }
   ```

1. Accedi Console di gestione AWS e apri la console all'indirizzo. CodePipeline [ https://console.aws.amazon.com/codepipeline/ ](https://console.aws.amazon.com/codepipeline/)

   In **Pipelines (Pipeline)**, seleziona la pipeline e scegli **View (Visualizza)**. Il diagramma mostra le fasi di distribuzione e di origine della pipeline.

1. Nel bucket di origine, confermare e inviare una modifica. Le risorse con rilevamento delle modifiche raccolgono la modifica e la pipeline si avvia.