

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Référence Batch Build Buildspec
<a name="batch-build-buildspec"></a>

Cette rubrique contient la référence buildspec pour les propriétés de construction par lots.

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

Mappage facultatif. Les paramètres de génération par lots pour le projet.

**batch ou échec rapide**  
Facultatif. Spécifie le comportement de la génération par lots lorsqu'une ou plusieurs tâches de génération échouent.    
`false`  
 La valeur par défaut. Toutes les versions en cours seront terminées.   
`true`  
Toutes les versions en cours seront arrêtées en cas d'échec de l'une des tâches de génération.

Par défaut, toutes les tâches de génération par lots sont exécutées avec les paramètres de génération tels que `env` et`phases`, spécifiés dans le fichier buildspec. Vous pouvez remplacer les paramètres de construction par défaut en spécifiant des `env` valeurs différentes ou un fichier de spécification de construction différent dans le paramètre. `batch/<batch-type>/buildspec`

Le contenu de la `batch` propriété varie en fonction du type de construction par lots spécifié. Les types de construction par lots possibles sont les suivants :
+ [`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>

Définit un *graphe de construction*. Un graphe de génération définit un ensemble de tâches qui dépendent d'autres tâches du lot. Pour de plus amples informations, veuillez consulter [Construire un graphe](batch-build.md#batch_build_graph).

Cet élément contient un ensemble de tâches de construction. Chaque tâche de génération contient les propriétés suivantes.

**identifiant**  
Obligatoire. Identifiant de la tâche.

**build spec**  
Facultatif. Le chemin et le nom du fichier buildspec à utiliser pour cette tâche. Si ce paramètre n'est pas spécifié, le fichier buildspec actuel est utilisé.

**session de débogage**  
Facultatif. Valeur booléenne qui indique si le débogage de session est activé pour cette génération par lots. Pour plus d'informations sur le débogage de session, consultez[Déboguer les builds avec le gestionnaire de session](session-manager.md).    
`false`  
Le débogage de session est désactivé.   
`true`  
Le débogage de session est activé. 

**dépendre**  
Facultatif. Tableau d'identificateurs de tâches dont dépend cette tâche. Cette tâche ne sera pas exécutée tant que ces tâches ne seront pas terminées.

**env**  
Facultatif. L'environnement de génération remplace la tâche. Cela peut contenir les propriétés suivantes :    
**type de calcul**  
Identifiant du type de calcul à utiliser pour la tâche. Voir **ComputeType** [Modes et types de calcul de l'environnement de création](build-env-ref-compute-types.md) in pour les valeurs possibles.  
**flotte**  
Identifiant de la flotte à utiliser pour la tâche. Pour plus d’informations, consultez [Exécutez des builds sur des flottes à capacité réservée](fleets.md).  
**image**  
Identifiant de l'image à utiliser pour la tâche. Voir **Identifiant de l'image** dans [Images Docker fournies par CodeBuild](build-env-ref-available.md) pour les valeurs possibles.  
**mode privilégié**  
Valeur booléenne qui indique s'il faut exécuter le démon Docker dans un conteneur Docker. Défini sur `true` uniquement si le projet de génération est utilisé pour créer des images Docker. À défaut, une génération qui tente d'interagir avec le démon Docker échoue. Le paramètre par défaut est `false`.  
**type**  
Identifiant du type d'environnement à utiliser pour la tâche. Voir **Type d'environnement** [Modes et types de calcul de l'environnement de création](build-env-ref-compute-types.md) pour les valeurs possibles.  
**variables**  
Les variables d'environnement qui seront présentes dans l'environnement de construction. Pour plus d’informations, consultez [env/variables](build-spec-ref.md#build-spec.env.variables).
Notez que le **type de calcul** et le **parc** ne peuvent pas être fournis dans le même identifiant pour une seule version.

**ignorer l'échec**  
Facultatif. Une valeur booléenne qui indique si l'échec de cette tâche de génération peut être ignoré.    
`false`  
 La valeur par défaut. Si cette tâche de génération échoue, la génération par lots échouera.   
`true`  
Si cette tâche de génération échoue, la génération par lots peut toujours réussir. 

Voici un exemple d'entrée buildspec du graphe de construction :

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

Définit une *liste de build*. Une liste de construction est utilisée pour définir un certain nombre de tâches exécutées en parallèle. Pour de plus amples informations, veuillez consulter [Construire une liste](batch-build.md#batch_build_list).

Cet élément contient un ensemble de tâches de construction. Chaque tâche de génération contient les propriétés suivantes.

**identifiant**  
Obligatoire. Identifiant de la tâche.

**build spec**  
Facultatif. Le chemin et le nom du fichier buildspec à utiliser pour cette tâche. Si ce paramètre n'est pas spécifié, le fichier buildspec actuel est utilisé.

**session de débogage**  
Facultatif. Valeur booléenne qui indique si le débogage de session est activé pour cette génération par lots. Pour plus d'informations sur le débogage de session, consultez[Déboguer les builds avec le gestionnaire de session](session-manager.md).    
`false`  
Le débogage de session est désactivé.   
`true`  
Le débogage de session est activé. 

**env**  
Facultatif. L'environnement de génération remplace la tâche. Cela peut contenir les propriétés suivantes :    
**type de calcul**  
Identifiant du type de calcul à utiliser pour la tâche. Voir **ComputeType** [Modes et types de calcul de l'environnement de création](build-env-ref-compute-types.md) in pour les valeurs possibles.  
**flotte**  
Identifiant de la flotte à utiliser pour la tâche. Pour plus d’informations, consultez [Exécutez des builds sur des flottes à capacité réservée](fleets.md).  
**image**  
Identifiant de l'image à utiliser pour la tâche. Voir **Identifiant de l'image** dans [Images Docker fournies par CodeBuild](build-env-ref-available.md) pour les valeurs possibles.  
**mode privilégié**  
Valeur booléenne qui indique s'il faut exécuter le démon Docker dans un conteneur Docker. Défini sur `true` uniquement si le projet de génération est utilisé pour créer des images Docker. À défaut, une génération qui tente d'interagir avec le démon Docker échoue. Le paramètre par défaut est `false`.  
**type**  
Identifiant du type d'environnement à utiliser pour la tâche. Voir **Type d'environnement** [Modes et types de calcul de l'environnement de création](build-env-ref-compute-types.md) pour les valeurs possibles.  
**variables**  
Les variables d'environnement qui seront présentes dans l'environnement de construction. Pour plus d’informations, consultez [env/variables](build-spec-ref.md#build-spec.env.variables).
Notez que le **type de calcul** et le **parc** ne peuvent pas être fournis dans le même identifiant pour une seule version.

**ignorer l'échec**  
Facultatif. Une valeur booléenne qui indique si l'échec de cette tâche de génération peut être ignoré.    
`false`  
 La valeur par défaut. Si cette tâche de génération échoue, la génération par lots échouera.   
`true`  
Si cette tâche de génération échoue, la génération par lots peut toujours réussir. 

Voici un exemple d'entrée buildspec de liste de construction :

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

Définit une *matrice de construction*. Une matrice de génération définit les tâches avec différentes configurations qui s'exécutent en parallèle. CodeBuild crée une version distincte pour chaque combinaison de configuration possible. Pour de plus amples informations, veuillez consulter [Construire une matrice](batch-build.md#batch_build_matrix).

**statique**  
Les propriétés statiques s'appliquent à toutes les tâches de génération.    
**ignorer l'échec**  
Facultatif. Une valeur booléenne qui indique si l'échec de cette tâche de génération peut être ignoré.    
`false`  
 La valeur par défaut. Si cette tâche de génération échoue, la génération par lots échouera.   
`true`  
Si cette tâche de génération échoue, la génération par lots peut toujours réussir.   
**env**  
Facultatif. L'environnement de construction prévaut pour toutes les tâches.     
**mode privilégié**  
Valeur booléenne qui indique s'il faut exécuter le démon Docker dans un conteneur Docker. Défini sur `true` uniquement si le projet de génération est utilisé pour créer des images Docker. À défaut, une génération qui tente d'interagir avec le démon Docker échoue. Le paramètre par défaut est `false`.  
**type**  
Identifiant du type d'environnement à utiliser pour la tâche. Voir **Type d'environnement** [Modes et types de calcul de l'environnement de création](build-env-ref-compute-types.md) pour les valeurs possibles.

**dynamique**  
Les propriétés dynamiques définissent la matrice de construction.    
**build spec**  
Facultatif. Tableau contenant le chemin et les noms des fichiers buildspec à utiliser pour ces tâches. Si ce paramètre n'est pas spécifié, le fichier buildspec actuel est utilisé.   
**env**  
Facultatif. L'environnement de génération prévaut pour ces tâches.    
**type de calcul**  
Tableau contenant les identificateurs des types de calcul à utiliser pour ces tâches. Voir **ComputeType** [Modes et types de calcul de l'environnement de création](build-env-ref-compute-types.md) in pour les valeurs possibles.  
**image**  
Tableau contenant les identifiants des images à utiliser pour ces tâches. Voir **Identifiant de l'image** dans [Images Docker fournies par CodeBuild](build-env-ref-available.md) pour les valeurs possibles.  
**variables**  
Un tableau qui contient les variables d'environnement qui seront présentes dans les environnements de génération pour ces tâches. Pour plus d’informations, consultez [env/variables](build-spec-ref.md#build-spec.env.variables).

Voici un exemple d'entrée buildspec de matrice de construction :

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

Pour de plus amples informations, veuillez consulter [Construire une matrice](batch-build.md#batch_build_matrix).

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

Définit un *ventilateur de construction.* Un fanout de construction est utilisé pour définir une tâche divisée en plusieurs versions exécutées en parallèle. Pour de plus amples informations, veuillez consulter [Exécuter des tests parallèles dans des builds par lots](parallel-test.md).

Cet élément contient une tâche de génération qui peut être divisée en plusieurs versions. La `build-fanout` section contient les propriétés suivantes.

**parallélisme**  
Obligatoire. Le nombre de versions qui exécuteront des tests en parallèle.

**ignorer l'échec**  
Facultatif. Une valeur booléenne qui indique si l'échec de l'une des tâches de génération du fanout peut être ignoré. Cette valeur d'**ignore-failure** sera appliquée à toutes les versions de fanout.    
**false**  
 La valeur par défaut. Si une tâche de génération de fanout échoue, la génération par lots échouera.  
**true**  
Si une tâche de génération de fanout échoue, la génération par lots peut toujours réussir.

Voici un exemple d'entrée buildspec de build fanout :

```
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'
```

Pour plus d’informations, consultez [Construire un ventilateur](batch-build.md#batch_build_fanout) et [Utilisez la `codebuild-tests-run` commande CLI](parallel-test-tests-run.md).