

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

# AppSpec Struttura dei file
<a name="reference-appspec-file-structure"></a>

Di seguito è riportata la struttura di alto livello di un AppSpec file utilizzato per le distribuzioni su piattaforme di calcolo AWS Lambda ed EC2/on-premise.

Un valore in un AppSpec file in formato YAML che è una stringa non deve essere racchiuso tra virgolette («») se non diversamente specificato.

## AppSpec struttura dei file per le distribuzioni di Amazon ECS
<a name="ecs-appspec-structure"></a>

**Nota**  
Questo AppSpec file è scritto in YAML, ma puoi usare la stessa struttura per scriverne uno in JSON. Una stringa in un AppSpec file in formato JSON è sempre racchiusa tra virgolette («»).

```
version: 0.0
resources: 
  ecs-service-specifications
hooks: 
  deployment-lifecycle-event-mappings
```

In questa struttura:

** **versione** **  
Questa sezione specifica la versione del file. AppSpec Non modificare questo valore. È obbligatorio. Attualmente, l'unico valore consentito è **0.0**. È riservato CodeDeploy per usi futuri.  
Specifica **version** con una stringa.

** **resources** **  
Questa sezione specifica le informazioni sull'applicazione Amazon ECS da distribuire.  
Per ulteriori informazioni, consulta [AppSpec sezione «risorse» per le distribuzioni di Amazon ECS](reference-appspec-file-structure-resources.md#reference-appspec-file-structure-resources-ecs).

** **hooks** **  
Questa sezione specifica le funzioni Lambda da eseguire in specifici hook di eventi del ciclo di vita della distribuzione per convalidare la distribuzione.  
Per ulteriori informazioni, consulta [Elenco di eventi del ciclo di vita per una distribuzione Amazon ECS](reference-appspec-file-structure-hooks.md#reference-appspec-file-structure-hooks-list-ecs).

## AppSpec struttura dei file per le implementazioni AWS Lambda
<a name="lambda-appspec-structure"></a>

**Nota**  
Questo AppSpec file è scritto in YAML, ma puoi usare la stessa struttura per scrivere un AppSpec file per una distribuzione Lambda in JSON. Una stringa in un AppSpec file in formato JSON è sempre racchiusa tra virgolette («»).

```
version: 0.0
resources: 
  lambda-function-specifications
hooks: 
  deployment-lifecycle-event-mappings
```

In questa struttura:

** **versione** **  
Questa sezione specifica la versione del file. AppSpec Non modificare questo valore. È obbligatorio. Attualmente, l'unico valore consentito è **0.0**. È riservato CodeDeploy per usi futuri.  
Specifica **version** con una stringa.

** **resources** **  
Questa sezione specifica le informazioni sulla funzione Lambda da distribuire.  
Per ulteriori informazioni, consulta [AppSpec sezione «risorse» (solo Amazon ECS e AWS Lambda distribuzioni)](reference-appspec-file-structure-resources.md).

** **hooks** **  
Questa sezione specifica le funzioni Lambda da eseguire in occasione di eventi specifici del ciclo di vita della distribuzione per convalidare la distribuzione.  
Per ulteriori informazioni, consulta [AppSpec sezione 'hooks'](reference-appspec-file-structure-hooks.md).

## AppSpec struttura dei file per le distribuzioni EC2/on-premise
<a name="server-appspec-structure"></a>

```
version: 0.0
os: operating-system-name
files:
  source-destination-files-mappings
permissions:
  permissions-specifications
hooks:
  deployment-lifecycle-event-mappings
```

In questa struttura:

** **versione** **  
Questa sezione specifica la versione del file. AppSpec Non modificare questo valore. È obbligatorio. Attualmente, l'unico valore consentito è **0.0**. È riservato CodeDeploy per usi futuri.  
Specifica **version** con una stringa.

** **os** **  
In questa sezione viene specificato il valore del sistema operativo dell'istanza in cui effettui la distribuzione. È obbligatorio. È possibile specificare i seguenti valori:  
+ **linux**: l'istanza è un'istanza Amazon Linux, Ubuntu Server o RHEL.
+ **windows**: l'istanza è un'istanza di Windows Server.
Specifica **os** con una stringa.

** **files** **  
In questa sezione vengono specificati i nomi dei file che devono essere copiati nell'istanza durante l'evento **Install** della distribuzione.  
Per ulteriori informazioni, consulta [AppSpec sezione 'file' (solo distribuzioni EC2/on-premise)](reference-appspec-file-structure-files.md).

** **permissions** **  
In questa sezione viene specificato come le autorizzazioni speciali, se presenti, devono essere applicate alla sezione `files` quando vengono copiate nell'istanza. Questa sezione si applica solo alle istanze Amazon Linux, Ubuntu Server e Red Hat Enterprise Linux (RHEL).  
Per ulteriori informazioni, consultare [AppSpec sezione 'permessi' (solo distribuzioni EC2/locali)](reference-appspec-file-structure-permissions.md).

** **hooks** **  
In questa sezione vengono specificati gli script da eseguire per specifici eventi del ciclo di vita durante la distribuzione.  
Per ulteriori informazioni, consulta [AppSpec sezione 'hooks'](reference-appspec-file-structure-hooks.md).

**Topics**
+ [AppSpec struttura dei file per le distribuzioni di Amazon ECS](#ecs-appspec-structure)
+ [AppSpec struttura dei file per le implementazioni AWS Lambda](#lambda-appspec-structure)
+ [AppSpec struttura dei file per le distribuzioni EC2/on-premise](#server-appspec-structure)
+ [AppSpec sezione 'file' (solo distribuzioni EC2/on-premise)](reference-appspec-file-structure-files.md)
+ [AppSpec sezione «risorse» (solo Amazon ECS e AWS Lambda distribuzioni)](reference-appspec-file-structure-resources.md)
+ [AppSpec sezione 'permessi' (solo distribuzioni EC2/locali)](reference-appspec-file-structure-permissions.md)
+ [AppSpec sezione 'hooks'](reference-appspec-file-structure-hooks.md)