

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Automatize a implantação do seu aplicativo AWS SAM
<a name="serverless-deploying-modify-pipeline"></a>

Em AWS SAM, a forma como você automatiza a implantação do seu AWS SAM aplicativo varia de acordo com o CI/CD sistema que você está usando. Por esse motivo, os exemplos desta seção mostram como configurar vários CI/CD sistemas para automatizar a criação de aplicativos sem servidor em uma imagem de contêiner de AWS SAM compilação. Essas imagens de contêiner de construção facilitam a criação e o empacotamento de aplicativos sem servidor usando o. AWS SAMCLI

Os procedimentos do CI/CD pipeline existente para implantar aplicativos sem servidor AWS SAM são um pouco diferentes, dependendo do CI/CD sistema que você está usando.

Os tópicos a seguir fornecem exemplos de como configurar seu CI/CD sistema para criar aplicativos sem servidor em uma imagem de contêiner de AWS SAM compilação:

**Topics**
+ [Usando AWS CodePipeline para implantar com AWS SAM](deploying-using-codepipeline.md)
+ [Usando o Bitbucket Pipelines para implantar com AWS SAM](deploying-using-bitbucket.md)
+ [Usando o Jenkins para implantar com AWS SAM](deploying-using-jenkins.md)
+ [Usando GitLab CI/CD para implantar com AWS SAM](deploying-using-gitlab.md)
+ [Usando GitHub ações para implantar com AWS SAM](deploying-using-github.md)

# Usando AWS CodePipeline para implantar com AWS SAM
<a name="deploying-using-codepipeline"></a>

Para configurar seu [AWS CodePipeline](https://docs.aws.amazon.com/codepipeline/latest/userguide/welcome.html)pipeline para automatizar a criação e a implantação do seu AWS SAM aplicativo, seu CloudFormation modelo e `buildspec.yml` arquivo devem conter linhas que façam o seguinte:

1. Faça referência a uma imagem de contêiner de construção com o tempo de execução necessário a partir das imagens disponíveis. O exemplo a seguir usa a imagem do contêiner de compilação do `public.ecr.aws/sam/build-nodejs20.x`.

1. Configure os estágios do pipeline para executar os AWS SAM comandos necessários da interface de linha de comando (CLI). O exemplo a seguir executa dois comandos AWS SAM CLI: **sam build** e **sam deploy** (com as opções necessárias).

Este exemplo pressupõe que você tenha declarado todas as funções e camadas em seu arquivo AWS SAM de modelo com`runtime: nodejs20.x`.

**CloudFormation trecho do modelo:**

```
  CodeBuildProject:
    Type: AWS::CodeBuild::Project
    Properties:
      Environment:
        ComputeType: BUILD_GENERAL1_SMALL
        Image: public.ecr.aws/sam/build-nodejs20.x
        Type: LINUX_CONTAINER
      ...
```

**`buildspec.yml` snippet:**

```
version: 0.2
phases:
  build:
    commands:
      - sam build
      - sam deploy --no-confirm-changeset --no-fail-on-empty-changeset
```

Para obter a lista das imagens de contêiner disponíveis para a criação do Amazon Elastic Container Registry (Amazon ECR), consulte [Repositórios de imagens para AWS SAM](serverless-image-repositories.md).

# Usando o Bitbucket Pipelines para implantar com AWS SAM
<a name="deploying-using-bitbucket"></a>

Para configurar seu [Bitbucket Pipeline](https://support.atlassian.com/bitbucket-cloud/docs/get-started-with-bitbucket-pipelines/) para automatizar a criação e a implantação do seu AWS SAM aplicativo, seu `bitbucket-pipelines.yml` arquivo deve conter linhas que façam o seguinte:

1. Faça referência a uma imagem de contêiner de construção com o tempo de execução necessário a partir das imagens disponíveis. O exemplo a seguir usa a imagem do contêiner de compilação do `public.ecr.aws/sam/build-nodejs20.x`.

1. Configure os estágios do pipeline para executar os AWS SAM comandos necessários da interface de linha de comando (CLI). O exemplo a seguir executa dois comandos AWS SAM CLI: **sam build** e **sam deploy** (com as opções necessárias).

Este exemplo pressupõe que você tenha declarado todas as funções e camadas em seu arquivo AWS SAM de modelo com`runtime: nodejs20.x`.

```
image: public.ecr.aws/sam/build-nodejs20.x

pipelines:
  branches:
    main: # branch name
      - step:
          name: Build and Package
          script:
            - sam build
            - sam deploy --no-confirm-changeset --no-fail-on-empty-changeset
```

Para obter a lista das imagens de contêiner disponíveis para a criação do Amazon Elastic Container Registry (Amazon ECR), consulte [Repositórios de imagens para AWS SAM](serverless-image-repositories.md).

# Usando o Jenkins para implantar com AWS SAM
<a name="deploying-using-jenkins"></a>

Para configurar seu pipeline do [Jenkins](https://www.jenkins.io/) para automatizar a criação e a implantação do seu AWS SAM aplicativo, você `Jenkinsfile` deve conter linhas que façam o seguinte:

1. Faça referência a uma imagem de contêiner de construção com o tempo de execução necessário a partir das imagens disponíveis. O exemplo a seguir usa a imagem do contêiner de compilação do `public.ecr.aws/sam/build-nodejs20.x`.

1. Configure os estágios do pipeline para executar os AWS SAM comandos necessários da interface de linha de comando (CLI). O exemplo a seguir executa dois comandos AWS SAM CLI: **sam build** e **sam deploy** (com as opções necessárias).

Este exemplo pressupõe que você tenha declarado todas as funções e camadas em seu arquivo AWS SAM de modelo com`runtime: nodejs20.x`.

```
pipeline {
    agent { docker { image 'public.ecr.aws/sam/build-nodejs20.x' } }
    stages {
        stage('build') {
            steps {
                sh 'sam build'
                sh 'sam deploy --no-confirm-changeset --no-fail-on-empty-changeset'
            }
        }
    }
}
```

Para obter a lista das imagens de contêiner disponíveis para a criação do Amazon Elastic Container Registry (Amazon ECR), consulte [Repositórios de imagens para AWS SAM](serverless-image-repositories.md).

# Usando GitLab CI/CD para implantar com AWS SAM
<a name="deploying-using-gitlab"></a>

Para configurar seu [GitLab](https://about.gitlab.com)pipeline para automatizar a criação e a implantação do seu AWS SAM aplicativo, seu `gitlab-ci.yml` arquivo deve conter linhas que façam o seguinte:

1. Faça referência a uma imagem de contêiner de construção com o tempo de execução necessário a partir das imagens disponíveis. O exemplo a seguir usa a imagem do contêiner de compilação do `public.ecr.aws/sam/build-nodejs20.x`.

1. Configure os estágios do pipeline para executar os AWS SAM comandos necessários da interface de linha de comando (CLI). O exemplo a seguir executa dois comandos AWS SAM CLI: **sam build** e **sam deploy** (com as opções necessárias).

Este exemplo pressupõe que você tenha declarado todas as funções e camadas em seu arquivo AWS SAM de modelo com`runtime: nodejs20.x`.

```
image: public.ecr.aws/sam/build-nodejs20.x
deploy:
  script:
    - sam build
    - sam deploy --no-confirm-changeset --no-fail-on-empty-changeset
```

Para obter a lista das imagens de contêiner disponíveis para a criação do Amazon Elastic Container Registry (Amazon ECR), consulte [Repositórios de imagens para AWS SAM](serverless-image-repositories.md).

# Usando GitHub ações para implantar com AWS SAM
<a name="deploying-using-github"></a>

Para configurar seu [GitHub](https://github.com/)pipeline para automatizar a criação e a implantação do seu AWS SAM aplicativo, você deve primeiro instalar a interface de linha de AWS SAM comando (CLI) em seu host. Você pode usar [GitHub Ações](https://github.com/features/actions) em seu GitHub fluxo de trabalho para ajudar nessa configuração.

O exemplo GitHub de fluxo de trabalho a seguir configura um host Ubuntu usando uma série de GitHub ações e, em seguida, executa AWS SAMCLI comandos para criar e implantar um AWS SAM aplicativo:

```
on:
  push:
    branches:
      - main
jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - uses: actions/setup-python@v3
      - uses: aws-actions/setup-sam@v2
      - uses: aws-actions/configure-aws-credentials@v1
        with:
          aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
          aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
          aws-region: us-east-2
      - run: sam build --use-container
      - run: sam deploy --no-confirm-changeset --no-fail-on-empty-changeset
```

Para obter a lista das imagens de contêiner disponíveis para a criação do Amazon Elastic Container Registry (Amazon ECR), consulte [Repositórios de imagens para AWS SAM](serverless-image-repositories.md).