As seguintes funções podem ser carregadas de
@bazel_tools//tools/build_defs/repo:local.bzl
:
Regras para disponibilizar como repositórios os diretórios no sistema de arquivos local.
Configuração
Para usar essas regras em uma extensão de módulo, carregue-as no arquivo .bzl e, em seguida, chame-as do seu
função de implementação de uma extensão. Por exemplo, para usar local_repository
:
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, você pode chamar essas regras de repositório diretamente no arquivo MODULE.bazel usando
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)
Torna um diretório local que já contém arquivos do Bazel disponíveis como um repositório. Esse diretório já deve conter arquivos BUILD do Bazel e um arquivo de limite do repositório. Se ele não contiver esses arquivos, considere usar <a href="#new_local_repository"><code>new_local_repository</code></a> como alternativa.
Atributos
name |
Nome; obrigatório
Um nome exclusivo para este repositório. |
path |
String; obrigatório
O caminho para o diretório a ser disponibilizado como um repositório. O caminho pode ser absoluto ou relativo à raiz do espaço de trabalho. |
repo_mapping |
Dicionário: String -> String; obrigatório
Um dicionário do nome do repositório local para o nome do repositório global. Isso permite o controle sobre a resolução de dependências do espaço de trabalho para dependências deste repositório. Por exemplo, uma entrada `"@foo": "@bar"` declara que, sempre que esse repositório depender de `@foo`, como uma dependência de `@foo//some:target`, ele deverá resolver essa dependência dentro do `@bar` declarado globalmente (`@bar//some:target`). |
new_local_repository
new_local_repository(name, build_file, build_file_content, path, repo_mapping)
Torna um diretório local que não contém arquivos do Bazel disponíveis como um repositório. Esse diretório não precisa conter arquivos BUILD do Bazel ou um arquivo de limite do repositório. elas serão criadas por esta regra de repositório. Se o diretório já contiver arquivos do Bazel, use o <a href="#local_repository"><code>local_repository</code></a> como alternativa.
Atributos
name |
Nome; obrigatório
Um nome exclusivo para este repositório. |
build_file |
Rótulo opcional
Um arquivo para usar como arquivo BUILD para este repositório. É preciso especificar exatamente O arquivo endereçado por esse rótulo não precisa ser nomeado como BUILD, mas pode ser. Algo como |
build_file_content |
String; opcional
O conteúdo do arquivo BUILD que será criado para este repositório. É preciso especificar exatamente |
path |
String; obrigatório
O caminho para o diretório a ser disponibilizado como um repositório. O caminho pode ser absoluto ou relativo à raiz do espaço de trabalho. |
repo_mapping |
Dicionário: String -> String; obrigatório
Um dicionário do nome do repositório local para o nome do repositório global. Isso permite o controle sobre a resolução de dependências do espaço de trabalho para dependências deste repositório. Por exemplo, uma entrada `"@foo": "@bar"` declara que, sempre que esse repositório depender de `@foo`, como uma dependência de `@foo//some:target`, ele deverá resolver essa dependência dentro do `@bar` declarado globalmente (`@bar//some:target`). |