

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.

# Gestion des versions d'application
<a name="applications-versions"></a>

Cette rubrique explique les versions des applications et explique comment les créer et les gérer.

Elastic Beanstalk crée une version d'application chaque fois que vous chargez le code source. Généralement, cette situation se produit lorsque vous créez un environnement, ou lorsque vous chargez et déployez le code via la [console de gestion de l'environnement](environments-console.md) ou l'[interface de ligne de commande EB](eb-cli3.md). Elastic Beanstalk supprime ces versions de l'application en fonction de la stratégie de cycle de vie de l'application et lorsque vous supprimez l'application. Pour plus d'informations sur la stratégie de cycle de vie de l'application, consultez [Configuration des paramètres du cycle de vie des versions d'application](applications-lifecycle.md).

Vous pouvez également télécharger un bundle de fichiers source sans le déployer depuis la [console de gestion des applications](applications-console.md) ou avec la commande de l'interface de ligne de commande EB **[**eb appversion**](eb3-appversion.md)**. Elastic Beanstalk stocke les lots source dans Amazon Simple Storage Service (Amazon S3) et ne les supprime pas automatiquement.

Vous pouvez appliquer des balises à une version d'application lorsque vous la créez, et modifier les balises de versions d'applications existantes. Pour en savoir plus, consultez [Étiquette des versions d'application](applications-versions-tagging.md).

## Création de versions d'applications
<a name="applications-versions.creating"></a>

Vous pouvez également créer une nouvelle version d'application à l'aide de l'interface de ligne de commande EB. Pour plus d'informations, veuillez consulter[**eb appversion**](eb3-appversion.md) au chapitre *Commandes de l'interface de ligne de commande EB*.

**Note**  
Au fil du temps, votre application peut accumuler un grand nombre de versions de l'application. Pour économiser de l'espace de stockage et éviter d'atteindre le [quota de versions de l'application](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_elastic_beanstalk), il est conseillé de supprimer les versions dont vous n'avez plus besoin. 

Le fichier que vous spécifiez dans la procédure suivante est associé à votre candidature. Vous pouvez déployer la version d'application dans un environnement nouveau ou existant.

**Pour créer une version d’application**

1. Ouvrez la console [Elastic Beanstalk](https://console.aws.amazon.com/elasticbeanstalk), puis **dans la liste des régions, sélectionnez votre**. Région AWS

1. Dans le panneau de navigation, choisissez **Applications**, puis sélectionnez le nom de votre application dans la liste.

1. Dans le volet de navigation, recherchez le nom de votre application et choisissez **Application versions (Versions d'application)**.

1. Choisissez **Charger**. Utilisez le formulaire à l'écran pour télécharger le [bundle source de votre application](applications-sourcebundle.md).
**Note**  
La taille de fichier du bundle de fichiers source ne doit pas dépasser 62,5 Mo.

1. Le cas échéant, fournissez une brève description, et ajouter les clés et valeurs de balise.

1. Choisissez **Charger**.

## Supprimer des versions de l'application
<a name="applications-versions.deleting"></a>

Vous pouvez également supprimer une version d'application à l'aide de l'interface de ligne de commande EB. Pour plus d'informations, veuillez consulter[**eb appversion**](eb3-appversion.md) au chapitre *Commandes de l'interface de ligne de commande EB*.

**Note**  
La suppression d'une version d'application n'a aucune incidence sur les environnements qui exécutent actuellement cette version.

Vous pouvez également configurer Elastic Beanstalk pour supprimer automatiquement les anciennes versions en configurant les paramètres du cycle de vie de la version d'application. Si vous configurez ces paramètres de cycle de vie, ils sont appliqués lorsque vous créez de nouvelles versions de l'application. Par exemple, si vous configurez un maximum de 25 versions d'application, Elastic Beanstalk supprime la version la plus ancienne lorsque vous chargez une 26e version. Si vous définissez une ancienneté maximale de 90 jours, toute version dont l'ancienneté dépasse 90 jours est supprimée lorsque vous chargez une nouvelle version. Pour en savoir plus, consultez [Configuration des paramètres du cycle de vie des versions d'application](applications-lifecycle.md).

**Pour supprimer une version d’application**

1. Ouvrez la console [Elastic Beanstalk](https://console.aws.amazon.com/elasticbeanstalk), puis **dans la liste des régions, sélectionnez votre**. Région AWS

1. Dans le panneau de navigation, choisissez **Applications**, puis sélectionnez le nom de votre application dans la liste.

1. Dans le volet de navigation, recherchez le nom de votre application et choisissez **Application versions (Versions d'application)**.

1. Sélectionnez une ou plusieurs versions de l’application à supprimer.

1. Choisissez **Actions**, puis **Delete (Supprimer)**.

1. (Facultatif) Pour laisser le bundle des fichiers source d'application pour ces versions d'application dans votre compartiment Amazon Simple Storage Service (Amazon S3), désactivez la case **Delete versions from Amazon S3 (Supprimer les versions d'Amazon S3)**.

1. Sélectionnez **Delete (Supprimer)**.

Si vous ne choisissez pas de supprimer le lot source d'Amazon S3, Elastic Beanstalk supprime toujours la version de ses enregistrements. Toutefois, le bundle source est laissé dans votre [compartiment de stockage Elastic Beanstalk](AWSHowTo.S3.md). Le quota de versions d'application s'applique uniquement aux versions des pistes Elastic Beanstalk. Vous pouvez donc supprimer des versions pour respecter le quota, mais conserver tous les bundles de fichiers source dans Amazon S3.

**Note**  
Le quota de versions d'application ne s'applique pas aux bundles de fichiers source, mais vous pouvez cependant encourir des frais Amazon S3 et conserver des informations personnelles même si vous n'en avez plus besoin. Elastic Beanstalk ne supprime jamais les bundles de fichiers source automatiquement. Vous devez supprimer les bundles de fichiers source lorsque vous n'en avez plus besoin.

# Configuration des paramètres du cycle de vie des versions d'application
<a name="applications-lifecycle"></a>

Cette rubrique explique les politiques et les quotas qu'Elastic Beanstalk applique aux versions de votre application dans un environnement donné, y compris la durée pendant laquelle une version de l'application reste dans un environnement.

Chaque fois que vous téléchargez une nouvelle version de votre application avec la console Elastic Beanstalk ou l'interface de ligne de commande EB, Elastic Beanstalk crée une [version d'application](applications-versions.md). Si vous ne supprimez pas les versions que vous n'utilisez plus, vous finirez par atteindre le [quota des versions d'application](https://docs.aws.amazon.com/general/latest/gr/elasticbeanstalk.html#limits_elastic_beanstalk) et vous ne pourrez pas créer de nouvelles versions de cette application.

Vous pouvez éviter d'atteindre le quota en appliquant une *stratégie de cycle de vie des versions d'application* à vos applications. Une stratégie de cycle de vie demande à Elastic Beanstalk de supprimer les versions d'application qui sont obsolètes, ou de supprimer des versions d'application lorsque le nombre total de versions pour une application dépasse un nombre spécifié.

Elastic Beanstalk applique la stratégie de cycle de vie d'une application chaque fois que vous créez une nouvelle version d'application, et supprime jusqu'à 100 versions chaque fois que la stratégie de cycle de vie est appliquée. Elastic Beanstalk supprime les anciennes versions après avoir créé la nouvelle version et ne comptabilise pas la nouvelle version dans le nombre de versions maximum défini dans la stratégie.

Elastic Beanstalk ne supprime pas les versions d'application en cours d'utilisation par un environnement, ou celles déployées dans des environnements qui ont été arrêtés moins de dix semaines avant le déclenchement de la stratégie.

Le quota de versions d'application s'applique à toutes les applications dans une région. Si vous avez plusieurs applications, configurez chacune d'entre elles avec une stratégie de cycle de vie appropriée pour éviter d'atteindre le quota. Par exemple, si vous avez 10 applications dans une région et que le quota est de 1 000 versions d'application, envisagez de définir une stratégie de cycle de vie avec un quota de 99 versions d'application pour toutes les applications, ou définissez d'autres valeurs dans chaque application tant que le total est inférieur à 1 000 versions d'application. Elastic Beanstalk applique uniquement la stratégie si la création de la version d'application réussit. Si vous avez déjà atteint le quota, vous devez donc supprimer certaines versions manuellement avant de créer une nouvelle version.

Par défaut, Elastic Beanstalk quitte le [bundle de fichiers source](applications-sourcebundle.md) de la version d'application dans Amazon S3 pour éviter la perte de données. Vous pouvez supprimer le bundle de fichiers source pour économiser de l'espace.

Vous pouvez définir les paramètres du cycle de vie via la CLI Elastic Beanstalk et. APIs Voir[**eb appversion**](eb3-appversion.md), [CreateApplication](https://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_CreateApplication.html)(en utilisant le `ResourceLifecycleConfig` paramètre), et [UpdateApplicationResourceLifecycle](https://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_UpdateApplicationResourceLifecycle.html)pour plus de détails.

## Configuration des paramètres du cycle de vie d'une application dans la console
<a name="applications-lifecycle-console"></a>

Vous pouvez spécifier les paramètres de cycle de vie dans la console Elastic Beanstalk.

**Pour spécifier les paramètres de cycle de vie de votre application**

1. Ouvrez la console [Elastic Beanstalk](https://console.aws.amazon.com/elasticbeanstalk), puis **dans la liste des régions, sélectionnez votre**. Région AWS

1. Dans le panneau de navigation, choisissez **Applications**, puis sélectionnez le nom de votre application dans la liste.

1. Dans le volet de navigation, recherchez le nom de votre application et choisissez **Application versions (Versions d'application)**.

1. Cliquez sur **Paramètres**.

1. Utilisez le formulaire à l'écran pour configurer les paramètres de cycle de vie de l'application.

1. Choisissez **Enregistrer**.

La page des paramètres vous permet d'effectuer les actions suivantes.
+ Configurer les paramètres de cycle de vie en fonction du nombre total de versions d'application ou de l'âge des versions d'application.
+ Spécifier si le bundle de fichiers source doit être supprimé dans S3 lorsque la version de l'application est supprimée.
+ Spécifier le rôle sous lequel la version de l'application est supprimée. Pour inclure toutes les autorisations requises pour la suppression de la version, choisissez le rôle de service Elastic Beanstalk par défaut, nommé `aws-elasticbeanstalk-service-role`, ou un autre rôle de service à l'aide des stratégies de service gérées Elastic Beanstalk. Pour de plus amples informations, veuillez consulter [Gestion des rôles de service Elastic Beanstalk](iam-servicerole.md).

# Étiquette des versions d'application
<a name="applications-versions-tagging"></a>

Cette rubrique explique les avantages du balisage des versions de votre application Elastic Beanstalk et explique comment gérer les balises.

Vous pouvez appliquer des balises aux versions de vos AWS Elastic Beanstalk applications. Les balises sont des paires clé-valeur associées à des AWS ressources. Pour plus d'informations sur l'étiquette des ressources Elastic Beanstalk, les cas d'utilisation, les contraintes de clé et de valeur d'identification, et les types de ressources pris en charge, consultez [Étiquette des ressources d'application Elastic Beanstalk](applications-tagging-resources.md).

Vous pouvez spécifier des identifications lorsque vous créez une version d'application. Dans une version d'application, vous pouvez ajouter ou supprimer des identifications, ainsi que mettre à jour les valeurs des identifications existantes. Vous pouvez ajouter jusqu'à 50 identifications par version de l'application.

## Ajout d'identifications lors de la création de la version de l'application
<a name="applications-versions-tagging.create"></a>

Lorsque vous utilisez la console Elastic Beanstalk pour [créer un environnement](environments-create-wizard.md), et que vous choisissez de charger une version de votre code d'application, vous pouvez spécifier des clés et valeurs d'identification à associer à la nouvelle version d'application.

Vous pouvez également utiliser la console Elastic Beanstalk pour [charger une version d'application](applications-versions.md) sans immédiatement l'utiliser dans un environnement. Vous pouvez spécifier des clés et des valeurs d'identification lorsque vous chargez une version d'application.

Avec le AWS CLI ou d'autres clients basés sur une API, ajoutez des balises en utilisant le `--tags` paramètre de la commande. **[create-application-version](https://docs.aws.amazon.com/cli/latest/reference/elasticbeanstalk/create-application-version.html)**

```
$ aws elasticbeanstalk create-application-version \
      --tags Key=mytag1,Value=value1 Key=mytag2,Value=value2 \
      --application-name my-app --version-label v1
```

Lorsque vous utilisez l'interface de ligne de commande EB pour créer ou mettre à jour un environnement, une version d'application est créée à partir du code que vous déployez. Il n'y a pas de moyen direct d'étiqueter une version d'application lors de sa création via l'interface de ligne de commande EB. Consultez la section suivante pour en savoir plus sur l'ajout d'identifications à une version d'application existante.

## Gestion des identifications de la version d'une application existante
<a name="applications-versions-tagging.manage"></a>

Vous pouvez ajouter, mettre à jour et supprimer des identifications dans une version d'application Elastic Beanstalk existante.

**Pour gérer les identifications d'une version d'application à l'aide de la console Elastic Beanstalk**

1. Ouvrez la console [Elastic Beanstalk](https://console.aws.amazon.com/elasticbeanstalk), puis **dans la liste des régions, sélectionnez votre**. Région AWS

1. Dans le panneau de navigation, choisissez **Applications**, puis sélectionnez le nom de votre application dans la liste.

1. Dans le volet de navigation, recherchez le nom de votre application et choisissez **Application versions (Versions d'application)**.

1. Sélectionnez la version d’application que vous souhaitez gérer.

1. Choisissez **Actions**, puis **Manage Tags (Gérer les identifications)**.

1. Utilisez le formulaire à l'écran pour ajouter, mettre à jour ou supprimer des identifications.

1. Pour enregistrer les modifications, cliquez sur **Appliquer** en bas de la page.

Si vous utilisez l'interface de ligne de commande EB pour mettre à jour la version de votre application, utilisez **[eb tags](eb3-tags.md)** pour ajouter, mettre à jour, supprimer ou répertorier des identifications.

Par exemple, la commande suivante répertorie les identifications d’une version d'application.

```
~/workspace/my-app$ eb tags --list --resource "arn:aws:elasticbeanstalk:us-east-2:my-account-id:applicationversion/my-app/my-version"
```

La commande suivante met à jour l'identification `mytag1` et supprime la l'identification `mytag2`.

```
~/workspace/my-app$ eb tags --update mytag1=newvalue --delete mytag2 \
      --resource "arn:aws:elasticbeanstalk:us-east-2:my-account-id:applicationversion/my-app/my-version"
```

Pour obtenir une liste complète des options et d'autres exemples, consultez `eb tags`.

Avec le AWS CLI ou d'autres clients basés sur une API, utilisez la **[list-tags-for-resource](https://docs.aws.amazon.com/cli/latest/reference/elasticbeanstalk/list-tags-for-resource.html)** commande pour répertorier les balises d'une version d'application.

```
$ aws elasticbeanstalk list-tags-for-resource --resource-arn "arn:aws:elasticbeanstalk:us-east-2:my-account-id:applicationversion/my-app/my-version"
```

Utilisez la commande **[update-tags-for-resource](https://docs.aws.amazon.com/cli/latest/reference/elasticbeanstalk/update-tags-for-resource.html)** pour ajouter, mettre à jour ou supprimer des identifications dans une version d'application.

```
$ aws elasticbeanstalk update-tags-for-resource \
      --tags-to-add Key=mytag1,Value=newvalue --tags-to-remove mytag2 \
      --resource-arn "arn:aws:elasticbeanstalk:us-east-2:my-account-id:applicationversion/my-app/my-version"
```

Spécifiez les balises à ajouter et les identifications à mettre à jour dans le paramètre `--tags-to-add` de **update-tags-for-resource**. Une identification inexistante est ajoutée et la valeur d'une identification existante est mise à jour.

**Note**  
Pour utiliser certaines AWS CLI commandes et certaines de l'interface de ligne de commande EB avec une version d'application Elastic Beanstalk, vous avez besoin de l'ARN de la version de l'application. Vous pouvez extraire l'ARN à l'aide de la commande suivante.  

```
$ aws elasticbeanstalk describe-application-versions --application-name my-app --version-label my-version
```