Las siguientes funciones se pueden cargar desde @bazel_tools//tools/build_defs/repo:utils.bzl
.
Utilidades para manipular repositorios externos, una vez recuperados.
Configuración
Estas utilidades están diseñadas para que las usen otras reglas de repositorios. Se pueden cargar de la siguiente manera.
load(
"@bazel_tools//tools/build_defs/repo:utils.bzl",
"workspace_and_buildfile",
"patch",
"update_attrs",
)
quizás
maybe(repo_rule, name, kwargs)
Es una función de utilidad para agregar solo un repositorio si aún no está presente.
Esto es para implementar la macro Safe Repositories.bzl documentada en https://bazel.build/rules/deploying#Dependencies.
Parámetros
repo_rule |
o API.
función de regla de repositorio. |
name |
o API.
nombre del repositorio que se creará. |
kwargs |
opcional.
los argumentos restantes que se pasan a la función repo_rule. |
Devuelve
Nada define el repositorio cuando es necesario como un efecto secundario.
parse_netrc
parse_netrc(contents, filename)
Es una función de utilidad para analizar al menos un archivo .netrc básico.
Parámetros
contents |
o API.
entrada para el analizador. |
filename |
opcional.
El valor predeterminado es None
el nombre de archivo que se usará en los mensajes de error, si corresponde. |
Devuelve
Asignación de nombres de máquinas a un dict con la información proporcionada
patch
patch(ctx, patches, patch_cmds, patch_cmds_win, patch_tool, patch_args, auth)
Implementación de la aplicación de parches a un repositorio ya extraído.
Esta regla está diseñada para usarse en la función de implementación de una regla de repositorio. Si no se especifican los parámetros patches
, patch_tool
, patch_args
, patch_cmds
y patch_cmds_win
, se toman de ctx.attr
.
Parámetros
ctx |
o API.
El contexto del repositorio de la regla del repositorio que llama a esta función de utilidad. |
patches |
opcional.
El valor predeterminado es None
Los archivos de parche que se aplicarán. Lista de strings, etiquetas o rutas de acceso. |
patch_cmds |
opcional.
El valor predeterminado es None
Los comandos Bash que se ejecutarán para la aplicación de parches, se pasaron uno a la vez a bash -c. Lista de strings |
patch_cmds_win |
opcional.
El valor predeterminado es None
Los comandos de PowerShell que se ejecutan para aplicar parches, se pasan uno a la vez a PowerShell /c. Lista de cadenas. Si el valor booleano de este parámetro es falso, se usará patch_cmds y se ignorará este parámetro. |
patch_tool |
opcional.
El valor predeterminado es None
Ruta de acceso de la herramienta de aplicación de parches que se ejecutará para aplicar los parches. String. |
patch_args |
opcional.
El valor predeterminado es None
Argumentos para pasar a la herramienta de aplicación de parche. Lista de cadenas. |
auth |
opcional.
El valor predeterminado es None
Un diccionario opcional que especifica la información de autenticación para algunas de las URLs. |
read_netrc
read_netrc(ctx, filename)
Es una función de utilidad para analizar al menos un archivo .netrc básico.
Parámetros
ctx |
o API.
El contexto del repositorio de la regla del repositorio que llama a esta función de utilidad. |
filename |
o API.
el nombre del archivo .netrc que se leerá |
Devuelve
Asignación de nombres de máquinas a un dict con la información proporcionada
read_user_netrc
read_user_netrc(ctx)
Leer el archivo Netrc predeterminado del usuario
Parámetros
ctx |
o API.
El contexto del repositorio de la regla del repositorio que llama a esta función de utilidad. |
Devuelve
dict asigna nombres de máquinas a un dict con la información proporcionada sobre ellas.
update_attrs
update_attrs(orig, keys, override)
Función de utilidad para modificar y agregar los atributos especificados a una invocación de regla de repositorio particular.
Se usa para que una regla se pueda reproducir.
Parámetros
orig |
o API.
dict de los atributos establecidos (de forma explícita o implícita) mediante la invocación de una regla en particular. |
keys |
o API.
conjunto completo de atributos definidos en esta regla |
override |
o API.
dict de atributos para anular o agregar a orig |
Devuelve
dict de atributos con las claves de anulación insertadas o actualizadas
use_netrc
use_netrc(netrc, urls, patterns)
Calcula un dict de Auth a partir de un archivo de Netrc analizado y una lista de URLs.
Parámetros
netrc |
o API.
un archivo Netrc ya analizado en un dict, p.ej., como se obtuvo de read_netrc |
urls |
o API.
una lista de URLs. |
patterns |
o API.
dict opcional de URL a patrones de autorización |
Devuelve
dict adecuado como argumento auth para ;
workspace_and_buildfile
workspace_and_buildfile(ctx)
Es una función de utilidad para escribir WORKSPACE y, si se solicita, un archivo BUILD.
Esta regla está diseñada para usarse en la función de implementación de una regla de repositorio.
Se supone que los parámetros name
, build_file
, build_file_content
, workspace_file
y workspace_file_content
están presentes en ctx.attr
; los últimos cuatro pueden tener el valor None.
Parámetros
ctx |
o API.
El contexto del repositorio de la regla del repositorio que llama a esta función de utilidad. |