

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

# Riferimento buildspec per la compilazione in batch
<a name="batch-build-buildspec"></a>

Questo argomento contiene il riferimento buildspec per le proprietà di compilazione in batch.

## batch
<a name="build-spec.batch"></a>

Mappatura opzionale. Le impostazioni di compilazione in batch per il progetto.

**batch/ fast-fail**  
Facoltativo. Specifica il comportamento della compilazione in batch quando una o più attività di compilazione falliscono.    
`false`  
Il valore predefinito. Tutte le build in esecuzione verranno completate.   
`true`  
Tutte le build in esecuzione verranno interrotte quando una delle attività di compilazione fallisce.

Per impostazione predefinita, tutte le attività di compilazione in batch vengono eseguite con le impostazioni di compilazione come `env` e`phases`, specificate nel file buildspec. È possibile sovrascrivere le impostazioni di build predefinite specificando `env` valori diversi o un file buildspec diverso nel parametro. `batch/<batch-type>/buildspec`

Il contenuto della `batch` proprietà varia in base al tipo di build batch specificato. I possibili tipi di build in batch sono:
+ [`batch/build-graph`](#build-spec.batch.build-graph)
+ [`batch/build-list`](#build-spec.batch.build-list)
+ [`batch/build-matrix`](#build-spec.batch.build-matrix)
+ [`batch/build-fanout`](#build-spec.batch.build-fanout)

## `batch/build-graph`
<a name="build-spec.batch.build-graph"></a>

Definisce un *grafico di costruzione*. Un grafico di compilazione definisce un insieme di attività che dipendono da altre attività del batch. Per ulteriori informazioni, consulta [Costruisci un grafico](batch-build.md#batch_build_graph).

Questo elemento contiene una serie di attività di compilazione. Ogni attività di compilazione contiene le seguenti proprietà.

**identificatore**  
Obbligatorio. L'identificatore dell'attività.

**buildspec**  
Facoltativo. Il percorso e il nome del file buildspec da utilizzare per questa attività. Se questo parametro non è specificato, viene utilizzato il file buildspec corrente.

**sessione di debug**  
Facoltativo. Un valore booleano che indica se il debug della sessione è abilitato per questa build in batch. Per ulteriori informazioni sul debug delle sessioni, vedere. [Compilazioni di debug con Session Manager](session-manager.md)    
`false`  
Il debug della sessione è disabilitato.   
`true`  
Il debug della sessione è abilitato. 

**dipende da**  
Facoltativo. Una serie di identificatori di attività da cui dipende questa attività. Questa attività non verrà eseguita fino al completamento di tali attività.

**env**  
Facoltativo. L'ambiente di compilazione sostituisce l'attività. Questo può contenere le seguenti proprietà:    
**tipo di calcolo**  
L'identificatore del tipo di calcolo da utilizzare per l'attività. Vedere **ComputeType** [Modi e tipi di calcolo dell'ambiente di creazione](build-env-ref-compute-types.md) in per i valori possibili.  
**flotta**  
L'identificatore della flotta da utilizzare per l'attività. Per ulteriori informazioni, consulta [Run si basa su flotte a capacità riservata](fleets.md).  
**image**  
L'identificatore dell'immagine da utilizzare per l'attività. Vedi **Identificatore di immagine** in [Immagini Docker fornite da CodeBuild](build-env-ref-available.md) per i valori possibili.  
**modalità privilegiata**  
Un valore booleano che indica se eseguire il demone Docker all'interno di un contenitore Docker. Imposta su `true` solo se il progetto di compilazione viene utilizzato per creare immagini Docker. In caso contrario, una build che tenta di interagire con il daemon Docker fallisce. L'impostazione predefinita è `false`.  
**tipo**  
L'identificatore del tipo di ambiente da utilizzare per l'attività. Vedi **Environment type** in [Modi e tipi di calcolo dell'ambiente di creazione](build-env-ref-compute-types.md) per i valori possibili.  
**variabili**  
Le variabili di ambiente che saranno presenti nell'ambiente di compilazione. Per ulteriori informazioni, consulta [env/variables](build-spec-ref.md#build-spec.env.variables).
Tieni presente che il **tipo di calcolo** e il **parco macchine** non possono essere forniti nello stesso identificatore di una singola build.

**ignore-failure**  
Facoltativo. Un valore booleano che indica se un errore di questa operazione di compilazione può essere ignorato.    
`false`  
Il valore predefinito. Se questa operazione di compilazione fallisce, la compilazione in batch avrà esito negativo.   
`true`  
Se questa operazione di compilazione fallisce, la compilazione in batch può comunque avere successo. 

Di seguito è riportato un esempio di una voce buildspec del grafico build:

```
batch:
  fast-fail: false
  build-graph:
    - identifier: build1
      env:
        variables:
          BUILD_ID: build1
      ignore-failure: false
    - identifier: build2
      buildspec: build2.yml
      env:
        variables:
          BUILD_ID: build2
      depend-on:
        - build1
    - identifier: build3
      env:
        variables:
          BUILD_ID: build3
      depend-on:
        - build2
    - identifier: build4
      env:
        compute-type: ARM_LAMBDA_1GB
    - identifier: build5
      env:
        fleet: fleet_name
```

## `batch/build-list`
<a name="build-spec.batch.build-list"></a>

*Definisce un elenco di build.* Un elenco di compilazione viene utilizzato per definire una serie di attività eseguite in parallelo. Per ulteriori informazioni, consulta [Crea un elenco](batch-build.md#batch_build_list).

Questo elemento contiene una serie di attività di compilazione. Ogni attività di compilazione contiene le seguenti proprietà.

**identificatore**  
Obbligatorio. L'identificatore dell'attività.

**buildspec**  
Facoltativo. Il percorso e il nome del file buildspec da utilizzare per questa attività. Se questo parametro non è specificato, viene utilizzato il file buildspec corrente.

**sessione di debug**  
Facoltativo. Un valore booleano che indica se il debug della sessione è abilitato per questa build in batch. Per ulteriori informazioni sul debug delle sessioni, vedere. [Compilazioni di debug con Session Manager](session-manager.md)    
`false`  
Il debug della sessione è disabilitato.   
`true`  
Il debug della sessione è abilitato. 

**env**  
Facoltativo. L'ambiente di compilazione sostituisce l'attività. Questo può contenere le seguenti proprietà:    
**tipo di calcolo**  
L'identificatore del tipo di calcolo da utilizzare per l'attività. Vedere **ComputeType** [Modi e tipi di calcolo dell'ambiente di creazione](build-env-ref-compute-types.md) in per i valori possibili.  
**flotta**  
L'identificatore della flotta da utilizzare per l'attività. Per ulteriori informazioni, consulta [Run si basa su flotte a capacità riservata](fleets.md).  
**image**  
L'identificatore dell'immagine da utilizzare per l'attività. Vedi **Identificatore di immagine** in [Immagini Docker fornite da CodeBuild](build-env-ref-available.md) per i valori possibili.  
**modalità privilegiata**  
Un valore booleano che indica se eseguire il demone Docker all'interno di un contenitore Docker. Imposta su `true` solo se il progetto di compilazione viene utilizzato per creare immagini Docker. In caso contrario, una build che tenta di interagire con il daemon Docker fallisce. L'impostazione predefinita è `false`.  
**tipo**  
L'identificatore del tipo di ambiente da utilizzare per l'attività. Vedi **Environment type** in [Modi e tipi di calcolo dell'ambiente di creazione](build-env-ref-compute-types.md) per i valori possibili.  
**variabili**  
Le variabili di ambiente che saranno presenti nell'ambiente di compilazione. Per ulteriori informazioni, consulta [env/variables](build-spec-ref.md#build-spec.env.variables).
Tieni presente che il **tipo di calcolo** e il **parco macchine** non possono essere forniti nello stesso identificatore di una singola build.

**ignore-failure**  
Facoltativo. Un valore booleano che indica se un errore di questa operazione di compilazione può essere ignorato.    
`false`  
Il valore predefinito. Se questa operazione di compilazione fallisce, la compilazione in batch avrà esito negativo.   
`true`  
Se questa operazione di compilazione fallisce, la compilazione in batch può comunque avere successo. 

Di seguito è riportato un esempio di voce buildspec dell'elenco di compilazione:

```
batch:
  fast-fail: false
  build-list:
    - identifier: build1
      env:
        variables:
          BUILD_ID: build1
      ignore-failure: false
    - identifier: build2
      buildspec: build2.yml
      env:
        variables:
          BUILD_ID: build2
      ignore-failure: true
    - identifier: build3
      env:
        compute-type: ARM_LAMBDA_1GB
    - identifier: build4
      env:
        fleet: fleet_name
    - identifier: build5
      env:
        compute-type: GENERAL_LINUX_XLAGRE
```

## `batch/build-matrix`
<a name="build-spec.batch.build-matrix"></a>

*Definisce una matrice di compilazione.* Una matrice di compilazione definisce le attività con diverse configurazioni eseguite in parallelo. CodeBuild crea una build separata per ogni possibile combinazione di configurazione. Per ulteriori informazioni, consulta [Costruisci una matrice](batch-build.md#batch_build_matrix).

**statico**  
Le proprietà statiche si applicano a tutte le attività di compilazione.    
**ignore-failure**  
Facoltativo. Un valore booleano che indica se un errore di questa operazione di compilazione può essere ignorato.    
`false`  
Il valore predefinito. Se questa operazione di compilazione fallisce, la compilazione in batch avrà esito negativo.   
`true`  
Se questa operazione di compilazione fallisce, la compilazione in batch può comunque avere successo.   
**env**  
Facoltativo. L'ambiente di compilazione ha la precedenza su tutte le attività.     
**modalità privilegiata**  
Un valore booleano che indica se eseguire il demone Docker all'interno di un contenitore Docker. Imposta su `true` solo se il progetto di compilazione viene utilizzato per creare immagini Docker. In caso contrario, una build che tenta di interagire con il daemon Docker fallisce. L'impostazione predefinita è `false`.  
**tipo**  
L'identificatore del tipo di ambiente da utilizzare per l'attività. Vedi **Environment type** in [Modi e tipi di calcolo dell'ambiente di creazione](build-env-ref-compute-types.md) per i valori possibili.

**dinamico**  
Le proprietà dinamiche definiscono la matrice di costruzione.    
**buildspec**  
Facoltativo. Un array che contiene il percorso e i nomi dei file buildspec da utilizzare per queste attività. Se questo parametro non è specificato, viene utilizzato il file buildspec corrente.   
**env**  
Facoltativo. L'ambiente di compilazione ha la precedenza su queste attività.    
**tipo di calcolo**  
Un array che contiene gli identificatori dei tipi di calcolo da utilizzare per queste attività. Vedere **ComputeType** [Modi e tipi di calcolo dell'ambiente di creazione](build-env-ref-compute-types.md) in per i valori possibili.  
**image**  
Un array che contiene gli identificatori delle immagini da utilizzare per queste attività. Vedi **Image identifier** in [Immagini Docker fornite da CodeBuild](build-env-ref-available.md) per i possibili valori.  
**variabili**  
Un array che contiene le variabili di ambiente che saranno presenti negli ambienti di compilazione per queste attività. Per ulteriori informazioni, consulta [env/variables](build-spec-ref.md#build-spec.env.variables).

Di seguito è riportato un esempio di una voce buildspec della matrice di compilazione:

```
batch:
  build-matrix:
    static:
      ignore-failure: false
    dynamic:
      buildspec: 
        - matrix1.yml
        - matrix2.yml
      env:
        variables:
          MY_VAR:
            - VALUE1
            - VALUE2
            - VALUE3
```

Per ulteriori informazioni, consulta [Costruisci una matrice](batch-build.md#batch_build_matrix).

## `batch/build-fanout`
<a name="build-spec.batch.build-fanout"></a>

*Definisce un fanout di build.* Un build fanout viene utilizzato per definire un'attività suddivisa in più build eseguite in parallelo. Per ulteriori informazioni, consulta [Esegui test paralleli in build in batch](parallel-test.md).

Questo elemento contiene un'attività di compilazione che può essere suddivisa in più build. La `build-fanout` sezione contiene le seguenti proprietà.

**parallelismo**  
Obbligatorio. Il numero di build che eseguiranno i test in parallelo.

**ignore-failure**  
Facoltativo. Un valore booleano che indica se un errore in una qualsiasi delle attività di compilazione di fanout può essere ignorato. Questo valore di **ignore-failure** verrà applicato a tutte le build di fanout.    
**false**  
Il valore predefinito. Se un'operazione di compilazione di fanout fallisce, la compilazione in batch avrà esito negativo.  
**true**  
Se un'operazione di compilazione di fanout fallisce, la compilazione in batch può comunque avere successo.

Di seguito è riportato un esempio di una voce build fanout buildspec:

```
version: 0.2

batch:
   fast-fail: false 
   build-fanout:
     parallelism: 5
     ignore-failure: false

phases:
  install:
    commands:
      - npm install
   build:
    commands:
      - mkdir -p test-results
      - cd test-results
      - |
        codebuild-tests-run \
         --test-command 'npx jest --runInBand --coverage' \
         --files-search "codebuild-glob-search '**/test/**/*.test.js'" \
         --sharding-strategy 'equal-distribution'
```

Per ulteriori informazioni, consulta [Crea fanout](batch-build.md#batch_build_fanout) e [Usa il comando `codebuild-tests-run` CLI](parallel-test-tests-run.md).