reglas de repositorio local

Informar un problema Ver fuente Por la noche · 7.2 · 7.1 · 7.0 · 6.5 · 6.4

Las siguientes funciones se pueden cargar desde @bazel_tools//tools/build_defs/repo:local.bzl

Son las reglas para que los directorios del sistema de archivos local estén disponibles como repositorios.

Configuración

Para usar estas reglas en la extensión de un módulo, cárgalas en el archivo .bzl y llámalas desde tu la función de implementación de una extensión. Por ejemplo, para usar local_repository, haz lo siguiente:

load("@bazel_tools//tools/build_defs/repo:local.bzl", "local_repository")

def _my_extension_impl(mctx):
  local_repository(name = "foo", path = "foo")

my_extension = module_extension(implementation = _my_extension_impl)

Como alternativa, puedes llamar directamente a estas reglas del repositorio en tu archivo MODULE.bazel con use_repo_rule

local_repository = use_repo_rule("@bazel_tools//tools/build_defs/repo:local.bzl", "local_repository")
local_repository(name = "foo", path = "foo")

local_repository

local_repository(name, path, repo_mapping)

Permite que un directorio local que ya contiene archivos de Bazel esté disponible como repositorio. Este directorio ya debe contener archivos BUILD de Bazel y un archivo de límite de repositorio. Si no incluye estos archivos, te recomendamos usar <a href="#new_local_repository"><code>new_local_repository</code></a>. en su lugar.

Atributos

name Nombre: obligatorio.

Un nombre único para este repositorio.

path String; obligatorio.

La ruta de acceso al directorio que estará disponible como repositorio.

La ruta de acceso puede ser absoluta o relativa a la raíz del lugar de trabajo.

repo_mapping Diccionario: Cadena -> String; obligatorio.

Un diccionario que va del nombre del repositorio local al nombre del repositorio global. Esto permite controlar la resolución de dependencias de lugares de trabajo para las dependencias de este repositorio.

Por ejemplo, una entrada "@foo": "@bar"` declara que, en cualquier momento, este repositorio depende de `@foo` (como una dependencia de `@foo//some:target`, en realidad debería resolver esa dependencia dentro de `@bar`, declarada de manera global, `@bar//some:target`).

new_local_repository

new_local_repository(name, build_file, build_file_content, path, repo_mapping)

Permite que un directorio local que no contiene archivos de Bazel esté disponible como repositorio. Este directorio no necesita contener archivos BUILD de Bazel ni un archivo de límite de repositorio. se crearán con esta regla del repositorio. Si el directorio ya contiene archivos Bazel, considera usar <a href="#local_repository"><code>local_repository</code></a>. en su lugar.

Atributos

name Nombre: obligatorio.

Un nombre único para este repositorio.

build_file Etiqueta; opcional

Es un archivo para usar como archivo de COMPILACIÓN para este repositorio.

Se debe especificar exactamente uno de build_file o build_file_content.

El archivo que aborda esta etiqueta no necesita llamarse BUILD, pero puede tener el nombre. Algo como BUILD.new-repo-name puede funcionar bien para distinguirlo de los archivos BUILD reales.

build_file_content String; opcional

El contenido del archivo COMPILACIÓN que se creará para este repositorio.

Se debe especificar exactamente uno de build_file o build_file_content.

path String; obligatorio.

La ruta de acceso al directorio que estará disponible como repositorio.

La ruta de acceso puede ser absoluta o relativa a la raíz del lugar de trabajo.

repo_mapping Diccionario: Cadena -> String; obligatorio.

Un diccionario que va del nombre del repositorio local al nombre del repositorio global. Esto permite controlar la resolución de dependencias de lugares de trabajo para las dependencias de este repositorio.

Por ejemplo, una entrada "@foo": "@bar"` declara que, en cualquier momento, este repositorio depende de `@foo` (como una dependencia de `@foo//some:target`, en realidad debería resolver esa dependencia dentro de `@bar`, declarada de manera global, `@bar//some:target`).