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á.
Usar o EB CLI com o AWS CodeBuild
O AWS CodeBuild compila o código-fonte, roda testes de unidade e produz artefatos prontos para implantação. É possível usar CodeBuild com a CLI do EB para automatizar a criação da aplicação a partir de seu código-fonte. A criação do ambiente e cada implantação subsequente iniciam com uma etapa de criação e com a implantação do aplicativo resultante.
nota
Algumas regiões não oferecem o CodeBuild. A integração entre o Elastic Beanstalk e o CodeBuild não funciona nessas regiões.
Para obter informações sobre os produtos da AWS oferecidos em cada região, consulte a Tabela de regiões
Criar um aplicativo
Como criar uma aplicação do Elastic Beanstalk que use CodeBuild
-
Inclua um arquivo de especificação de criação do CodeBuild,
buildspec.yml
, na pasta da aplicação. -
Adicione uma entrada
eb_codebuild_settings
com opções específicas do Elastic Beanstalk ao arquivo. -
Execute eb init na pasta.
nota
Não use os caracteres ponto (
.
) ou espaço (
O Elastic Beanstalk estende o formato de arquivo de especificação de compilação do CodeBuild para incluir as seguintes configurações adicionais:
eb_codebuild_settings:
CodeBuildServiceRole: role-name
ComputeType: size
Image: image
Timeout: minutes
CodeBuildServiceRole
-
O ARN ou nome da função de serviço do AWS Identity and Access Management (IAM) que o CodeBuild pode usar para interagir com serviços dependentes da AWS em seu nome. Este valor é obrigatório. Se você omiti-lo, qualquer comando eb create ou eb deploy subsequente apresentará falha.
Para saber mais sobre como criar uma função de serviço para o CodeBuild, consulte Construir uma função de serviço do CodeBuild no Guia do usuário do AWS CodeBuild.
nota
Você também precisa de permissões para executar ações no próprio CodeBuild. A política de usuário gerenciada do Elastic Beanstalk AdministratorAccess-AWSElasticBeanstalk inclui todas as permissões de ação necessárias do CodeBuild. Se você não estiver usando a política gerenciada, certifique-se de conceder as permissões a seguir na política de usuário.
"codebuild:CreateProject", "codebuild:DeleteProject", "codebuild:BatchGetBuilds", "codebuild:StartBuild"
Para obter mais detalhes, consulte Gerenciar políticas de usuário do Elastic Beanstalk.
ComputeType
-
A quantidade de recursos usados pelo contêiner do Docker no ambiente de criação do CodeBuild. Os valores válidos são BUILD_GENERAL1_SMALL, BUILD_GENERAL1_MEDIUM e BUILD_GENERAL1_LARGE.
Image
-
O nome da imagem do Docker Hub ou do Amazon ECR que o CodeBuild usa para o ambiente de compilação. Essa imagem do Docker deve conter bibliotecas de tempo de execução e ferramentas necessárias para criar o código e deve corresponder à plataforma de destino da aplicação. O CodeBuild gerencia e mantém um conjunto de imagens especificamente destinadas ao uso com o Elastic Beanstalk. É recomendado que você use uma delas. Para obter detalhes, consulte Imagens do Docker fornecidas pelo CodeBuild no Guia do usuário do AWS CodeBuild.
O valor
Image
é opcional. Se você omiti-lo, o comando eb init tentará escolher uma imagem que melhor corresponde à plataforma de destino. Além disso, se você executar eb init no modo interativo e ele falhar na escolha de uma imagem para você, será solicitado que você escolha uma. Ao final de uma inicialização bem-sucedida, eb init grava a imagem escolhida no arquivobuildspec.yml
. Timeout
-
A duração em minutos em que a compilação do CodeBuild é executado antes de atingir o tempo limite. Este valor é opcional. Para obter detalhes sobre valores padrão e válidos, consulte Criar um projeto de compilação no CodeBuild.
nota
Esse tempo limite controla a duração máxima para uma execução do CodeBuild, e a CLI do EB também o respeita como parte da primeira etapa para criar uma versão da aplicação. É diferente do valor que você pode especificar na opção
--timeout
dos comandos eb create ou eb deploy. O último valor controla a duração máxima que a CLI do EB aguarda para a criação ou atualização do ambiente.
Criar e implantar o código do aplicativo
Sempre que o código da aplicação precisar ser implantado, a CLI do EB usará o CodeBuild para executar uma compilação e, depois, implantará os artefatos de compilação resultantes no ambiente. Isso ocorre ao criar um ambiente do Elastic Beanstalk para a aplicação usando o comando eb create e sempre que você implantar alterações no código no ambiente usando o comando eb deploy.
Se a etapa do CodeBuild falhar, a criação ou a implantação do ambiente não será iniciada.