Alterar configurações do projeto de compilação no AWS CodeBuild
Você pode usar o console do AWS CodeBuild, a AWS CLI ou os AWS SDKs para alterar as configurações de um projeto de build.
Se você adicionar relatórios de teste a um projeto de compilação, verifique se o perfil do IAM tem as permissões descritas em Permissões de relatório de teste.
Tópicos
Alterar configurações de um projeto de compilação (console)
Para alterar as configurações de um projeto de compilação, execute o seguinte procedimento:
Abra o console do AWS CodeBuild em https://console.aws.amazon.com/codesuite/codebuild/home
. -
No painel de navegação, selecione Projetos de compilação.
-
Execute um destes procedimentos:
-
Selecione o link para o projeto de compilação que você deseja alterar e selecione Build details (Detalhes da compilação).
-
Selecione o botão ao lado do projeto de compilação que você deseja alterar, selecione View details (Visualizar detalhes) e, em seguida, selecione Build details (Detalhes da compilação).
-
É possível modificar as seguintes seções:
Configuração de projetos
Na seção Configuração do projeto, selecione Editar. Quando as alterações forem concluídas, selecione Atualizar configuração para salvar a nova configuração.
É possível modificar as propriedades a seguir.
- Descrição
-
Insira uma descrição opcional do projeto de compilação para ajudar outros usuários a entender para que esse projeto é usado.
- Emblema da compilação
-
Selecione Habilitar emblema da compilação para que o status de compilação do projeto fique visível e possa ser incorporado. Para obter mais informações, consulte Exemplo de emblemas de compilação.
nota
O emblema de compilação não se aplicará se o provedor de origem for Amazon S3.
- Habilitar limite de compilações simultâneas
-
Se você quiser limitar o número de compilações simultâneas para esse projeto, execute as seguintes etapas:
-
Selecione Restringir número de compilações simultâneas que este projeto pode iniciar.
-
Em Limite de compilações simultâneas, insira o número máximo de compilações simultâneas permitidas para esse projeto. Esse limite não pode ser maior que o limite de compilações simultâneas definido para a conta. Se você tentar inserir um número maior que o limite da conta, uma mensagem de erro será exibida.
Novas compilações só são iniciadas se o número atual de compilações for menor ou igual a esse limite. Se a contagem de compilações atual atender a esse limite, novas compilações serão limitadas e não serão executadas.
-
- Habilitar acesso a compilações públicas
-
Para disponibilizar os resultados de compilação do projeto ao público, incluindo usuários sem acesso a uma conta da AWS, selecione Habilitar acesso a compilações públicas e confirme que você deseja tornar públicos os resultados da compilação. As seguintes propriedades são usadas para projetos de compilações públicas:
- Perfil de serviço de compilação pública
-
Selecione Novo perfil de serviço se quiser que o CodeBuild crie um perfil de serviço para você, ou Perfil de serviço existente se quiser usar um perfil de serviço existente.
O perfil de serviço de compilação pública permite que o CodeBuild leia o CloudWatch Logs e baixe os artefatos do Amazon S3 para as compilações do projeto. Isso é necessário para disponibilizar os logs e os artefatos de compilação do projeto ao público.
- Perfil de serviço
-
Insira o nome do novo perfil de serviço ou de um perfil de serviço existente.
Para tornar os resultados de compilação do projeto privados, desmarque Habilitar acesso a compilações públicas.
Para obter mais informações, consulte Obtenha URLs públicos de projetos de compilação.
Atenção
Lembre-se do seguinte ao tornar públicos os resultados de compilação do projeto:
-
Todos os resultados de compilação, os logs e os artefatos de um projeto, inclusive compilações executadas quando o projeto era privado, ficam disponíveis ao público.
-
Todos os logs e os artefatos de compilação ficam disponíveis ao público. Variáveis de ambiente, código-fonte e outras informações confidenciais podem ter sido enviados aos logs e aos artefatos de compilação. É preciso ter cuidado com as informações enviadas aos logs de compilação. Algumas das práticas recomendadas são:
-
Não armazene valores confidenciais, em especial, IDs de chave de acesso da AWS e chaves de acesso secretas em variáveis de ambiente. Recomendamos usar um Amazon EC2 Systems Manager Parameter Store ou o AWS Secrets Manager para armazenar valores confidenciais.
-
Siga Práticas recomendadas para usar webhooks para limitar quais entidades podem acionar uma compilação e não armazene o buildspec no próprio projeto, para garantir que os webhooks sejam o mais seguros possível.
-
-
Um usuário mal-intencionado pode usar compilações públicas para distribuir artefatos danosos. Recomendamos que os administradores do projeto analisem todas as solicitações pull para verificar se a solicitação pull é uma alteração legítima. Também recomendamos que você valide todos os artefatos com as somas de verificação para garantir que os artefatos corretos estejam sendo baixados.
- Mais informações
-
Em Tags, insira o nome e o valor das tags que os serviços compatíveis da AWS deverão usar. Use Adicionar linha para adicionar uma tag. É possível adicionar até 50 tags.
Origem
Na seção Origem, escolha Editar. Quando as alterações forem concluídas, selecione Atualizar configuração para salvar a nova configuração.
É possível modificar as seguintes propriedades:
- Provedor de origem
-
Escolha o tipo de provedor do código-fonte. Use as seguintes listas para fazer seleções adequadas ao provedor de origem:
nota
O CodeBuild não é compatível com o Bitbucket Server.
Environment
Na seção Ambiente, selecione Editar. Quando as alterações forem concluídas, selecione Atualizar configuração para salvar a nova configuração.
É possível modificar as seguintes propriedades:
- Modelo de provisionamento
-
Para alterar o modelo de provisionamento, escolha Alterar modelo de provisionamento e faça o seguinte:
-
Para usar frotas sob demanda gerenciadas pelo AWS CodeBuild, escolha Sob demanda. Com as frotas sob demanda, o CodeBuild fornece computação para suas compilações. As máquinas são destruídas quando a compilação termina. As frotas sob demanda são totalmente gerenciadas e incluem recursos de escalabilidade automática para lidar com picos de demanda.
-
Para usar frotas de capacidade reservada gerenciadas pelo AWS CodeBuild, escolha Capacidade reservada e selecione o Nome da frota. Com frotas de capacidade reservada, você configura um conjunto de instâncias dedicadas para seu ambiente de compilação. Essas máquinas permanecem ociosas, prontas para processar compilações ou testes imediatamente e reduzem a duração da compilação. Com frotas de capacidade reservada, suas máquinas estão sempre funcionando e continuarão a incorrer em custos enquanto forem provisionadas.
Para mais informações, consulte Executar compilações em frotas de capacidade reservada.
-
- Imagem do ambiente
-
Para alterar a imagem de compilação, escolha Substituir imagem e faça o seguinte:
-
Para usar uma imagem do Docker gerenciada pelo AWS CodeBuild, selecione Imagem gerenciada e faça as escolhas em Sistema operacional, Runtime(s), Imagem e Versão da imagem. Faça uma seleção em Environment type (Tipo de ambiente) se estiver disponível.
-
Para usar outra imagem do Docker, selecione Custom image (Imagem personalizada). Em Tipo de ambiente, selecione ARM, Linux, Linux GPU ou Windows. Se você selecionar Other registry (Outro registro), em External registry URL (URL de registro externo), insira o nome e a tag da imagem do Docker no Docker Hub usando o formato
. Se você escolher Amazon ECR, use Repositório do Amazon ECR e Imagem do Amazon ECR para selecionar a imagem do Docker na conta da AWS.docker repository/docker image name -
Para usar uma imagem privada do Docker, selecione Imagem personalizada. Em Tipo de ambiente, selecione ARM, Linux, Linux GPU ou Windows. Em Image registry (Registro da imagem), selecione Other registry (Outro registro) e insira o ARN das credenciais da imagem privada do Docker. As credenciais devem ser criadas pelo Secrets Manager. Para obter mais informações, consulte O que é o AWS Secrets Manager? no Guia do usuário do AWS Secrets Manager.
nota
O CodeBuild substitui o
ENTRYPOINTpara as imagens personalizadas do Docker. -
- Perfil de serviço
Execute um destes procedimentos:
-
Se você não tiver um perfil de serviço do CodeBuild, selecione Novo perfil de serviço. No campo Role name, digite o nome da nova função.
-
Se você tiver um perfil de serviço do CodeBuild, selecione Perfil de serviço existente. Em ARN do perfil, escolha o perfil de serviço.
nota
Ao usar o console para criar um projeto de compilação, é possível criar um perfil de serviço do CodeBuild ao mesmo tempo. Por padrão, a função funciona somente com esse projeto de build. Se você usar o console para associar essa função de serviço a outro projeto de compilação, a função será atualizada para funcionar com os outros projetos de compilação. Uma função de serviço pode funcionar com até 10 projetos de compilação.
-
- Configuração adicional
-
- Timeout (Tempo limite
-
Especifique um valor entre 5 minutos e 36 horas, tempo depois do qual o CodeBuild para a compilação se ela não estiver concluída. Se hours e minutes forem deixados em branco, o valor padrão de 60 minutos será usado.
- Privilegiado
-
Selecione Ativar este sinalizador se quiser criar imagens do Docker ou desejar que suas compilações obtenham privilégios elevados. somente se você planeja usar este projeto de compilação para compilar imagens do Docker. Do contrário, todas as compilações associadas que tentarem interagir com o daemon do Docker falharão. Você também deve iniciar o daemon do Docker, de maneira que as compilações possam interagir com ele. Uma maneira de fazer isso é inicializar o daemon do Docker na fase
installde especificação da compilação executando os comandos de compilação a seguir. Não execute esses comandos caso você escolha uma imagem de ambiente da compilação fornecida pelo CodeBuild com suporte do Docker.nota
Por padrão, o daemon do Docker está habilitado para compilações não VPC. Se você quiser usar contêineres do Docker para compilações da VPC, consulte Privilégio de tempo de execução e funcionalidades do Linux
no site do Docker Docs e ative o modo privilegiado. Além disso, o Windows não é compatível com o modo privilegiado. - nohup /usr/local/bin/dockerd --host=unix:///var/run/docker.sock --host=tcp://127.0.0.1:2375 --storage-driver=overlay2 & - timeout 15 sh -c "until docker info; do echo .; sleep 1; done" - da VPC
Se você desejar que o CodeBuild funcione com a VPC:
-
Em VPC, escolha o ID da VPC que o CodeBuild usa.
-
Em Sub-redes da VPC, selecione as sub-redes que incluem recursos usados pelo CodeBuild.
-
Em Grupos de segurança da VPC, selecione os grupos de segurança que o CodeBuild usa para permitir acesso a recursos nas VPCs.
Para obter mais informações, consulte Usar o AWS CodeBuild com o Amazon Virtual Private Cloud.
-
- Computação
-
Selecione uma das opções disponíveis.
- Credencial de registro
-
Especifique uma credencial de registro quando o projeto estiver configurado com uma imagem de registro não privada.
nota
Essa credencial só será utilizada se as imagens forem substituídas pelas de registros privados.
- Variáveis de ambiente
-
Insira o nome e o valor e, depois, selecione o tipo de cada variável de ambiente a ser usada pelas compilações.
nota
O CodeBuild define a variável de ambiente para a região da AWS automaticamente. Defina as seguintes variáveis de ambiente se elas não tiverem sido adicionadas ao buildspec.yml:
-
AWS_ACCOUNT_ID
-
IMAGE_REPO_NAME
-
IMAGE_TAG
Os usuários do console e da AWS CLI podem visualizar as variáveis de ambiente. Caso você não tenha problema em relação à visibilidade da variável de ambiente, defina os campos Name e Value e Type como Plaintext.
Recomendamos armazenar uma variável de ambiente com um valor confidencial, como um ID de chave de acesso da AWS, uma chave de acesso secreta da AWS ou uma senha como um parâmetro no Amazon EC2 Systems Manager Parameter Store ou AWS Secrets Manager.
Se você usar o Amazon EC2 Systems Manager Parameter Store, em Tipo, escolha Parâmetro. Em Nome, insira um identificador para o CodeBuild para referência. Em Valor, insira o nome do parâmetro conforme armazenado no Amazon EC2 Systems Manager Parameter Store. Usando um parâmetro chamado
/CodeBuild/dockerLoginPasswordcomo exemplo, em Type (Tipo), escolha Parameter (Parâmetro). Em Nome, digiteLOGIN_PASSWORD. Em Valor, insira/CodeBuild/dockerLoginPassword.Importante
Se você usa o Amazon EC2 Systems Manager Parameter Store, recomendamos armazenar os parâmetros com nomes de parâmetro que comecem com
/CodeBuild/(por exemplo,/CodeBuild/dockerLoginPassword). É possível usar o console do CodeBuild para criar um parâmetro no Amazon EC2 Systems Manager. Selecione Create parameter (Criar parâmetro) e siga as instruções na caixa de diálogo. (Nessa caixa de diálogo, em Chave do KMS, é possível especificar o ARN de uma chave do AWS KMS na conta. O Amazon EC2 Systems Manager usa essa chave para criptografar o valor do parâmetro durante o armazenamento e descriptografá-lo durante a recuperação.) Se você usar o console do CodeBuild para criar um parâmetro, o console começará o nome do parâmetro com/CodeBuild/, pois ele está sendo armazenado. Para obter mais informações, consulte Systems Manager Parameter Store e Systems Manager Parameter Store Console Walkthrough no Guia do usuário do Amazon EC2 Systems Manager.Se o projeto de compilação se referir a parâmetros armazenados no Amazon EC2 Systems Manager Parameter Store, o perfil de serviço do projeto de compilação deverá permitir a ação
ssm:GetParameters. Se você selecionar Novo perfil de serviço anteriormente, o CodeBuild incluirá essa ação no perfil de serviço padrão do projeto de compilação. No entanto, se você tiver selecionado Existing service role (Função de serviço existente), deverá incluir essa ação na função de serviço separadamente.Se o projeto de compilação fizer referência a parâmetros armazenados no Amazon EC2 Systems Manager Parameter Store com nomes de parâmetro que não comecem com
/CodeBuild/e você selecionar Novo perfil de serviço, será necessário atualizar esse perfil de serviço para conceder acesso a nomes de parâmetro que não comecem com/CodeBuild/. Isso porque essa função de serviço permite acesso apenas a nomes de parâmetro que comecem com/CodeBuild/.Se você selecionar Novo perfil de serviço, o perfil de serviço incluirá permissão para descriptografar todos os parâmetros no namespace
/CodeBuild/no Amazon EC2 Systems Manager Parameter Store.As variáveis de ambiente definidas por você substituem variáveis de ambiente existentes. Por exemplo, se a imagem de Docker já contiver uma variável de ambiente chamada
MY_VARcom um valor demy_valuee você definir uma variável de ambiente chamadaMY_VARcom um valor deother_value,my_valueserá substituído porother_value. Da mesma maneira, se a imagem de Docker já contiver uma variável de ambiente chamadaPATHcom um valor de/usr/local/sbin:/usr/local/bine você definir uma variável de ambiente chamadaPATHcom um valor de$PATH:/usr/share/ant/bin,/usr/local/sbin:/usr/local/binserá substituído pelo valor literal$PATH:/usr/share/ant/bin.Não defina nenhuma variável de ambiente com um nome que comece com
CODEBUILD_. Este prefixo está reservado para uso interno.Se uma variável de ambiente com o mesmo nome é definida em vários locais, o valor será determinado como se segue:
-
O valor na chamada de operação de início de build tem a maior prioridade.
-
O valor na definição de projeto de build tem a precedência seguinte.
-
O valor na declaração de buildspec tem a menor prioridade.
Se você usar o Secrets Manager, em Tipo, escolha Secrets Manager. Em Nome, insira um identificador para o CodeBuild para referência. Em Value (Valor), insira um
reference-keyusando o padrão. Para mais informações, consulte Secrets Manager reference-key in the buildspec file.secret-id:json-key:version-stage:version-idImportante
Se você usa o Secrets Manager, recomendamos armazenar segredos com nomes que comecem com
/CodeBuild/(por exemplo,/CodeBuild/dockerLoginPassword). Para obter mais informações, consulte O que é o AWS Secrets Manager? no Guia do usuário do AWS Secrets Manager.Se o projeto de compilação se referir a segredos armazenados no Secrets Manager, o perfil de serviço do projeto de compilação deverá permitir a ação
secretsmanager:GetSecretValue. Se você selecionar Novo perfil de serviço anteriormente, o CodeBuild incluirá essa ação no perfil de serviço padrão do projeto de compilação. No entanto, se você tiver selecionado Existing service role (Função de serviço existente), deverá incluir essa ação na função de serviço separadamente.Se o projeto de compilação fizer referência a segredos armazenados no Secrets Manager com nomes que não comecem com
/CodeBuild/e você selecionar Novo perfil de serviço, será necessário atualizar esse perfil de serviço para conceder acesso a nomes de segredo que não comecem com/CodeBuild/. O motivo é que o perfil de serviço permite acesso apenas a nomes de segredo que comecem com/CodeBuild/.Se você selecionar Novo perfil de serviço, o perfil de serviço incluirá permissão para descriptografar todos os segredos no namespace
/CodeBuild/no Secrets Manager. -
Buildspec
Na seção Buildspec, escolha Editar. Quando as alterações forem concluídas, selecione Atualizar configuração para salvar a nova configuração.
É possível modificar as seguintes propriedades:
- Especificações de compilação
-
Execute um destes procedimentos:
-
Se o seu código-fonte inclui um arquivo buildspec, escolha Use a buildspec file (Usar um arquivo buildspec). Por padrão, o CodeBuild procura um arquivo chamado
buildspec.ymlno diretório raiz do código-fonte. Se o arquivo buildspec usar um nome ou um local diferente, insira o caminho a partir da raiz de origem em Nome do buildspec (por exemplo,buildspec-two.ymlouconfiguration/buildspec.yml. Se o arquivo buildspec estiver em um bucket do S3, ele deverá estar na mesma região da AWS do projeto de compilação. Especifique o arquivo buildspec usando o ARN (por exemplo,arn:aws:s3:::).<my-codebuild-sample2>/buildspec.yml -
Se o código-fonte não incluir um arquivo de especificação de compilação ou se você quiser executar comandos de compilação diferentes dos especificados para a fase
buildno arquivobuildspec.yml, no diretório raiz do código-fonte, escolha Insert build commands. Para Build commands (Comandos de compilação), insira os comandos que você quer executar na fasebuild. Para vários comandos, separe-os com&&(por exemplo,mvn test && mvn package). Para executar comandos em outras fases, ou se você tiver uma lista longa de comandos para a fasebuild, adicione um arquivobuildspec.ymlao diretório raiz do código-fonte, adicione os comandos ao arquivo e escolha Usar o buildspec.yml no diretório raiz do código-fonte.
Para obter mais informações, consulte a Referência de buildspec.
-
Configuração em lote
Na seção Configuração em lote, selecione Editar. Quando as alterações forem concluídas, selecione Atualizar configuração para salvar a nova configuração. Para obter mais informações, consulte Executar compilações em lotes.
É possível modificar as seguintes propriedades:
- Perfil de serviço em lote
-
Fornece o perfil de serviço para compilações em lote.
Escolha uma das seguintes opções:
-
Se você não tiver um perfil de serviço em lote, selecione Novo perfil de serviço. Em Perfil de serviço, insira um nome para o novo perfil.
-
Se você tiver um perfil de serviço em lote, selecione Perfil de serviço existente. Em Perfil de serviço, selecione o perfil de serviço.
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,StopBuildeRetryBuildem 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,StopBuildeRetryBuildque 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 computação permitidos para lote
-
Selecione os tipos de computação permitidos para o lote. Selecione todas as opções aplicáveis.
- Frotas permitidas por lote
-
Selecione as frotas permitidas para o lote. Selecione todas as opções aplicáveis.
- Máximo de compilações permitidas em lote
-
Insira o número máximo de compilações permitidas no lote. Se um lote exceder esse limite, ele falhará.
- Tempo limite do lote
-
Insira o tempo máximo para a conclusão da compilação em lote.
- Combinar artefatos
-
Selecione Combinar todos os artefatos do lote em um único local para que todos os artefatos do lote sejam combinados em um único local.
- Modo de relatório em lote
-
Selecione o modo de relatório de status de compilação desejado para compilações em lote.
nota
Esse campo só estará disponível quando a origem do projeto for Bitbucket, GitHub ou GitHub Enterprise, e a opção Relatar status de compilação ao provedor de origem no início e no término das compilações estiver selecionada em Origem.
- Compilações agregadas
-
Selecione para que os status de todas as compilações do lote sejam combinados em um único relatório de status.
- Compilações individuais
-
Selecione para que os status de todas as compilações no lote sejam relatados separadamente.
Artefatos
Na seção Artefatos, escolha Editar. Quando as alterações forem concluídas, selecione Atualizar configuração para salvar a nova configuração.
É possível modificar as seguintes propriedades:
- Tipo
-
Execute um destes procedimentos:
-
Se você não quiser criar artefatos de saída de build, escolha No artifacts. É recomendável fazer isso caso esteja executando apenas testes de compilação ou queira enviar uma imagem do Docker a um repositório do Amazon ECR.
-
Para armazenar a saída de compilação em um bucket do S3, escolha Amazon S3 e faça o seguinte:
-
Se você quiser usar o nome do projeto para a pasta ou arquivo ZIP de saída da compilação, deixe Name (Nome) em branco. Caso contrário, insira o nome. (Se quiser um arquivo ZIP como saída e quiser que esse arquivo tenha uma extensão de arquivo, não se esqueça de incluir a extensão depois do nome do arquivo.)
-
Selecione Enable semântico versioning (Habilitar versionamento semântico) se quiser que um nome especificado no arquivo buildspec substitua qualquer nome especificado no console. O nome em um arquivo buildspec é calculado no tempo de compilação e usa a linguagem de comandos do Shell. Por exemplo, você pode anexar uma data e hora ao nome do artefato para que ele seja sempre exclusivo. Os nomes de artefato exclusivos impedem que os artefatos sejam substituídos. Para obter mais informações, consulte Sintaxe de buildspec.
-
Para Bucket name, selecione o nome do bucket de saída.
-
Se você tiver escolhido Insert build commands (Inserir comandos de compilação) antes neste procedimento, em Output files (Arquivos de saída), insira os locais dos arquivos da compilação que deseja incluir no arquivo ZIP de saída da compilação ou na pasta. Para vários locais, separe-os com uma vírgula (por exemplo,
appspec.yml, target/my-app.jar). Para obter mais informações, consulte a descrição defilesem Sintaxe de buildspec. -
Se você não quiser que os artefatos de compilação sejam criptografados, selecione Remove artifacts encryption (Remover a criptografia dos artefatos).
-
Para cada conjunto secundário de artefatos desejado:
-
Em Artifact identifier (Identificador de artefato), insira um valor com menos de 128 caracteres e que contenha apenas caracteres alfanuméricos e sublinhados.
-
Escolha Add artifact (Adicionar artefato).
-
Siga as etapas anteriores para configurar seus artefatos secundários.
-
Escolha Save artifact (Salvar artefato).
-
- Configuração adicional
-
- Chave de criptografia
-
Execute um destes procedimentos:
-
Para usar a Chave gerenciada pela AWS para o Amazon S3 na conta para criptografar os artefatos de saída de compilação, deixe Chave de criptografia em branco. Esse é o padrão.
-
Para usar uma chave gerenciada pelo cliente para criptografar os artefatos de saída da compilação, em Chave de criptografia, insira o ARN da chave gerenciada pelo cliente. Use o formato
arn:aws:kms:.region-ID:account-ID:key/key-ID
-
- Tipo de cache
Em Cache type (Tipo de cache), selecione uma das seguintes opções:
-
Se não quiser usar um cache, escolha No cache.
-
Se você quiser um cache do Amazon S3, selecione Amazon S3 e faça o seguinte:
-
Em Bucket, escolha o nome do bucket do S3 onde o cache está armazenado.
-
(Opcional) Em Prefixo do caminho do cache, insira um prefixo de caminho do Amazon S3. O valor Cache path prefix (Prefixo do caminho do cache) é semelhante ao nome de um diretório. Ele permite que você armazene o cache em um bucket no mesmo diretório.
Importante
Não acrescente uma barra (/) ao final do prefixo do caminho.
-
-
Se você quiser usar um cache local, selecione Local e depois selecione um ou mais modos de cache local.
nota
O modo de cache de camada do Docker está disponível apenas para o Linux. Se optar por esse modo, o projeto deverá ser executado no modo privilegiado.
O uso do cache economiza um tempo de compilação considerável porque as partes reutilizáveis do ambiente de compilação são armazenadas no cache e usadas em diferentes compilações. Para obter informações sobre como especificar um cache no arquivo de especificação de compilação, consulte Sintaxe de buildspec. Para obter mais informações sobre armazenamento em cache, consulte Compilações em cache para melhorar o desempenho.
-
Logs
Na seção Logs, selecione Editar. Quando as alterações forem concluídas, selecione Atualizar configuração para salvar a nova configuração.
É possível modificar as seguintes propriedades:
Selecione os logs que deseja criar. É possível criar o Amazon CloudWatch Logs, os logs do Amazon S3 ou ambos.
- CloudWatch
-
Se você quiser os logs do Amazon CloudWatch Logs:
- Logs do CloudWatch
-
Selecione Logs do CloudWatch.
- Group name
-
Insira o nome do grupo de logs do Amazon CloudWatch Logs.
- Nome do fluxo
-
Insira o nome do fluxo de logs do Amazon CloudWatch Logs.
- S3
-
Se você quiser que o Amazon S3 registre:
- Logs do S
-
Selecione S3 logs (Logs do S3).
- Bucket
-
Escolha o nome do bucket do S3 para os logs.
- Prefixo do caminho
-
Insira o prefixo para seus logs.
- Desabilitar a criptografia de logs do S
-
Selecione se não quiser que os logs do S3 sejam criptografados.
Alterar configurações de um projeto de compilação (AWS CLI)
Para obter informações sobre como usar a AWS CLI com o AWS CodeBuild, consulte o Referência da linha de comando.
Para atualizar um projeto do CodeBuild com a AWS CLI, você cria um arquivo JSON com as propriedades atualizadas e transmite esse arquivo para o comando update-project. Todas as propriedades não contidas no arquivo de atualização permanecem inalteradas.
No arquivo JSON de atualização, somente a propriedade name e as propriedades modificadas são necessárias. A propriedade name identifica o projeto a ser modificado. Para qualquer estrutura modificada, os parâmetros necessários para essas estruturas também devem ser incluídos. Por exemplo, para modificar o ambiente do projeto, as propriedades environment/type e environment/computeType são necessárias. Veja um de exemplo que atualiza a imagem do ambiente:
{ "name": "<project-name>", "environment": { "type": "LINUX_CONTAINER", "computeType": "BUILD_GENERAL1_SMALL", "image": "aws/codebuild/amazonlinux-x86_64-standard:4.0" } }
Se você precisar obter os valores das propriedades atuais de um projeto, use o comando batch-get-projects para obter as propriedades atuais do projeto que você está modificando e gravar a saída em um arquivo.
aws codebuild batch-get-projects --names "<project-name>" >project-info.json
O arquivo project-info.json contém uma matriz de projetos, portanto, não pode ser usado diretamente para atualizar um projeto. No entanto, é possível copiar as propriedades que deseja modificar do arquivo project-info.json e colá-las no arquivo de atualização como uma linha de base para as propriedades que você deseja modificar. Para obter mais informações, consulte Visualizar detalhes de um projeto de compilação (AWS CLI).
Modifique o arquivo JSON de atualização conforme descrito em Crie um projeto de compilação (AWS CLI) e salve os resultados. Quando terminar de modificar o arquivo JSON de atualização, execute o comando update-project, transmitindo o arquivo JSON de atualização.
aws codebuild update-project --cli-input-json file://<update-project-file>
Se for bem-sucedido, o JSON do projeto atualizado será exibido na saída. Se algum parâmetro necessário estiver ausente, uma mensagem de erro será exibida na saída que identifica os parâmetros ausentes. Por exemplo, esta será a mensagem de erro exibida se o parâmetro environment/type estiver ausente:
aws codebuild update-project --cli-input-json file://update-project.json Parameter validation failed: Missing required parameter in environment: "type"
Alterar configurações de um projeto de compilação (AWS SDKs)
Para obter informações sobre como usar o AWS CodeBuild com os SDKs da AWS, consulte AWSReferência de SDKs e ferramentas da .