Selecione suas preferências de cookies

Usamos cookies essenciais e ferramentas semelhantes que são necessárias para fornecer nosso site e serviços. Usamos cookies de desempenho para coletar estatísticas anônimas, para que possamos entender como os clientes usam nosso site e fazer as devidas melhorias. Cookies essenciais não podem ser desativados, mas você pode clicar em “Personalizar” ou “Recusar” para recusar cookies de desempenho.

Se você concordar, a AWS e terceiros aprovados também usarão cookies para fornecer recursos úteis do site, lembrar suas preferências e exibir conteúdo relevante, incluindo publicidade relevante. Para aceitar ou recusar todos os cookies não essenciais, clique em “Aceitar” ou “Recusar”. Para fazer escolhas mais detalhadas, clique em “Personalizar”.

Executar compilações em lotes

Modo de foco
Executar compilações em lotes - AWS CodeBuild

É possível usar o AWS CodeBuild para executar compilações simultâneas e coordenadas de um projeto com compilações em lote.

Perfil de segurança

As compilações em lote introduzem um novo perfil de segurança na configuração em lote. Esse novo perfil é necessário, pois o CodeBuild deve ser capaz de chamar as ações StartBuild, StopBuild e RetryBuild em seu nome para executar compilações como parte de um lote. Os clientes devem usar um novo perfil, e não o mesmo perfil que usam na compilação, por dois motivos:

  • Fornecer ao perfil de compilação as permissões StartBuild, StopBuild e RetryBuild que permitem a uma única compilação iniciar mais compilações por meio do buildspec.

  • As compilações em lote do CodeBuild fornecem restrições que restringem o número de compilações e tipos de computação que podem ser usados para as compilações no lote. Se o perfil de compilação tiver essas permissões, será possível que as próprias compilações ignorem essas restrições.

Tipos de compilação em lote

O CodeBuild é compatível com os seguintes tipos de compilação em lote:

Grafo de compilação

Um grafo de compilação define um conjunto de tarefas que dependem de outras tarefas no lote.

O exemplo a seguir define um grafo de compilação que cria uma cadeia de dependências.

batch: fast-fail: false build-graph: - identifier: build1 env: variables: BUILD_ID: build1 ignore-failure: false - identifier: build2 buildspec: build2.yml env: variables: BUILD_ID: build2 depend-on: - build1 - identifier: build3 env: variables: BUILD_ID: build3 depend-on: - build2

Neste exemplo:

  • A build1 é executada primeiro porque não tem dependências.

  • A build2 tem uma dependência em build1, então a build2 é executada após a conclusão da build1.

  • A build3 tem uma dependência em build2, então a build3 é executada após a conclusão da build2.

Para obter mais informações sobre a sintaxe buildspec do grafo de compilação, consulte batch/build-graph.

Lista de compilações

Uma lista de compilações define várias tarefas que são executadas paralelamente.

O exemplo a seguir define uma lista de compilações. As compilações build1 e build2 serão executadas em paralelo.

batch: fast-fail: false build-list: - identifier: build1 env: variables: BUILD_ID: build1 ignore-failure: false - identifier: build2 buildspec: build2.yml env: variables: BUILD_ID: build2 ignore-failure: true

Para obter mais informações sobre a sintaxe buildspec da lista de compilações, consulte batch/build-list.

Matriz de compilações

Uma matriz de compilação define tarefas com configurações diferentes que são executadas paralelamente. O CodeBuild cria uma compilação separada para cada combinação de configuração possível.

O exemplo a seguir mostra uma matriz de compilações com dois arquivos buildspec e três valores para uma variável de ambiente.

batch: build-matrix: static: ignore-failure: false dynamic: buildspec: - matrix1.yml - matrix2.yml env: variables: MY_VAR: - VALUE1 - VALUE2 - VALUE3

Neste exemplo, o CodeBuild cria seis compilações:

  • matrix1.yml com $MY_VAR=VALUE1

  • matrix1.yml com $MY_VAR=VALUE2

  • matrix1.yml com $MY_VAR=VALUE3

  • matrix2.yml com $MY_VAR=VALUE1

  • matrix2.yml com $MY_VAR=VALUE2

  • matrix2.yml com $MY_VAR=VALUE3

Cada compilação terá as seguintes configurações:

  • ignore-failure definido como false

  • env/type definido como LINUX_CONTAINER

  • env/image definido como aws/codebuild/amazonlinux2-x86_64-standard:4.0

  • env/privileged-mode definido como true

Essas compilações são executadas em paralelo.

Para obter mais informações sobre a sintaxe buildspec da matriz de compilações, consulte batch/build-matrix.

Modo de relatório em lote

Se o provedor de origem do projeto for Bitbucket, GitHub ou GitHub Enterprise, e ele estiver configurado para comunicar os status de compilação ao provedor de origem, será possível selecionar como os status de compilação em lote serão enviados ao provedor de origem. É possível optar por enviar os status como um único relatório de status agregado para o lote ou ter o status de cada compilação no lote informado individualmente.

Para obter mais informações, consulte os tópicos a seguir.

Mais informações

Para obter mais informações, consulte os tópicos a seguir.

PrivacidadeTermos do sitePreferências de cookies
© 2025, Amazon Web Services, Inc. ou suas afiliadas. Todos os direitos reservados.