yerel depo kuralları

Sorun bildirme Kaynağı görüntüleme Nightly · 7.4 .

Aşağıdaki işlevler @bazel_tools//tools/build_defs/repo:local.bzl üzerinden yüklenebilir.

Yerel dosya sistemindeki dizinleri depo olarak kullanılabilir hale getirme kuralları.

Kurulum

Bu kuralları bir modül uzantısında kullanmak için .bzl dosyanıza yükleyin ve ardından, uzantınızın uygulama işlevinden çağırın. Örneğin, local_repository simgesini kullanmak için:

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)

Alternatif olarak, bu depo kurallarını MODULE.bazel dosyanızdaki use_repo_rule ile doğrudan çağırabilirsiniz:

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)

Halihazırda Bazel dosyaları içeren yerel bir dizini depo olarak kullanılabilir hale getirir. Bu dizin, Bazel BUILD dosyalarını ve halihazırda bir depo sınır dosyası içermelidir. Söz konusu dosyalar bu dosyaları içermiyorsa bunun yerine <a href="#new_local_repository"><code>new_local_repository</code></a>'u kullanabilirsiniz.

Özellikler

name Ad; zorunlu

Bu depo için benzersiz bir ad.

path Dize; zorunlu

Depo olarak kullanılacak dizinin yolu.

Yol mutlak veya çalışma alanı köküne göreli olabilir.

repo_mapping Dictionary: String -> String; zorunlu

Yerel depo adından küresel depo adına bir sözlük. Bu, bu deposunun bağımlılıkları için çalışma alanı bağımlılık çözümü üzerinde kontrol sahibi olmanızı sağlar.

Örneğin, "@foo": "@bar" girişi, bu depoda "@foo" bağımlılığı olduğunda (ör. "@foo//some:target" bağımlılığı) bu bağımlılığın aslında global olarak tanımlanmış "@bar" ("@bar//some:target") içinde çözülmesi gerektiğini belirtir.

new_local_repository

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

Bazel dosyaları içermeyen yerel bir dizini depo olarak kullanılabilir hale getirir. Bu dizinin Bazel BUILD dosyaları veya depo sınırı dosyası içermesi gerekmez. Bunlar bu depo kuralı tarafından oluşturulur. Dizin zaten Bazel dosyaları içeriyorsa bunun yerine <a href="#local_repository"><code>local_repository</code></a> kullanabilirsiniz.

Özellikler

name Ad; zorunlu

Bu kod deposu için benzersiz bir ad.

build_file Etiket; isteğe bağlı

Bu depo için BUILD dosyası olarak kullanılacak bir dosya.

build_file ve build_file_content arasından tam olarak biri belirtilmelidir.

Bu etiketin belirttiği dosyanın BUILD olarak adlandırılması gerekmez ancak adlandırılabilir. BUILD.new-repo-name gibi bir ad, gerçek BUILD dosyalarından ayırt etmek için iyi bir seçim olabilir.

build_file_content Dize; isteğe bağlı

Bu depo için oluşturulacak BUILD dosyasının içeriği.

build_file ve build_file_content arasından tam olarak biri belirtilmelidir.

path Dize; zorunlu

Depo olarak kullanılacak dizinin yolu.

Yol mutlak veya çalışma alanı köküne göreli olabilir.

repo_mapping Dictionary: String -> String; zorunlu

Yerel depo adından küresel depo adına bir sözlük. Bu, bu deposunun bağımlılıkları için çalışma alanı bağımlılık çözümü üzerinde kontrol sahibi olmanızı sağlar.

Örneğin, "@foo": "@bar" girişi, bu depoda "@foo" bağımlılığı olduğunda (ör. "@foo//some:target" bağımlılığı) bu bağımlılığın aslında global olarak tanımlanmış "@bar" ("@bar//some:target") içinde çözülmesi gerektiğini belirtir.