Nesta página, explicamos como especificar dependências de build. O Cloud Build permite gerenciar dependências de código-fonte separadamente do processo de build.
No arquivo de configuração de build, é possível listar um ou mais repositórios Git para clonar para o build e a ordem em que eles serão buscados. Especificar dependências dessa forma separa a busca de dependências do processo de build.
Se você não incluir dependências no arquivo de configuração do build, o Cloud Build vai clonar o repositório de código-fonte que contém o arquivo de configuração do build (para builds acionados) ou o repositório que contém o código-fonte (para builds invocados na linha de comando). Se você incluir dependências no arquivo de configuração de build, o Cloud Build não vai clonar nenhum repositório que não esteja especificado no campo dependencies
.
Qualquer repositório de código-fonte especificado no campo dependencies
precisa estar conectado ao Cloud Build usando o Developer Connect ou ser um repositório público.
As dependências são clonadas na ordem em que você as especifica nessa configuração. Além disso, a busca de dependências ocorre antes da execução de qualquer lógica especificada pelo usuário. Assim, a busca de dependências é confiável.
As dependências são mostradas na guia Dependências do build da página Detalhes do build.
Antes de começar
As instruções nesta página pressupõem que você tenha um ou mais repositórios Git públicos ou vinculados usando o Developer Connect.
Para receber as permissões necessárias para adicionar um repositório do Developer Connect como uma dependência,
peça ao administrador para conceder a você o
papel do IAM de Leitor de token do Developer Connect (developerconnect.readTokenAccessor
)
na sua conta de serviço.
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Também é possível conseguir as permissões necessárias por meio de papéis personalizados ou de outros papéis predefinidos.
Especificar as dependências
Para especificar dependências, adicione uma seção dependencies
ao arquivo de configuração de build. dependencies
é uma propriedade de nível superior na configuração de build,
mas pode ser colocada em qualquer lugar do arquivo.
Esta é a sintaxe da seção dependencies
:
YAML
dependencies:
- gitSource:
repository:
url: 'URL'
developerConnect: 'RESOURCE_PATH'
revision: 'REVISION'
recurseSubmodules: 'true|false'
depth: DEPTH'
destPath: 'DEST_PATH'
JSON
{
"dependencies": {
"gitSource": {
"repository": {
"url": "URL"
"developerConnect": "RESOURCE_PATH"
},
"revision": "REVISION",
"recurseSubmodules": true|false,
"depth": "DEPTH",
"destPath": "DEST_PATH",
},
},
}
Substitua os seguintes valores:
URL: opcional. O URL HTTPS do repositório a ser buscado. É necessário especificar um URL ou um caminho de recurso do Developer Connect.
RESOURCE_PATH: opcional. O caminho do recurso Google Cloud para esse repositório do Developer Connect. Por exemplo,
projects/my-project/locations/us-central1/connections/my-connection/gitRepositoryLinks/my-repo
. É necessário especificar um URL ou um caminho de recurso do Developer Connect. Especifique esse campo se o repositório a ser buscado estiver conectado ao Cloud Build usando o Developer Connect.REVISION: obrigatório. A versão, o hash de commit, a tag ou o nome da ramificação a ser buscado no repositório.
recurseSubmodules
: "true|false": se os submódulos precisam ser buscados.DEPTH: opcional, a profundidade do histórico do repositório a ser buscado. Se não for especificado, o commit mais recente será buscado.
1
: o commit mais recente2
: os dois últimos commits3
: os três últimos commits-1
: todos os commits
DEST_PATH: obrigatório. O caminho para o diretório em que o repositório é clonado. Por exemplo,
my/repo
.Quando você define o
dest_path
, o repositório é buscado em/workspace/<dest_path>
. O valordest_path
precisa ser um caminho relativo ao diretório de trabalho da build.
Especificar um repositório do Developer Connect como uma dependência
Se você especificar um repositório do Developer Connect como uma dependência, será necessário conceder o papel
Developer Connect Read Token Accessor
à conta de serviço do Cloud Build. Para mais informações, consulte Conceder acesso do Cloud Build a um repositório do Developer Connect.O build precisa estar na mesma região da conexão do Developer Connect.
A seguir
Saiba como conectar um repositório ao Cloud Build usando repositórios do Cloud Build.
Saiba como conectar um repositório ao Cloud Build usando o Developer Connect.