reglas de repositorio local

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

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

Configuración

Para usar estas reglas en una extensión de módulo, cárgalas en tu archivo .bzl y, luego, llámalas desde la función de implementación de tu 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 de 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)

Hace que un directorio local que ya contiene archivos Bazel esté disponible como repositorio. Este directorio ya debería contener archivos BUILD de Bazel y un archivo de límite de repositorio. Si no contiene estos archivos, considera usar <a href="#new_local_repository"><code>new_local_repository</code></a>.

Atributos

name Nombre; obligatorio

Un nombre único para este repositorio.

path String; obligatorio

La ruta de acceso al directorio que se pondrá a disposición como repositorio.

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

repo_mapping Diccionario: String -> String; obligatorio

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

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

new_local_repository

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

Hace que un directorio local que no contiene archivos Bazel esté disponible como repositorio. Este directorio no necesita contener archivos BUILD de Bazel ni un archivo de límite de repositorio. Esta regla de repositorio los creará. Si el directorio ya contiene archivos Bazel, considera usar <a href="#local_repository"><code>local_repository</code></a>.

Atributos

name Nombre; obligatorio

Un nombre único para este repositorio.

build_file Etiqueta; opcional

Un archivo para usar como archivo BUILD para este repositorio.

Se debe especificar exactamente uno de build_file y build_file_content.

El archivo al que se dirige esta etiqueta no necesita llamarse BUILD, pero puede hacerlo. 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 BUILD que se creará para este repositorio.

Se debe especificar exactamente uno de build_file y build_file_content.

path String; obligatorio

La ruta de acceso al directorio que se pondrá a disposición como repositorio.

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

repo_mapping Diccionario: String -> String; obligatorio

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

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