

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

# CloudFormation riferimento alle proprietà di configurazione
<a name="continuous-delivery-codepipeline-action-reference"></a>

Quando si crea una CodePipeline pipeline, si aggiunge un'`Deploy`azione alla pipeline utilizzando CloudFormation come provider. È quindi necessario specificare l' CloudFormation azione richiamata dalla pipeline e le impostazioni dell'azione. In questo argomento vengono descritte le proprietà di configurazione di CloudFormation . Per specificare le proprietà, puoi utilizzare la CodePipeline console oppure puoi creare un oggetto JSON da utilizzare per l' CodePipeline API o AWS CLI i modelli. CloudFormation 

**Topics**
+ [Proprietà di configurazione (console)](#continuous-delivery-codepipeline-action-reference-console)
+ [Proprietà di configurazione (oggetto JSON)](#continuous-delivery-codepipeline-action-reference-json)
+ [Consulta anche](#continuous-delivery-codepipeline-action-reference-see-also)

## Proprietà di configurazione (console)
<a name="continuous-delivery-codepipeline-action-reference-console"></a>

La CodePipeline [console](https://console.aws.amazon.com/codepipeline/) mostra le proprietà di configurazione e indica le proprietà richieste in base alla modalità di azione scelta.

**Nota**  
Quando crei una pipeline, puoi specificare solo le modalità operazione **Create or update a stack (Crea o aggiorna uno stack)** o **Create or replace a change set (Crea o sostituisci un set di modifiche)**. Le proprietà nella sezione **Advanced (Avanzate)** sono disponibili solo quando modifichi una pipeline.

**Action mode (Modalità operazione)**  
L' CloudFormation azione che viene CodePipeline richiamata durante l'elaborazione della fase associata. Scegli una delle seguenti modalità operazione:  
+ **Create or replace a change set (Crea o sostituisci un set di modifiche)** crea il set di modifiche, se non esistente, in base al nome dello stack e al modello che invii. Se il set di modifiche esiste, lo CloudFormation elimina e ne crea uno nuovo.
+ **Create or update a stack (Crea o aggiorna uno stack)** crea lo stack se lo stack specificato non esiste. Se lo stack esiste, lo CloudFormation aggiorna. Utilizzate questa azione per aggiornare gli stack esistenti. CodePipeline non sostituirà lo stack.
+ **Delete a stack (Elimina uno stack)** elimina uno stack. Se specifichi uno stack che non esiste, l’operazione viene completata senza l’eliminazione di uno stack.
+ **Execute a change set (Esegui un set di modifiche)** esegue un set di modifiche.
+ **Replace a failed stack (Sostituisci uno stack non riuscito)** crea lo stack se lo stack specificato non esiste. Se lo stack esiste e si trova in uno stato non riuscito (segnalato come `ROLLBACK_COMPLETE``ROLLBACK_FAILED`,`CREATE_FAILED`,`DELETE_FAILED`, o`UPDATE_ROLLBACK_FAILED`), CloudFormation elimina lo stack e ne crea uno nuovo. Se lo stack non è in uno stato di errore, lo aggiorna. CloudFormation Utilizza questa operazione per sostituire gli stack non riusciti senza effettuarne il ripristino o eseguire la relativa risoluzione di problemi. In genere questa modalità viene selezionata per il testing.

**Stack name (Nome stack)**  
Il nome associato a uno stack esistente o a uno stack che desideri creare. Il nome deve essere univoco nella AWS regione in cui state creando lo stack.  
Il nome di uno stack può contenere solo caratteri alfanumerici (con distinzione tra lettere maiuscole e minuscole) e trattini. Deve iniziare con un carattere alfabetico e non può avere una lunghezza superiore a 128 caratteri.

**Change set name (Modifica nome set)**  
Il nome di un set di modifiche esistente o di uno nuovo che desideri creare per lo stack specificato.

**Template (Modello)**  
La posizione di un file CloudFormation modello, che segue il formato`ArtifactName::TemplateFileName`.

**Template configuration (Configurazione modello)**  
Posizione di un file di configurazione del modello, nel formato `ArtifactName::TemplateConfigurationFileName`. Il file di configurazione del modello può contenere i valori dei parametri del modello, una policy relativa allo stack e i tag. Se includi informazioni sensibili, come le password, limita l’accesso a questo file. Per ulteriori informazioni, consulta [CloudFormation artefatti](continuous-delivery-codepipeline-cfn-artifacts.md).

**Funzionalità**  
Per gli stack che contengono determinate risorse, riconoscimento esplicito che CloudFormation potrebbe creare o aggiornare tali risorse. Ad esempio, devi specificare `CAPABILITY_IAM` se il modello dello stack include risorse AWS Identity and Access Management (IAM). Per ulteriori informazioni, consulta [https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_CreateStack.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_CreateStack.html) API operation request parameters.  
Se il tuo modello di stack include risorse IAM, devi specificare questa proprietà.  
Puoi specificare più funzionalità.

**Role name (Nome ruolo)**  
Il nome del ruolo del servizio IAM che CloudFormation assume quando opera su risorse nello stack specificato.

**Output file name (Nome file di output)**  
Nella sezione **Avanzate**, puoi specificare un nome di file di output, ad esempio`CreateStackOutput.json`, che CodePipeline viene aggiunto all'[artefatto di output](https://docs.aws.amazon.com/codepipeline/latest/userguide/concepts.html#concepts-artifacts) dopo che questo ha eseguito l'azione specificata. L'elemento di output contiene un file JSON con il contenuto della sezione del `Outputs` modello. CloudFormation   
Se non si specifica un nome, CodePipeline non genera un artefatto di output.

**Parameter overrides (Sostituzioni parametri)**  
I parametri sono definiti nel modello e consentono di immettere valori personalizzati quando crei o aggiorni uno stack. Puoi specificare un oggetto JSON che sostituisce i valori dei parametri del modello nel file di configurazione del modello. Tutti i nomi dei parametri devono essere presenti nel modello di stack. Per ulteriori informazioni, consulta [CloudFormation Parameterssintassi del modello](parameters-section-structure.md).  
L’oggetto JSON che può essere archiviato nella proprietà `ParameterOverrides` deve avere una dimensione massima di 1 kilobyte.
È consigliabile utilizzare il file di configurazione del modello per specificare la maggior parte dei valori dei parametri. Utilizza le sostituzioni dei parametri per specificare solo i valori dei parametri dinamici. I parametri dinamici non sono noti finché non si esegue la pipeline.  
L’esempio seguente definisce un valore per il parametro `ParameterName` utilizzando una funzione di sostituzione dei parametri. La funzione recupera un valore da un CodePipeline artefatto di input. Per ulteriori informazioni sulle funzioni di sostituzione dei parametri, consulta [Utilizzo delle funzioni di sovrascrittura dei parametri con le pipeline CodePipeline](continuous-delivery-codepipeline-parameter-override-functions.md).  

```
{
  "ParameterName" : { "Fn::GetParam" : ["ArtifactName", "config-file-name.json", "ParamName"]}
}
```

## Proprietà di configurazione (oggetto JSON)
<a name="continuous-delivery-codepipeline-action-reference-json"></a>

Quando specifichi `CloudFormation` come provider per un’operazione di fase, definisci le seguenti proprietà nella proprietà `Configuration`. Utilizza l'oggetto JSON per l' CodePipelineAPI o AWS CLI i modelli. CloudFormation Per alcuni esempi, consulta [Spiegazione passo per passo: creazione di una pipeline per stack di test e produzione](continuous-delivery-codepipeline-basic-walkthrough.md) e [CloudFormation riferimento alle proprietà di configurazione](#continuous-delivery-codepipeline-action-reference).

`ActionMode`  
L' CloudFormation azione che CodePipeline invoca quando elabora la fase associata. Specifica solo una delle seguenti modalità operazione:  
+ `CHANGE_SET_EXECUTE` esegue un set di modifiche.
+ `CHANGE_SET_REPLACE` crea il set di modifiche, se non esiste, in base al nome dello stack e al modello che invii. Se il set di modifiche esiste, lo CloudFormation elimina e ne crea uno nuovo.
+ `CREATE_UPDATE` crea lo stack se lo stack specificato non esiste. Se lo stack esiste, CloudFormation lo aggiorna. Utilizzate questa azione per aggiornare gli stack esistenti. CodePipeline non sostituirà lo stack.
+ `DELETE_ONLY` elimina uno stack. Se specifichi uno stack che non esiste, l’operazione viene completata senza l’eliminazione di uno stack.
+ `REPLACE_ON_FAILURE` crea uno stack se lo stack specificato non esiste. Se lo stack esiste e si trova in uno stato di errore (segnalato come`ROLLBACK_COMPLETE`,`ROLLBACK_FAILED`, `CREATE_FAILED``DELETE_FAILED`, o`UPDATE_ROLLBACK_FAILED`), CloudFormation elimina lo stack e quindi ne crea uno nuovo. Se lo stack non è in uno stato di errore, lo aggiorna. CloudFormation Utilizza questa operazione per sostituire automaticamente gli stack non riusciti senza effettuarne il ripristino o eseguire la relativa risoluzione di problemi. In genere questa modalità viene selezionata per il testing.
Questa proprietà è obbligatoria.

`Capabilities`  
Per gli stack che contengono determinate risorse, riconoscimento esplicito che CloudFormation potrebbe creare o aggiornare tali risorse. Ad esempio, devi specificare `CAPABILITY_IAM` se il modello dello stack include risorse AWS Identity and Access Management (IAM). Per ulteriori informazioni, consulta [https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_CreateStack.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_CreateStack.html) API operation request parameters.  
Questa proprietà è condizionale. Se il tuo modello di stack include risorse IAM, devi specificare questa proprietà.  
Puoi specificare più funzionalità. L’esempio seguente aggiunge le proprietà `CAPABILITY_IAM` e `CAPABILITY_AUTO_EXPAND` al modello:  

```
configuration:
  ActionMode: CHANGE_SET_REPLACE
  Capabilities: CAPABILITY_IAM,CAPABILITY_AUTO_EXPAND
  ChangeSetName: pipeline-changeset
  RoleArn: CloudFormation_Role_ARN
  StackName: my-pipeline-stack
  TemplateConfiguration: 'my-pipeline-stack::template-configuration.json'
  TemplatePath: 'my-pipeline-stack::template-export.yml'
```

```
 "configuration": {
        "ActionMode": "CHANGE_SET_REPLACE",
        "Capabilities": "CAPABILITY_IAM,CAPABILITY_AUTO_EXPAND",
        "ChangeSetName": "pipeline-changeset",
        "RoleArn": "CloudFormation_Role_ARN",
        "StackName": "my-pipeline-stack",
        "TemplateConfiguration": "my-pipeline-stack::template-configuration.json",
        "TemplatePath": "my-pipeline-stack::template-export.yml"
    }
```

`ChangeSetName`  
Il nome di un set di modifiche esistente o di uno nuovo che desideri creare per lo stack specificato.  
Questa proprietà è obbligatoria per le seguenti modalità operazione: `CHANGE_SET_REPLACE` e `CHANGE_SET_EXECUTE`. La proprietà viene ignorata per tutte le altre modalità operazione.

`OutputFileName`  
Un nome per il file di output, ad esempio. `CreateStackOutput.json` CodePipeline aggiunge il file all'elemento [di output dopo aver eseguito l'azione](https://docs.aws.amazon.com/codepipeline/latest/userguide/concepts.html#concepts-artifacts) specificata. L'artefatto di output contiene un file JSON con il contenuto della sezione del `Outputs` modello. CloudFormation   
Questa proprietà è opzionale. Se non si specifica un nome, CodePipeline non genera un artefatto di output.

`ParameterOverrides`  
I parametri sono definiti nel modello e consentono di immettere valori personalizzati quando crei o aggiorni uno stack. Puoi specificare un oggetto JSON che sostituisce i valori dei parametri del modello nel file di configurazione del modello. Tutti i nomi dei parametri devono essere presenti nel modello di stack. Per ulteriori informazioni, consulta [CloudFormation Parameterssintassi del modello](parameters-section-structure.md).  
L’esempio seguente aggiunge le sostituzioni dei parametri `InstanceType` e `KeyName` al modello:  

```
configuration:
  ActionMode: CHANGE_SET_REPLACE
  Capabilities: CAPABILITY_NAMED_IAM
  ChangeSetName: pipeline-changeset
  ParameterOverrides: '{"InstanceType": "t2.small","KeyName": "my-keypair"}'
  RoleArn: CloudFormation_Role_ARN
  StackName: my-pipeline-stack
  TemplateConfiguration: 'my-pipeline-stack::template-configuration.json'
  TemplatePath: 'my-pipeline-stack::template-export.yml'
```

```
"configuration": {
        "ActionMode": "CHANGE_SET_REPLACE",
        "Capabilities": "CAPABILITY_NAMED_IAM",
        "ChangeSetName": "pipeline-changeset",
        "ParameterOverrides": "{\"InstanceType\": \"t2.small\",\"KeyName\": \"my-keypair\"}",
        "RoleArn": "CloudFormation_Role_ARN",
        "StackName": "my-pipeline-stack",
        "TemplateConfiguration": "my-pipeline-stack::template-configuration.json",
        "TemplatePath": "my-pipeline-stack::template-export.yml"
    }
```
La dimensione massima per l’oggetto JSON che può essere archiviato nella proprietà `ParameterOverrides` è di 1 kilobyte.
È consigliabile utilizzare il file di configurazione del modello per specificare la maggior parte dei valori dei parametri. Utilizza le sostituzioni dei parametri per specificare solo i valori dei parametri dinamici. I valori dei parametri dinamici non sono noti finché non si esegue la pipeline.  
L’esempio seguente definisce un valore per il parametro `ParameterName` utilizzando una funzione di sostituzione dei parametri. La funzione recupera un valore da un CodePipeline artefatto di input. Per ulteriori informazioni sulle funzioni di sostituzione dei parametri, consulta [Utilizzo delle funzioni di sovrascrittura dei parametri con le pipeline CodePipeline](continuous-delivery-codepipeline-parameter-override-functions.md).  

```
{
  "ParameterName" : { "Fn::GetParam" : ["ArtifactName", "config-file-name.json", "ParamName"]}
}
```
Questa proprietà è opzionale.

`RoleArn`  
Il ruolo del servizio Amazon Resource Name (ARN) del servizio IAM che CloudFormation assume quando opera su risorse in uno stack.  
Questa proprietà è obbligatoria per le seguenti modalità operazione: `CREATE_UPDATE`, `REPLACE_ON_FAILURE`, `DELETE_ONLY` e `CHANGE_SET_REPLACE`. `RoleArn` non viene applicata durante l’esecuzione di un set di modifiche. Se non lo utilizzi CodePipeline per creare il set di modifiche, assicurati che al set o allo stack di modifiche sia associato un ruolo.

`StackName`  
Il nome di uno stack esistente o che desideri creare.  
Questa proprietà è obbligatoria per tutte le altre modalità operazione.

`TemplateConfiguration`  
`TemplateConfiguration` è il file di configurazione del modello. Includi il file in un artefatto di input per questa operazione. Il nome del file di configurazione del modello segue questo formato:   
`Artifactname::TemplateConfigurationFileName`  
`Artifactname`è il nome dell'artefatto di input così come appare in. CodePipeline Ad esempio, una fase di origine con il nome di artefatto di `SourceArtifact` e un nome file di `test-configuration.json` crea un nome `TemplateConfiguration` come mostrato in questo esempio:  

```
"TemplateConfiguration": "SourceArtifact::test-configuration.json"
```
Il file di configurazione del modello può contenere i valori dei parametri del modello e una policy relativa allo stack. Se includi informazioni sensibili, come le password, limita l’accesso a questo file. Per un esempio di file di configurazione del modello, consulta [CloudFormation artefatti](continuous-delivery-codepipeline-cfn-artifacts.md).  
Questa proprietà è opzionale.

`TemplatePath`  
`TemplatePath`rappresenta il file CloudFormation modello. Includi il file in un artefatto di input per questa operazione. Il nome del file segue questo formato:  
`Artifactname::TemplateFileName`  
`Artifactname`è il nome dell'artefatto di input così come appare in. CodePipeline Ad esempio, una fase di origine con il nome di artefatto di `SourceArtifact` e un nome file di `template.yaml` crea un nome `TemplatePath` come mostrato in questo esempio:  

```
"TemplatePath": "SourceArtifact::template.yaml"
```
Questa proprietà è obbligatoria per le seguenti modalità operazione: `CREATE_UPDATE`, `REPLACE_ON_FAILURE` e `CHANGE_SET_REPLACE`. La proprietà viene ignorata per tutte le altre modalità operazione.

## Consulta anche
<a name="continuous-delivery-codepipeline-action-reference-see-also"></a>

Le risorse correlate seguenti possono rivelarsi utili durante l’utilizzo di questi parametri.
+ *Per ulteriori informazioni sui parametri di CloudFormation azione in CodePipeline, vedere il [riferimento alla configurazione dell'azione di CloudFormation distribuzione](https://docs.aws.amazon.com/codepipeline/latest/userguide/action-reference-CloudFormation.html) nella Guida per l'AWS CodePipeline utente.*
+ Per i valori del modello di esempio per provider di operazioni, ad esempio per il campo `Owner` o i campi `configuration`, consulta il [Riferimento per la struttura delle operazioni](https://docs.aws.amazon.com/codepipeline/latest/userguide/action-reference.html) nella *Guida per l’utente di AWS CodePipeline *.
+ Per scaricare modelli di stack di pipeline di esempio in formato YAML o JSON, consulta [Tutorial: Create a pipeline with CloudFormation](https://docs.aws.amazon.com/codepipeline/latest/userguide/tutorials-cloudformation.html) nella *Guida per l’utente di AWS CodePipeline *.