Executar compilações localmente com o agente do AWS CodeBuild
É possível usar o agente do AWS CodeBuild para executar compilações do CodeBuild em uma máquina local. Há agentes disponíveis para plataformas x86_64 e ARM.
Também é possível assinar para receber notificações quando novas versões do agente são publicadas.
Pré-requisitos
Antes de começar, será necessário fazer o seguinte:
-
Instale o Git na sua máquina local.
-
Instale e configure o Docker
na máquina local.
Configurar a imagem de compilação
Basta configurar a imagem de compilação na primeira vez em que executar o agente ou quando a imagem for alterada.
Como configurar a imagem de compilação
-
Se quiser usar uma imagem selecionada do Amazon Linux 2, será possível extraí-la do repositório público do Amazon ECR do CodeBuild em https://gallery.ecr.aws/codebuild/amazonlinux2-x86_64-standard
com o seguinte comando: $
docker pull public.ecr.aws/codebuild/amazonlinux2-x86_64-standard:4.0Como alternativa, se você deseja usar outra imagem do Linux, execute as seguintes etapas:
-
Clone o repositório de imagens do CodeBuild:
$
git clone https://github.com/aws/aws-codebuild-docker-images.git -
Mude para o diretório de imagens. Para este exemplo, use a imagem
aws/codebuild/standard:5.0
:$
cd aws-codebuild-docker-images/ubuntu/standard/5.0 -
Crie a imagem. Isso levará vários minutos.
$
docker build -t aws/codebuild/standard:5.0 .
-
-
Baixe o agente do CodeBuild.
Para baixar a versão x86_64 do agente, execute o seguinte comando:
$
docker pull public.ecr.aws/codebuild/local-builds:latestPara baixar a versão ARM do agente, execute o seguinte comando:
$
docker pull public.ecr.aws/codebuild/local-builds:aarch64 -
O agente do CodeBuild está disponível em https://gallery.ecr.aws/codebuild/local-builds
. A assinatura do Secure Hash Algorithm (SHA) para a versão x86_64 do agente é:
sha256:ccb19bdd7af94e4dc761e4c58c267e9455c28ec68d938086b4dc1cf8fe6b0940
A assinatura SHA para a versão ARM do agente é:
sha256:7d7b5d35d2ac4e062ae7ba8c662ffed15229a52d09bd0d664a7816c439679192
É possível usar o SHA para identificar a versão do agente. Para ver a assinatura SHA do agente, execute o seguinte comando e procure o SHA em
RepoDigests
:$
docker inspect public.ecr.aws/codebuild/local-builds:latest
Executar o agente do CodeBuild
Como executar o agente do CodeBuild
-
Mude para o diretório que contém a fonte do projeto de compilação.
-
Baixe o script codebuild_build.sh
. $
curl -O https://raw.githubusercontent.com/aws/aws-codebuild-docker-images/master/local_builds/codebuild_build.sh$
chmod +x codebuild_build.sh -
Execute o script
codebuild_build.sh
e especifique as imagens de contêiner e o diretório de saída:Para executar uma compilação x86_64, execute o seguinte comando:
$
./codebuild_build.sh -i<container-image>
-a<output directory>
Para executar uma compilação ARM, execute o seguinte comando:
$
./codebuild_build.sh -i<container-image>
-a<output directory>
-l public.ecr.aws/codebuild/local-builds:aarch64Substitua
<container-image>
pelo nome da imagem do contêiner, comoaws/codebuild/standard:5.0
oupublic.ecr.aws/codebuild/amazonlinux2-x86_64-standard:4.0
.O script inicia a imagem de compilação e executa a compilação no projeto no diretório atual. Para especificar a localização do projeto de compilação, adicione a opção
-s
ao comando script.<build project directory>
Receber notificações de novas versões do agente do CodeBuild
É possível assinar notificações do Amazon SNS para ser notificado quando novas versões do agente do AWS CodeBuild são lançadas.
Como assinar as notificações do agente do CodeBuild
-
Abra o console do Amazon SNS em https://console.aws.amazon.com/sns/v3/home
. -
Na barra de navegação, se ainda não estiver selecionada, altere a região da AWS para Leste dos EUA (Norte da Virgínia). É necessário selecionar essa região da AWS porque as notificações do Amazon SNS que está assinando são criadas nela.
-
No painel de navegação, escolha Assinaturas.
-
Selecione Criar assinatura.
-
Em Criar inscrição, faça o seguinte:
-
Para Topic ARN (ARN do tópico), use o seguinte nome do recurso da Amazon (ARN):
arn:aws:sns:us-east-1:850632864840:AWS-CodeBuild-Local-Agent-Updates
-
Em Protocol (Protocolo), escolha Email ou SMS.
-
Em Endpoint, escolha onde deseja receber as notificações (e-mail ou SMS). Digite um e-mail, um endereço ou número de telefone, incluindo o código de área.
-
Selecione Criar assinatura.
-
Se você escolher E-mail, receberá um e-mail solicitando que confirme a inscrição. Siga as instruções no e-mail para concluir sua inscrição.
Se não deseja mais receber essas notificações, use o procedimento a seguir para cancelar a assinatura.
-
Como cancelar a assinatura das notificações do agente do CodeBuild
-
Abra o console do Amazon SNS em https://console.aws.amazon.com/sns/v3/home
. -
No painel de navegação, escolha Assinaturas.
-
Selecione a assinatura e, em Actions (Ações), escolha Delete subscriptions (Excluir assinaturas). Quando for solicitada sua confirmação, escolha Delete.