Esta página explica como especificar dependências de build. O Cloud Build permite gerenciar as dependências do código-fonte separadamente do processo de build.
No arquivo de configuração do 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 maneira separa a busca de dependências do próprio processo de build.
Se você não incluir dependências no arquivo de configuração do build,
o Cloud Build clona o repositório do 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 acionados na linha de comando). Se você
incluir dependências no arquivo de configuração do build, o Cloud Build
não clonará repositórios que não forem especificados 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 são especificadas nesta configuração. Além disso, o download de dependências ocorre antes que qualquer lógica especificada pelo usuário seja executada. Portanto, o fetching de dependências é confiável.
Antes de começar
As instruções desta página pressupõem que você tenha um ou mais repositórios Git públicos ou vinculados usando o Developer Connect.
Funções exigidas
Se algum repositório que você está adicionando como dependência for um repositório do Developer Connect, sua conta de serviço precisará do papel de Acessador de token de leitura do Developer Connect:
Além de qualquer outro papel do Cloud Build que você precisar.
Especificar as dependências
Para especificar dependências, adicione uma estrofe dependencies
ao arquivo de configuração
do build. dependencies
é uma propriedade de nível superior na configuração de build,
mas você pode colocá-la em qualquer lugar no arquivo.
Confira a sintaxe da estrofe 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 este 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 confirmação, a tag ou o nome da ramificação a ser buscado no repositório.
recurseSubmodules
: 'true|false': se é necessário buscar submódulos.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
: a confirmação mais recente2
: as duas últimas confirmações3
: os três últimos commits-1
: todas as confirmações
DEST_PATH: obrigatório. O caminho para o diretório em que o repositório será 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 e 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 os repositórios do Cloud Build.
Saiba como conectar um repositório ao Cloud Build usando o Developer Connect.