As seguintes funções podem ser carregadas de
@bazel_tools//tools/build_defs/repo:utils.bzl:
Utilitários para manipular repositórios externos, depois de buscados.
Configuração
Esses utilitários precisam ser usados por outras regras de repositório. Eles pode ser carregado da seguinte forma.
load(
    "@bazel_tools//tools/build_defs/repo:utils.bzl",
    "workspace_and_buildfile",
    "patch",
    "update_attrs",
)
download_remote_files
load("@bazel//tools/build_defs/repo:utils.bzl", "download_remote_files")
download_remote_files(ctx, auth)
Função de utilitário para fazer o download de arquivos remotos.
Esta regra deve ser usada na função de implementação de
uma regra de repositório. Ele pressupõe os parâmetros remote_file_urls e
remote_file_integrity esteja presente em ctx.attr.
Parâmetros
| ctx | uma API. O contexto do repositório da regra do repositório que chama esse utilitário função. | 
| auth | opcional.
o padrão é NoneUm dict opcional que especifica informações de autenticação para alguns dos URLs. | 
get_auth
load("@bazel//tools/build_defs/repo:utils.bzl", "get_auth")
get_auth(ctx, urls)
Função de utilitário para obter o dict de autenticação correto para uma lista de URLs do arquivo .netrc.
Ofereça suporte aos atributos netrc e auth_patterns opcionais, se disponíveis.
Parâmetros
| ctx | uma API. O contexto do repositório da regra do repositório que chama esse utilitário função. | 
| urls | uma API. a lista de URLs para ler | 
Retorna
o dict de autenticação que pode ser passado pararepository_ctx.download
talvez
load("@bazel//tools/build_defs/repo:utils.bzl", "maybe")
maybe(repo_rule, name, **kwargs)
Função de utilitário para adicionar um repositório apenas se ele ainda não estiver presente.
Isso serve para implementar a macro repositories.bzl segura documentada no https://bazel.build/rules/deploying#dependencies.
Parâmetros
| repo_rule | uma API. função de regra de repositório. | 
| name | uma API. nome do repositório a ser criado. | 
| kwargs | opcional. argumentos restantes, que são passados para a função repo_rule. | 
Retorna
Nada, define o repositório quando necessário como um efeito colateral.
parse_netrc
load("@bazel//tools/build_defs/repo:utils.bzl", "parse_netrc")
parse_netrc(contents, filename)
Função de utilitário para analisar pelo menos um arquivo .netrc básico.
Parâmetros
| contents | uma API. para o analisador. | 
| filename | opcional.
o padrão é Nonenome do arquivo a ser usado em mensagens de erro, se houver. | 
Retorna
dict que mapeia nomes de máquinas para um dict com as informações fornecidas. sobre eles
patch
load("@bazel//tools/build_defs/repo:utils.bzl", "patch")
patch(ctx, patches, patch_cmds, patch_cmds_win, patch_tool, patch_args, auth)
Implementação da aplicação de patches em um repositório já extraído.
Esta regra deve ser usada na função de implementação de
uma regra de repositório. Se os parâmetros patches, patch_tool,
patch_args, patch_cmds e patch_cmds_win não foram especificados
e depois são extraídas de ctx.attr.
Parâmetros
| ctx | uma API. O contexto do repositório da regra do repositório que chama esse utilitário função. | 
| patches | opcional.
o padrão é NoneOs arquivos de patch a serem aplicados. Lista de strings, rótulos ou caminhos. | 
| patch_cmds | opcional.
o padrão é NoneComandos Bash a serem executados para aplicação de patches, passados um de cada vez é hora de usar "bash" -c. Lista de strings | 
| patch_cmds_win | opcional.
o padrão é NoneOs comandos do PowerShell a serem executados para aplicação de patches, passados uma de cada vez para powershell /c. Lista de strings. Se o o valor booleano deste parâmetro é "false", o patch_cmds será usado, e esse parâmetro será ignorado. | 
| patch_tool | opcional.
o padrão é NoneCaminho da ferramenta de patch a ser executada para aplicar manchas. String. | 
| patch_args | opcional.
o padrão é NoneArgumentos a serem passados para a ferramenta de patch. Lista de strings. | 
| auth | opcional.
o padrão é NoneUm dict opcional que especifica informações de autenticação para alguns dos URLs. | 
read_netrc
load("@bazel//tools/build_defs/repo:utils.bzl", "read_netrc")
read_netrc(ctx, filename)
Função de utilitário para analisar pelo menos um arquivo .netrc básico.
Parâmetros
| ctx | uma API. O contexto do repositório da regra do repositório que chama esse utilitário função. | 
| filename | uma API. o nome do arquivo .netrc a ser lido | 
Retorna
dict que mapeia nomes de máquinas para um dict com as informações fornecidas. sobre eles
read_user_netrc
load("@bazel//tools/build_defs/repo:utils.bzl", "read_user_netrc")
read_user_netrc(ctx)
Ler o arquivo netrc padrão do usuário.
Parâmetros
| ctx | uma API. O contexto do repositório da regra do repositório que chama essa função utilitária. | 
Retorna
dict que mapeia nomes de máquinas para um dict com as informações fornecidas sobre eles.
update_attrs
load("@bazel//tools/build_defs/repo:utils.bzl", "update_attrs")
update_attrs(orig, keys, override)
Função de utilitário para alterar e adicionar os atributos especificados a uma invocação de regra de repositório específica.
Isso é usado para tornar uma regra reproduzível.
Parâmetros
| orig | uma API. dict de atributos realmente definidos (explicitamente ou implicitamente) por uma invocação de regra específica | 
| keys | uma API. conjunto completo de atributos definidos nesta regra | 
| override | uma API. dict de atributos para substituir ou adicionar ao orig | 
Retorna
dict de atributos com as chaves de substituição inserida/atualizada
use_netrc
load("@bazel//tools/build_defs/repo:utils.bzl", "use_netrc")
use_netrc(netrc, urls, patterns)
Calcula um dict de autenticação a partir de um arquivo netrc analisado e uma lista de URLs.
Parâmetros
| netrc | uma API. um arquivo netrc já analisado para um dict, por exemplo, conforme obtido de read_netrc | 
| urls | uma API. uma lista de URLs. | 
| patterns | uma API. Dicionário opcional do URL para padrões de autorização | 
Retorna
dict adequado como argumento de autenticação para ctx.download; mais precisamente, o dict mapeará todos os URLs nos quais o arquivo netrc fornece login e senha para um dict que contém o login, a senha e o padrão de autorização opcional correspondentes. bem como o mapeamento de "tipo" para "básico" ou "pattern".
workspace_and_buildfile
load("@bazel//tools/build_defs/repo:utils.bzl", "workspace_and_buildfile")
workspace_and_buildfile(ctx)
Função de utilitário para escrever WORKSPACE e, se solicitado, um arquivo BUILD.
Esta regra deve ser usada na função de implementação de um
regra de repositório.
Ele pressupõe os parâmetros name, build_file, build_file_content
workspace_file e workspace_file_content vão ser
presente em ctx.attr; os últimos quatro, possivelmente com o valor None.
Parâmetros
| ctx | uma API. O contexto do repositório da regra do repositório que chama esse utilitário função. |