implementation
cuando creas una regla de repositorio.
Miembros
- atracción
- borrar
- descargar
- download_and_extract
- ejecutar
- extraer
- archivo
- nombre
- os
- parche
- path
- leer
- informe_progreso
- symlink
- plantilla
- cuál
- workspace_root
attr.
struct repository_ctx.attrUna struct para acceder a los valores de los atributos. El usuario proporciona los valores (de lo contrario, se usa un valor predeterminado).
borrar
bool repository_ctx.delete(path)Borra un archivo o un directorio. Muestra un valor booleano que indica si esta llamada borró el archivo o el directorio.
Parámetros
Parámetro | Descripción |
---|---|
path
|
string; or path ;
obligatorioRuta de acceso del archivo que se borrará en relación con el directorio del repositorio o absoluto. Puede ser una ruta o una string. |
descarga
struct repository_ctx.download(url, output='', sha256='', executable=False, allow_fail=False, canonical_id='', auth={}, *, integrity='')Descarga un archivo en la ruta de salida para la URL proporcionada y muestra un struct que contiene
success
, una marca true
que se muestra si la descarga se completó correctamente y, si se completó correctamente, un hash del archivo con los campos sha256
y integrity
.
Parámetros
Parámetro | Descripción |
---|---|
url
|
string; or Iterable of strings ;
obligatorioLista de URLs duplicadas que hacen referencia al mismo archivo. |
output
|
string; or Label; or path ; default = ''ruta de acceso al archivo de salida, relativa al directorio del repositorio. |
sha256
|
default = '' el hash SHA-256 esperado del archivo descargado. Debe coincidir con el hash SHA-256 del archivo descargado. Omitir el SHA-256 puede representar un riesgo de seguridad, ya que los archivos remotos pueden cambiar. En el mejor de los casos, omitir este campo hará que tu compilación no sea hermética. Es opcional para facilitar el desarrollo, pero debe configurarse antes del envío. |
executable
|
default = False Establece la marca ejecutable en el archivo creado; false de forma predeterminada. |
allow_fail
|
default = False Si se establece, indica el error en el valor de retorno en lugar de generar un error para las descargas con errores. |
canonical_id
|
default = '' Si se establece, restringe los aciertos de caché a aquellos casos en los que se agregó el archivo a la caché con el mismo ID canónico |
auth
|
default = {} Un diccionario opcional que especifica información de autenticación para algunas de las URL. |
integrity
|
default = '' Suma de comprobación esperada del archivo descargado, en formato de integridad de subrecursos. Debe coincidir con la suma de verificación del archivo descargado. Es un riesgo de seguridad omitir la suma de verificación, ya que los archivos remotos pueden cambiar. En el mejor de los casos, omitir este campo hará que tu compilación no sea hermética. Es opcional para facilitar el desarrollo, pero debe configurarse antes del envío. |
descargar_y_extraer
struct repository_ctx.download_and_extract(url, output='', sha256='', type='', stripPrefix='', allow_fail=False, canonical_id='', auth={}, *, integrity='', rename_files={})Descarga un archivo en la ruta de acceso de salida para la URL proporcionada, lo extrae y muestra un struct que contiene
success
, una marca que es true
si la descarga se completó correctamente, y si se ejecuta correctamente, un hash del archivo con los campos sha256
y integrity
.
Parámetros
Parámetro | Descripción |
---|---|
url
|
string; or Iterable of strings ;
obligatorioLista de URLs duplicadas que hacen referencia al mismo archivo. |
output
|
string; or Label; or path ; default = '': ruta de acceso al directorio en el que se descomprimirá el archivo en relación con el directorio del repositorio. |
sha256
|
default = '' el hash SHA-256 esperado del archivo descargado. Debe coincidir con el hash SHA-256 del archivo descargado. Omitir el SHA-256 puede representar un riesgo de seguridad, ya que los archivos remotos pueden cambiar. En el mejor de los casos, omitir este campo hará que tu compilación no sea hermética. Es opcional para facilitar el desarrollo, pero debe configurarse antes del envío. Si se proporciona, primero se buscará un archivo con el hash en la caché del repositorio. Solo se intentará la descarga si no se encontró el archivo en la caché. Después de que la descarga se complete correctamente, el archivo se agregará a la caché. |
type
|
default = '' el tipo de archivo descargado. De forma predeterminada, el tipo de archivo se determina a partir de la extensión del archivo URL. Si el archivo no tiene extensión, puedes especificar explícitamente "zip", "jar", "war", "aar", "tar", "tar.gz", "tgz", "tar.xz", "txz", ".tar.zst", ".tzst", "tar.bz2", ".tbz", ".ar" o ".deb". |
stripPrefix
|
default = '' un prefijo de directorio para quitar de los archivos extraídos. Muchos archivos contienen un directorio de nivel superior que contiene todos los archivos del archivo. En lugar de tener que especificar este prefijo una y otra vez en build_file , se puede usar este campo para quitarlo de los archivos extraídos.
|
allow_fail
|
default = False Si se establece, indica el error en el valor de retorno en lugar de generar un error para las descargas con errores. |
canonical_id
|
default = '' Si se establece, restringe los aciertos de caché a aquellos casos en los que se agregó el archivo a la caché con el mismo ID canónico |
auth
|
default = {} Un diccionario opcional que especifica información de autenticación para algunas de las URL. |
integrity
|
default = '' Suma de comprobación esperada del archivo descargado, en formato de integridad de subrecursos. Debe coincidir con la suma de verificación del archivo descargado. Es un riesgo de seguridad omitir la suma de verificación, ya que los archivos remotos pueden cambiar. En el mejor de los casos, omitir este campo hará que tu compilación no sea hermética. Es opcional para facilitar el desarrollo, pero debe configurarse antes del envío. |
rename_files
|
default = {} Un diccionario opcional que especifica los archivos a los que se les cambiará el nombre durante la extracción. Se cambiará el nombre de las entradas de archivo con nombres que coincidan exactamente con una clave antes de cualquier ajuste del prefijo del directorio. Esto se puede usar para extraer archivos que contienen nombres de archivos que no son Unicode, o que tienen archivos que podrían extraerse en la misma ruta de acceso en sistemas de archivos que no distinguen entre mayúsculas y minúsculas. |
execute
exec_result repository_ctx.execute(arguments, timeout=600, environment={}, quiet=True, working_directory="")Ejecuta el comando que proporciona la lista de argumentos. El tiempo de ejecución del comando está limitado por
timeout
(en segundos, es de 600 segundos de forma predeterminada). Este método muestra una estructura exec_result
que contiene el resultado del comando. El mapa environment
se puede usar para anular algunas variables de entorno que se pasarán al proceso.
Parámetros
Parámetro | Descripción |
---|---|
arguments
|
obligatorio Lista de argumentos. El primer elemento debe ser la ruta de acceso al programa que se debe ejecutar. |
timeout
|
default = 600 Es la duración máxima del comando en segundos (el valor predeterminado es 600 segundos). |
environment
|
default = {} fuerzan la configuración de algunas variables de entorno para que se pasen al proceso. |
quiet
|
default = True Si stdout y stderr se deben imprimir en la terminal. |
working_directory
|
default = "" Directorio de trabajo para la ejecución del comando. Puede ser relativo a la raíz del repositorio o absoluto. |
extract
None repository_ctx.extract(archive, output='', stripPrefix='', *, rename_files={})Extrae un archivo en el directorio del repositorio.
Parámetros
Parámetro | Descripción |
---|---|
archive
|
string; or Label; or path ;obligatorio: Es la ruta de acceso al archivo que se descomprimirá, en relación con el directorio del repositorio. |
output
|
string; or Label; or path ; default = '': ruta de acceso al directorio en el que se descomprimirá el archivo en relación con el directorio del repositorio. |
stripPrefix
|
default = '' un prefijo de directorio para quitar de los archivos extraídos. Muchos archivos contienen un directorio de nivel superior que contiene todos los archivos del archivo. En lugar de tener que especificar este prefijo una y otra vez en build_file , se puede usar este campo para quitarlo de los archivos extraídos.
|
rename_files
|
default = {} Un diccionario opcional que especifica los archivos a los que se les cambiará el nombre durante la extracción. Se cambiará el nombre de las entradas de archivo con nombres que coincidan exactamente con una clave antes de cualquier ajuste del prefijo del directorio. Esto se puede usar para extraer archivos que contienen nombres de archivos que no son Unicode, o que tienen archivos que podrían extraerse en la misma ruta de acceso en sistemas de archivos que no distinguen entre mayúsculas y minúsculas. |
en el archivo.
None repository_ctx.file(path, content='', executable=True, legacy_utf8=True)Genera un archivo en el directorio del repositorio con el contenido proporcionado.
Parámetros
Parámetro | Descripción |
---|---|
path
|
La ruta string; or Label; or path del archivo que se debe crearen relación con el directorio del repositorio. |
content
|
default = '' el contenido del archivo que se creará, vacío de forma predeterminada. |
executable
|
default = True Establece la marca ejecutable en el archivo creado, verdadera de forma predeterminada. |
legacy_utf8
|
default = True codifica el contenido del archivo en UTF-8 y verdadero por configuración predeterminada. Las versiones futuras cambiarán la configuración predeterminada y quitarán este parámetro. |
del espacio
string repository_ctx.nameEl nombre del repositorio externo que creó esta regla.
os
repository_os repository_ctx.osEs una estructura para acceder a la información del sistema.
patch
None repository_ctx.patch(patch_file, strip=0)Aplica un archivo de parche al directorio raíz del repositorio externo. El archivo de parche debe ser un archivo con formato de diferenciación estándar. La implementación de parches nativos de Bazel no admite coincidencias de coincidencias ni parches binarios como la herramienta de línea de comandos para parches.
Parámetros
Parámetro | Descripción |
---|---|
patch_file
|
string; or Label; or path ;
obligatorioEl archivo de parche que se debe aplicar puede ser una etiqueta, una ruta de acceso relativa o una ruta de acceso absoluta. Si es una ruta relativa, se resolverá en el directorio del repositorio. |
strip
|
default = 0 Quita la cantidad especificada de componentes principales de los nombres de archivo. |
ruta de acceso
path repository_ctx.path(path)Muestra una ruta de acceso de una string, etiqueta o ruta. Si la ruta es relativa, se resolverá en relación con el directorio del repositorio. Si la ruta es una etiqueta, se resolverá en la ruta del archivo correspondiente. Ten en cuenta que los repositorios remotos se ejecutan durante la fase de análisis y, por lo tanto, no pueden depender de un resultado de destino (la etiqueta debe apuntar a un archivo no generado). Si la ruta es una ruta, mostrará esa ruta tal como está.
Parámetros
Parámetro | Descripción |
---|---|
path
|
string; or Label; or path ;
requierestring, etiqueta o ruta a partir de la cual crear una ruta |
read
string repository_ctx.read(path)Lee el contenido de un archivo en el sistema de archivos.
Parámetros
Parámetro | Descripción |
---|---|
path
|
Es la ruta de acceso string; or Label; or path del archivoque se debe leer. |
informe_progreso
None repository_ctx.report_progress(status='')Actualiza el estado de progreso de la recuperación de este repositorio o extensión de módulo
Parámetros
Parámetro | Descripción |
---|---|
status
|
string ; valor predeterminado = string ''que describe el estado actual del progreso de la recuperación |
symlink
None repository_ctx.symlink(target, link_name)Crea un symlink en el sistema de archivos.
Parámetros
Parámetro | Descripción |
---|---|
target
|
string; or Label; or path ;
obligatorioLa ruta de acceso a la que debe apuntar el symlink. |
link_name
|
string; or Label; or path ;
obligatorioLa ruta de acceso del symlink que se creará, en relación con el directorio del repositorio. |
plantilla
None repository_ctx.template(path, template, substitutions={}, executable=True)Genera un archivo nuevo con un
template
. Cada caso en template
de una clave de substitutions
se reemplazará por el valor correspondiente. El resultado está escrito en path
. Se puede configurar un argumentoexecutable
opcional (el valor predeterminado es verdadero) para activar o desactivar el bit ejecutable.
Parámetros
Parámetro | Descripción |
---|---|
path
|
La ruta string; or Label; or path del archivo que se debe crearen relación con el directorio del repositorio. |
template
|
La ruta string; or Label; or path ; obligatoriapara el archivo de plantilla. |
substitutions
|
default = {} sustituciones para hacer cuando se expande la plantilla. |
executable
|
default = True Establece la marca ejecutable en el archivo creado, verdadera de forma predeterminada. |
cuál
path repository_ctx.which(program)Muestra la ruta de acceso del programa correspondiente o None si no existe ese programa en la ruta.
Parámetros
Parámetro | Descripción |
---|---|
program
|
Obligatorio Programa que se buscará en la ruta. |
None
.
root_workspace
path repository_ctx.workspace_rootLa ruta de acceso al lugar de trabajo raíz de la invocación de Bazel.