

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Implementación de CI/CD la integración con su entorno de Elastic Beanstalk
<a name="deployments.cicd"></a>

Elastic Beanstalk se integra CI/CD con muchas herramientas para automatizar el flujo de trabajo de desarrollo de aplicaciones. CI/CD las prácticas le permiten crear, probar e implementar sus aplicaciones automáticamente con una intervención manual mínima. Continuous delivery/deployment (CD) amplía la integración continua (CI) al automatizar el proceso de implementación. Puede crear canalizaciones de implementación simplificadas mediante AWS servicios CodePipeline o herramientas de terceros, como Jenkins, GitLab para garantizar despliegues consistentes y confiables en sus entornos de Elastic Beanstalk.

**Topics**
+ [AWS fuentes para empezar](#deployments.cicd.aws-sites)
+ [Recursos adicionales](#deployments.cicd.aws-services.third-party)
+ [Uso de GitHub acciones para implementar en Elastic Beanstalk](deploying-github-actions.md)

## AWS fuentes para empezar
<a name="deployments.cicd.aws-sites"></a>

La siguiente lista destaca CI/CD las herramientas y los AWS recursos correspondientes que proporcionan step-by-step orientación para crear canalizaciones de implementación automatizadas en los entornos de Elastic Beanstalk:
+ **AWS CodePipeline**— Este AWS tutorial [del Centro de recursos](https://aws.amazon.com/getting-started/hands-on/continuous-deployment-pipeline/) de introducción le muestra cómo configurar una canalización de despliegue continuo a Elastic GitHub Beanstalk desde S3 o. AWS CodeCommit
+ **GitHub Acciones**: consulte [Uso de GitHub acciones para implementar en Elastic Beanstalk](deploying-github-actions.md) para obtener información sobre cómo configurar flujos de trabajo basados en YAML para configurar una canalización de implementación continua a Elastic Beanstalk directamente desde. GitHub
+ **GitLab**— Esta entrada del [blog sobre productividad para AWS DevOps desarrolladores](https://aws.amazon.com/blogs/devops/deploy-a-docker-application-on-aws-elastic-beanstalk-with-gitlab/) muestra cómo configurar canalizaciones GitLab continuas para implementar aplicaciones de Node.js en entornos Docker de Elastic Beanstalk.
+ **Azure DevOps**: esta entrada [de.NET en el AWS blog le guía sobre](https://aws.amazon.com/blogs/dotnet/deploy-to-elastic-beanstalk-with-azure-devops/) la implementación de un proceso de implementación continuo desde un repositorio de DevOps Git de Azure hasta Elastic Beanstalk mediante Azure Pipelines.

## Recursos adicionales
<a name="deployments.cicd.aws-services.third-party"></a>

Las siguientes herramientas y recursos de terceros pueden ayudar a implementar canalizaciones de implementación automatizadas en los entornos de Elastic Beanstalk:
+ **Jenkins**: el [complemento AWS EBDeployment Jenkins](https://plugins.jenkins.io/awseb-deployment-plugin/) permite el despliegue directo en los entornos de Elastic Beanstalk desde la página de configuración de trabajos de Jenkins.
+ **Circle CI:** [Orbs para Elastic Beanstalk](https://circleci.com/developer/orbs/orb/circleci/aws-elastic-beanstalk) proporciona paquetes de configuración reutilizables para implementar y escalar aplicaciones a Elastic Beanstalk.
+ **Canalizaciones en Bitbucket**: el artículo [Deploy Elastic Beanstalk Application using Bitbucket Pipelines](https://avishayil.medium.com/deploy-to-elastic-beanstalk-using-bitbucket-pipelines-189eb75cf052) proporciona un ejemplo de configuración básica para implementar canalizaciones en Bitbucket con Elastic Beanstalk.

# Uso de GitHub acciones para implementar en Elastic Beanstalk
<a name="deploying-github-actions"></a>

[GitHub Actions](https://docs.github.com/en/actions) puede implementar automáticamente la aplicación en Elastic Beanstalk al introducir cambios de código en el repositorio. La acción de despliegue de [Elastic](https://github.com/aws-actions/aws-elasticbeanstalk-deploy) Beanstalk proporciona una interfaz YAML sencilla que gestiona la creación de versiones de aplicaciones, la carga de paquetes de código fuente en Amazon S3 y la implementación en el entorno de Elastic Beanstalk.

## Ejemplo de flujo de trabajo
<a name="deploying-github-actions-example"></a>

El siguiente flujo de trabajo de ejemplo implementa una aplicación en un entorno de Elastic Beanstalk cada vez que se envía a la sucursal. `main` Cree un `.yml` archivo en su repositorio en. `.github/workflows/`

**Example GitHub Flujo de trabajo de acciones para la implementación de 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
```

Este flujo de trabajo comprueba el repositorio, utiliza [OpenID Connect (OIDC)](https://docs.github.com/en/actions/security-for-github-actions/security-hardening-your-deployments/configuring-openid-connect-in-amazon-web-services) para autenticarse AWS mediante la acción [Configurar AWS credenciales](https://github.com/aws-actions/configure-aws-credentials) y, a continuación, implementa la aplicación en Elastic Beanstalk. La acción de despliegue empaqueta el contenido del repositorio, carga el paquete fuente en Amazon S3, crea una nueva versión de la aplicación y crea o actualiza el entorno. De forma predeterminada, espera a que se complete la implementación y que el entorno vuelva a su estado correcto.

Para obtener más opciones de configuración y ejemplos avanzados, consulte la acción README de [Elastic Beanstalk](https://github.com/aws-actions/aws-elasticbeanstalk-deploy#readme) Deploy en. GitHub

## Recursos adicionales
<a name="deploying-github-actions-resources"></a>
+ Acción de [Elastic Beanstalk Deploy en](https://github.com/aws-actions/aws-elasticbeanstalk-deploy) GitHub
+ [Acción de configuración de credenciales AWS](https://github.com/aws-actions/configure-aws-credentials) en GitHub
+ [Configuración de OpenID Connect en Amazon Web Services (documentación](https://docs.github.com/en/actions/security-for-github-actions/security-hardening-your-deployments/configuring-openid-connect-in-amazon-web-services)) GitHub