

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: Creare una pipeline con AWS CloudFormation
<a name="tutorials-cloudformation"></a>

Gli esempi forniscono modelli di esempio che ti consentono di AWS CloudFormation creare una pipeline che distribuisce l'applicazione sulle tue istanze ogni volta che il codice sorgente cambia. Il modello di esempio crea una pipeline che è possibile visualizzare in AWS CodePipeline. La pipeline rileva l'arrivo di una modifica salvata tramite Amazon CloudWatch Events.

**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 

**Topics**
+ [Esempio 1: creare una AWS CodeCommit pipeline con AWS CloudFormation](tutorials-cloudformation-codecommit.md)
+ [Esempio 2: creare una pipeline Amazon S3 con AWS CloudFormation](tutorials-cloudformation-s3.md)

# Esempio 1: creare una AWS CodeCommit pipeline con AWS CloudFormation
<a name="tutorials-cloudformation-codecommit"></a>

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

**Prerequisiti:**

È necessario aver creato le seguenti risorse da utilizzare con il AWS CloudFormation modello di esempio:
+ È necessario aver creato un repository di origine. È possibile utilizzare il AWS CodeCommit repository in [Tutorial: crea una pipeline semplice (CodeCommit repository)](tutorials-simple-codecommit.md) cui è stato creato.
+ È necessario aver creato un' CodeDeploy applicazione e un gruppo di distribuzione. Puoi usare le risorse CodeDeploy create in [Tutorial: crea una pipeline semplice (CodeCommit repository)](tutorials-simple-codecommit.md).
+ [Scegliete uno di questi link per scaricare il file AWS CloudFormation modello di esempio per la creazione di una pipeline: [YAML](samples/codepipeline-codecommit-events-yaml.zip) \$1 JSON](samples/codepipeline-codecommit-events-json.zip)

  Decomprimi il file e memorizzalo nel computer locale.
+ Scaricate il file dell'applicazione di esempio [SampleApp\$1Linux.zip](samples/SampleApp_Linux.zip).



**Crea la tua pipeline in AWS CloudFormation**

1. Decomprimi i file da [SampleApp\$1Linux.zip](samples/SampleApp_Linux.zip) e carica i file nel tuo AWS CodeCommit repository. È necessario caricare i file estratti nella directory radice del repository. È possibile seguire le istruzioni disponibili in [Passaggio 2: aggiungi codice di esempio al tuo CodeCommit repository](tutorials-simple-codecommit.md#codecommit-add-code) per inviare i file nel repository.

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

1. In **Specificare modello**, scegli **Carica un modello**. Seleziona **Scegli file**, quindi scegli il file modello dal tuo computer locale. Scegli **Next (Successivo)**.

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. In **ApplicationName**, inserisci il nome della tua CodeDeploy applicazione.

   1. In **BetaFleet**, inserisci il nome del tuo gruppo di CodeDeploy distribuzione.

   1. In **BranchName**, inserisci il ramo del repository che desideri utilizzare.

   1. In **RepositoryName**, inserisci il nome del tuo repository di CodeCommit origine.

1. Scegli **Next (Successivo)**. 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 **Create 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 AWS CloudFormation per consentire la creazione delle risorse Amazon CloudWatch Events richieste per la CodeCommit pipeline:

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

1. Accedi a Console di gestione AWS e apri la CodePipeline console all'indirizzo. [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.
**Nota**  
Per visualizzare la pipeline che è stata creata, trova la colonna **Logical ID** nella scheda **Risorse** relativa al tuo stack in. CloudFormation Annota il nome nella colonna **Physical ID** per la pipeline. In CodePipeline, puoi visualizzare la pipeline con lo stesso ID fisico (nome della pipeline) nella regione in cui hai creato lo stack.

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

# Esempio 2: creare 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 include una pipeline connessa a un bucket sorgente 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'artifact store, la pipeline e le risorse di 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 a 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: crea una pipeline semplice (CodeCommit repository)](tutorials-simple-codecommit.md)
+ Scegli i seguenti link per scaricare i file AWS CloudFormation modello di esempio per la creazione di una pipeline con un sorgente Amazon S3: 
  + Scaricare il modello di esempio per la pipeline: [YAML](samples/codepipeline-s3-events-yaml.zip) \$1 [JSON](samples/codepipeline-s3-events-json.zip)
  + [samples/codepipeline-s3-cloudtrail-yaml.zip](samples/codepipeline-s3-cloudtrail-yaml.zip)
  + Decomprimi i file e memorizzali nel computer locale.
+ [Scarica l'applicazione di esempio da \$1Linux.zip. SampleApp](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 **Create 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 **Next (Successivo)**.

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. In **ApplicationName**, inserisci 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**, entra`SampleApp_Linux.zip`. Carica questo file nel bucket dopo che il modello ha creato il bucket e la pipeline.

1. Scegli **Next (Successivo)**. 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 **Create 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 AWS CloudFormation per consentire la creazione delle 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 che è stata creata, trova la colonna **ID logico** nella scheda **Risorse** relativa al tuo stack in. CloudFormation Annota il nome nella colonna **Physical ID** per la 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 tuo `sourcebucket` bucket. Scegliere **Upload (Carica)** e seguire le istruzioni per caricare il file .zip `SampleApp_Linux.zip`.
**Nota**  
Se Amazon S3 è il fornitore di origine per la tua pipeline, devi caricare nel tuo bucket tutti i file sorgente impacchettati come un unico file.zip. In caso contrario, l'azione di origine ha esito negativo.

1. Accedi a 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. Completare i passaggi nella procedura seguente per creare le risorse AWS CloudTrail .

**Crea le tue AWS CloudTrail risorse in AWS CloudFormation**

1. Apri la AWS CloudFormation console e scegli **Create 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 **Next (Successivo)**.

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 **Next (Successivo)**. 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 AWS CloudFormation la creazione CloudTrail delle 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 a Console di gestione AWS e apri la console all' CodePipeline indirizzo. [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.