

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.

# CI/CD Implémentation de l'intégration avec votre environnement Elastic Beanstalk
<a name="deployments.cicd"></a>

Elastic Beanstalk s'intègre à de nombreux outils pour automatiser le flux de travail CI/CD de développement de vos applications. CI/CD les pratiques vous permettent de créer, de tester et de déployer automatiquement vos applications avec une intervention manuelle minimale. Continuous delivery/deployment (CD) étend l'intégration continue (CI) en automatisant le processus de déploiement. Vous pouvez créer des pipelines de déploiement rationalisés à l'aide de AWS services tels que Jenkins CodePipeline ou d'outils tiers tels que Jenkins, GitLab afin de garantir des déploiements cohérents et fiables dans vos environnements Elastic Beanstalk.

**Topics**
+ [AWS sources pour commencer](#deployments.cicd.aws-sites)
+ [Ressources supplémentaires](#deployments.cicd.aws-services.third-party)
+ [Utilisation d' GitHub actions pour le déploiement sur Elastic Beanstalk](deploying-github-actions.md)

## AWS sources pour commencer
<a name="deployments.cicd.aws-sites"></a>

La liste suivante présente les CI/CD outils et les AWS ressources correspondantes qui fournissent des step-by-step conseils pour créer des pipelines de déploiement automatisés dans les environnements Elastic Beanstalk :
+ **AWS CodePipeline**— Ce didacticiel [du centre de ressources AWS Getting](https://aws.amazon.com/getting-started/hands-on/continuous-deployment-pipeline/) Started explique comment configurer un pipeline de déploiement continu vers Elastic GitHub Beanstalk à partir de S3 ou. AWS CodeCommit
+ **GitHub Actions** — Découvrez comment configurer [Utilisation d' GitHub actions pour le déploiement sur Elastic Beanstalk](deploying-github-actions.md) des flux de travail basés sur YAML afin de configurer un pipeline de déploiement continu vers Elastic Beanstalk directement depuis. GitHub
+ **GitLab**— Ce billet de [blog consacré à la productivité des AWS DevOps développeurs](https://aws.amazon.com/blogs/devops/deploy-a-docker-application-on-aws-elastic-beanstalk-with-gitlab/) explique comment configurer des pipelines GitLab continus pour déployer des applications Node.js dans les environnements Elastic Beanstalk Docker.
+ **Azure DevOps** — Ce billet [.NET on AWS Blog](https://aws.amazon.com/blogs/dotnet/deploy-to-elastic-beanstalk-with-azure-devops/) vous explique comment implémenter un pipeline de déploiement continu à partir d'un référentiel Azure DevOps Git vers Elastic Beanstalk à l'aide d'Azure Pipelines.

## Ressources supplémentaires
<a name="deployments.cicd.aws-services.third-party"></a>

Les outils et ressources tiers suivants peuvent vous aider à implémenter des pipelines de déploiement automatisés dans les environnements Elastic Beanstalk :
+ **Jenkins** — Le [plugin AWS EBDeployment Jenkins](https://plugins.jenkins.io/awseb-deployment-plugin/) permet un déploiement direct dans les environnements Elastic Beanstalk à partir de votre page Jenkins Job Configuration.
+ **Circle CI :** — The [Orbs for Elastic Beanstalk](https://circleci.com/developer/orbs/orb/circleci/aws-elastic-beanstalk) fournit des packages de configuration réutilisables pour déployer et dimensionner des applications sur Elastic Beanstalk.
+ **Bitbucket Pipelines** — L'article [Deploy Elastic Beanstalk Application using](https://avishayil.medium.com/deploy-to-elastic-beanstalk-using-bitbucket-pipelines-189eb75cf052) Bitbucket Pipelines fournit un exemple de configuration de base pour implémenter des pipelines Bitbucket avec Elastic Beanstalk.

# Utilisation d' GitHub actions pour le déploiement sur Elastic Beanstalk
<a name="deploying-github-actions"></a>

[GitHub Les actions](https://docs.github.com/en/actions) peuvent déployer automatiquement votre application sur Elastic Beanstalk lorsque vous envoyez des modifications de code à votre référentiel. L'action [Elastic Beanstalk](https://github.com/aws-actions/aws-elasticbeanstalk-deploy) Deploy fournit une interface YAML simple qui gère la création de versions d'applications, le téléchargement de bundles de sources sur Amazon S3 et le déploiement dans votre environnement Elastic Beanstalk.

## Exemple de flux de travail
<a name="deploying-github-actions-example"></a>

L'exemple de flux de travail suivant déploie une application dans un environnement Elastic Beanstalk chaque fois que vous la transférez vers la branche. `main` Créez un `.yml` fichier dans votre dépôt sous`.github/workflows/`.

**Example GitHub Workflow d'actions pour le déploiement d'Elastic Beanstalk**  

```
name: Deploy to Elastic Beanstalk

on:
  push:
    branches:
      - main

permissions:
  id-token: write
  contents: read

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v4

      - name: Configure AWS credentials
        uses: aws-actions/configure-aws-credentials@v4
        with:
          role-to-assume: arn:aws:iam::123456789012:role/my-github-actions-role
          aws-region: us-east-1

      - name: Deploy to Elastic Beanstalk
        uses: aws-actions/aws-elasticbeanstalk-deploy@v1.0.0
        with:
          aws-region: us-east-1
          application-name: my-application
          environment-name: my-application-env
```

Ce flux de travail extrait votre référentiel, utilise [OpenID Connect (OIDC)](https://docs.github.com/en/actions/security-for-github-actions/security-hardening-your-deployments/configuring-openid-connect-in-amazon-web-services) pour s'authentifier AWS via l'action [Configure AWS Credentials](https://github.com/aws-actions/configure-aws-credentials), puis déploie votre application sur Elastic Beanstalk. L'action de déploiement regroupe le contenu de votre référentiel, télécharge le bundle source sur Amazon S3, crée une nouvelle version de l'application et crée ou met à jour votre environnement. Par défaut, il attend que le déploiement soit terminé et que l'environnement revienne à un état sain.

Pour plus d'options de configuration et des exemples avancés, consultez l'action README sur laquelle vous pouvez accéder à [Elastic Beanstalk](https://github.com/aws-actions/aws-elasticbeanstalk-deploy#readme) Deploy. GitHub

## Ressources supplémentaires
<a name="deploying-github-actions-resources"></a>
+ Action de [déploiement d'Elastic Beanstalk](https://github.com/aws-actions/aws-elasticbeanstalk-deploy) sur GitHub
+ [Action de configuration AWS des informations d'identification](https://github.com/aws-actions/configure-aws-credentials) sur GitHub
+ [Configuration d'OpenID Connect dans Amazon Web Services (documentation](https://docs.github.com/en/actions/security-for-github-actions/security-hardening-your-deployments/configuring-openid-connect-in-amazon-web-services)) GitHub