Esta página explica como usar criadores contribuídos pela comunidade e criadores personalizados no Cloud Build. A comunidade de programadores do Cloud Build oferece criadores de código aberto que pode usar para executar as suas tarefas. Se a tarefa que quer realizar exigir capacidades que não são fornecidas por uma imagem existente, pode criar a sua própria imagem personalizada e usá-la num passo de compilação. Para saber mais sobre os diferentes tipos de criadores, consulte os criadores do Google Cloud.
Se for um utilizador recente do Cloud Build, leia os inícios rápidos e a vista geral da configuração de compilação primeiro.
Usar criadores contribuídos pela comunidade
As imagens pré-criadas não estão disponíveis para criadores contribuídos pela comunidade. Para usar estes criadores num ficheiro de configuração do Cloud Build, tem de criar primeiro a imagem e enviá-la para o Artifact Registry no seu projeto.
Para usar um criador contribuído pela comunidade:
Crie e envie o criador:
Navegue para o diretório raiz do projeto.
Clone o repositório cloud-builders-community:
git clone https://github.com/GoogleCloudPlatform/cloud-builders-community.git
Navegue para a imagem do criador que quer usar, onde builder-name é o diretório que contém o criador:
cd cloud-builders-community/builder-name
Envie o criador para o seu projeto:
gcloud builds submit .
Navegue de volta para o diretório raiz do projeto:
cd ../..
Remova o repositório do diretório raiz:
rm -rf cloud-builders-community/
No ficheiro de configuração do Cloud Build, use o criador num passo de compilação:
YAML
steps: - name: 'gcr.io/project-id/builder-name' args: ['arg1', 'arg2', ...] ...
JSON
{ "steps": [ { "name": "gcr.io/project-id/builder-name", "args": [ "arg1", "arg2", ... ] ... } ] }
Use o ficheiro de configuração de compilação para compilar manualmente ou compilar através de acionadores.
Para ver exemplos de utilização de criadores contribuídos pela comunidade, consulte os artigos Implemente no Firebase e Crie imagens de VMs com o Packer.
Criar um criador personalizado
Se a tarefa que quer realizar exigir capacidades que não são fornecidas por uma imagem pública, um criador suportado ou um criador contribuído pela comunidade, pode criar a sua própria imagem e usá-la num passo de compilação.
Alguns exemplos de quando pode querer usar uma imagem do criador personalizada:
- Transferir código-fonte ou pacotes de localizações externas.
- Usar uma cadeia de ferramentas externa.
- Colocar em cache todas as bibliotecas necessárias.
- Pré-criação da origem (com o Cloud Build responsável apenas por potencialmente embalar a criação numa imagem).
Tal como qualquer outro criador, um criador personalizado é executado com a origem montada em /workspace
e é executado com um diretório de trabalho em /workspace
. Todos os ficheiros deixados
em /workspace
por um determinado passo de compilação estão disponíveis para outros passos de compilação.
O seu criador personalizado pode enviar ou extrair dados de um repositório no
Artifact Registry (alojado em gcr.io/$PROJECT-NAME/
) ao qual a sua conta de serviço de compilação tem
acesso.
Os passos seguintes mostram como criar e usar um criador personalizado com um exemplo
Dockerfile
:
Crie uma imagem do criador personalizada:
Crie o
Dockerfile
para o criador personalizado. O código seguinte mostra um exemploDockerfile
:FROM alpine RUN apk add curl CMD curl https://httpbin.org/ip -s > myip.txt; echo "*** My IP is: $(cat myip.txt)"
Crie e envie o criador personalizado para o Artifact Registry no seu projeto, substituindo os valores de project-id e image-name:
gcloud builds submit --tag gcr.io/project-id/image-name
Use a imagem do criador personalizado no Cloud Build especificando o criador no campo
name
de um passo de compilação:YAML
steps: - name: 'gcr.io/project-id/image-name' id: Determine IP of this build worker
JSON
{ "steps": [ { "name": "gcr.io/project-id/image-name", "id": "Determine IP of this build worker" } ] }
Use o ficheiro de configuração de compilação para compilar manualmente ou compilar através de acionadores.
O que se segue?
- Saiba como executar scripts bash em passos de compilação.
- Saiba como configurar a ordem dos passos de criação.
- Saiba como escrever um ficheiro de configuração de compilação básico.