Metode yang tersedia di file MODULE.bazel.
Anggota
- archive_override
- bazel_dep
- git_override
- include
- inject_repo
- local_path_override
- module
- multiple_version_override
- override_repo
- register_execution_platforms
- register_toolchains
- single_version_override
- use_extension
- use_repo
- use_repo_rule
archive_override
None
archive_override(module_name, urls, integrity='', strip_prefix='', patches=[], patch_cmds=[], patch_strip=0)
Menentukan bahwa dependensi ini harus berasal dari file arsip (zip, gzip, dll.) di lokasi tertentu, bukan dari registry. Perintah ini hanya berlaku di modul root; dengan kata lain, jika modul digunakan sebagai dependensi oleh orang lain, penggantiannya sendiri akan diabaikan.
Parameter
Parameter | Deskripsi |
---|---|
module_name
|
diperlukan Nama dependensi modul Bazel tempat penggantian ini akan diterapkan. |
urls
|
string; atau Iterable dari string;
wajib URL arsip; dapat berupa URL http(s):// atau file://. |
integrity
|
defaultnya adalah '' Checksum file arsip yang diharapkan, dalam format Integritas Subresource. |
strip_prefix
|
defaultnya adalah '' Awalan direktori yang akan dihapus dari file yang diekstrak. |
patches
|
Iterable string;
default adalah [] Daftar label yang mengarah ke file patch yang akan diterapkan untuk modul ini. File patch harus ada di hierarki sumber project tingkat atas. Aturan tersebut diterapkan dalam urutan daftar. |
patch_cmds
|
Iterable string;
default adalah [] Urutan perintah Bash yang akan diterapkan di Linux/Macos setelah patch diterapkan. |
patch_strip
|
defaultnya adalah 0 Sama dengan --strip argumen patch Unix. |
bazel_dep
None
bazel_dep(name, version='', max_compatibility_level=-1, repo_name='', dev_dependency=False)
Mendeklarasikan dependensi langsung pada modul Bazel lain.
Parameter
Parameter | Deskripsi |
---|---|
name
|
required Nama modul yang akan ditambahkan sebagai dependensi langsung. |
version
|
default-nya adalah '' Versi modul yang akan ditambahkan sebagai dependensi langsung. |
max_compatibility_level
|
Defaultnya adalah -1 compatibility_level maksimum yang didukung untuk modul yang akan ditambahkan sebagai dependensi langsung. Versi modul menyiratkan kompatibilitas_level minimum yang didukung, serta level maksimum jika atribut ini tidak ditentukan.
|
repo_name
|
default adalah '' Nama repo eksternal yang mewakili dependensi ini. Ini secara default adalah nama modul. |
dev_dependency
|
default adalah False Jika benar, dependensi ini akan diabaikan jika modul saat ini bukan modul root atau `--ignore_dev_dependency` diaktifkan. |
git_override
None
git_override(module_name, remote, commit='', patches=[], patch_cmds=[], patch_strip=0, init_submodules=False, strip_prefix='')
Menentukan bahwa dependensi harus berasal dari commit tertentu dari repositori Git. Perintah ini hanya berlaku di modul root; dengan kata lain, jika modul digunakan sebagai dependensi oleh orang lain, penggantiannya sendiri akan diabaikan.
Parameter
Parameter | Deskripsi |
---|---|
module_name
|
required Nama dependensi modul Bazel yang akan menerapkan penggantian ini. |
remote
|
diperlukan URL repositori Git jarak jauh. |
commit
|
default adalah '' Commit yang harus di-check out. |
patches
|
Iterable string;
default adalah [] Daftar label yang mengarah ke file patch yang akan diterapkan untuk modul ini. File patch harus ada di hierarki sumber project tingkat atas. Aturan tersebut diterapkan sesuai urutan daftar. |
patch_cmds
|
Iterable string;
default adalah [] Urutan perintah Bash yang akan diterapkan di Linux/Macos setelah patch diterapkan. |
patch_strip
|
defaultnya adalah 0 Sama seperti --strip argumen patch Unix. |
init_submodules
|
defaultnya adalah False Apakah submodul git di repo yang diambil harus diinisialisasi secara rekursif. |
strip_prefix
|
defaultnya adalah '' Awalan direktori yang akan dihapus dari file yang diekstrak. Ini dapat digunakan untuk menargetkan subdirektori dari repositori git. Perhatikan bahwa subdirektori harus memiliki file `MODULE.bazel` sendiri dengan nama modul yang sama dengan argumen `module_name` yang diteruskan ke `git_override` ini. |
sertakan
None
include(label)
Menyertakan konten file lain yang mirip MODULE.bazel. Secara efektif, include()
berperilaku seolah-olah file yang disertakan ditempatkan secara tekstual di lokasi panggilan include()
, kecuali bahwa binding variabel (seperti yang digunakan untuk use_extension
) hanya terlihat dalam file tempatnya terjadi, bukan dalam file yang disertakan atau menyertakan.Hanya modul root yang dapat menggunakan include()
; akan terjadi error jika file MODULE bazel_dep
menggunakan include()
.
Hanya file di repo utama yang dapat disertakan.
include()
memungkinkan Anda mengelompokkan file modul root menjadi beberapa bagian, untuk menghindari file MODULE.bazel yang sangat besar atau mengelola kontrol akses dengan lebih baik untuk setiap segmen semantik.
Parameter
Parameter | Deskripsi |
---|---|
label
|
required Label yang mengarah ke file yang akan disertakan. Label harus mengarah ke file dalam repo utama; dengan kata lain, label harus diawali dengan garis miring ganda ( // ).
|
inject_repo
None
inject_repo(extension_proxy, *args, **kwargs)
Memasukkan satu atau beberapa repositori baru ke dalam ekstensi modul yang diberikan.
Nilai ini akan diabaikan jika modul saat ini bukan modul root atau `--ignore_dev_dependency`
diaktifkan.
Sebagai gantinya, gunakan override_repo
untuk mengganti
repo yang ada.
Parameter
Parameter | Deskripsi |
---|---|
extension_proxy
|
diperlukan Objek proxy ekstensi modul yang ditampilkan oleh panggilan use_extension .
|
args
|
required Repositori yang terlihat oleh modul saat ini yang harus dimasukkan ke dalam ekstensi dengan nama yang sama. |
kwargs
|
required Repositori baru yang akan dimasukkan ke dalam ekstensi, dengan nilainya adalah nama repositori dalam cakupan modul saat ini dan kunci adalah nama yang akan terlihat di dalam ekstensi. |
local_path_override
None
local_path_override(module_name, path)
Menentukan bahwa dependensi harus berasal dari direktori tertentu di disk lokal. Perintah ini hanya berlaku di modul root; dengan kata lain, jika modul digunakan sebagai dependensi oleh orang lain, penggantiannya sendiri akan diabaikan.
Parameter
Parameter | Deskripsi |
---|---|
module_name
|
diperlukan Nama dependensi modul Bazel tempat penggantian ini akan diterapkan. |
path
|
required Jalur ke direktori tempat modul ini berada. |
modul
None
module(name='', version='', compatibility_level=0, repo_name='', bazel_compatibility=[])
Mendeklarasikan properti modul Bazel tertentu yang diwakili oleh repo Bazel saat ini. Properti ini merupakan metadata penting modul (seperti nama dan versi), atau memengaruhi perilaku modul saat ini dan dependensinya. Fungsi ini harus dipanggil maksimal sekali, dan jika dipanggil, harus menjadi perintah pertama dalam file MODULE.bazel. Elemen ini hanya dapat dihilangkan jika modul ini merupakan modul root (misalnya, jika modul tersebut tidak akan bergantung pada modul lain).
Parameter
Parameter | Deskripsi |
---|---|
name
|
default-nya adalah '' Nama modul. Hanya dapat dihilangkan jika modul ini adalah modul root (yaitu, jika tidak akan menjadi dependensi modul lain). Nama modul yang valid harus: 1) hanya berisi huruf kecil (a-z), angka (0-9), titik (.), tanda hubung (-), dan garis bawah (_); 2) dimulai dengan huruf kecil; 3) diakhiri dengan huruf kecil atau angka. |
version
|
default-nya adalah '' Versi modul. Hanya dapat dihilangkan jika modul ini merupakan modul root (misalnya, jika modul ini tidak akan bergantung pada modul lain). Versi harus dalam format SemVer santai; lihat dokumentasi untuk detail selengkapnya. |
compatibility_level
|
defaultnya adalah 0 Tingkat kompatibilitas modul; tingkat ini harus diubah setiap kali ada perubahan besar yang tidak kompatibel. Ini pada dasarnya adalah "versi utama" modul dalam hal SemVer, kecuali bahwa versi ini tidak disematkan dalam string versi itu sendiri, tetapi ada sebagai kolom terpisah. Modul dengan tingkat kompatibilitas yang berbeda berpartisipasi dalam resolusi versi seolah-olah merupakan modul dengan nama yang berbeda, tetapi grafik dependensi akhir tidak boleh berisi beberapa modul dengan nama yang sama, tetapi tingkat kompatibilitasnya berbeda (kecuali jika multiple_version_override diberlakukan). Lihat dokumentasi untuk mengetahui detail selengkapnya.
|
repo_name
|
defaultnya adalah '' Nama repositori yang merepresentasikan modul ini, seperti yang terlihat oleh modul itu sendiri. Secara default, nama repo adalah nama modul. Nama ini dapat ditentukan untuk memudahkan migrasi project yang telah menggunakan nama repo untuk dirinya sendiri yang berbeda dengan nama modulnya. |
bazel_compatibility
|
Iterable string;
default adalah [] Daftar versi bazel yang memungkinkan pengguna mendeklarasikan versi Bazel yang kompatibel dengan modul ini. Tindakan ini TIDAK memengaruhi resolusi dependensi, tetapi bzlmod akan menggunakan informasi ini untuk memeriksa apakah versi Bazel Anda saat ini kompatibel. Format nilai ini adalah string beberapa nilai batasan yang dipisahkan oleh koma. Tiga batasan didukung: <=X.X.X: Versi Bazel harus sama dengan atau lebih lama dari X.X.X. Digunakan jika ada perubahan yang diketahui tidak kompatibel dalam versi yang lebih baru. >=X.X.X: Versi Bazel harus sama atau lebih baru dari X.X.X.Digunakan jika Anda bergantung pada beberapa fitur yang hanya tersedia sejak X.X.X. -X.X.X: Versi Bazel X.X.X tidak kompatibel. Digunakan saat ada bug di X.X.X yang mengganggu Anda, tetapi diperbaiki di versi yang lebih baru. |
multiple_version_override
None
multiple_version_override(module_name, versions, registry='')
Menentukan bahwa dependensi harus tetap berasal dari registry, tetapi beberapa versi harus diizinkan untuk berdampingan. Lihat dokumentasi untuk mengetahui detail selengkapnya. Perintah ini hanya berlaku di modul root; dengan kata lain, jika modul digunakan sebagai dependensi oleh orang lain, penggantiannya sendiri akan diabaikan.
Parameter
Parameter | Deskripsi |
---|---|
module_name
|
diperlukan Nama dependensi modul Bazel tempat penggantian ini akan diterapkan. |
versions
|
Iterable string;
required Secara eksplisit menentukan versi yang diizinkan untuk berdampingan. Versi ini harus sudah ada dalam pra-pemilihan grafik dependensi. Dependensi pada modul ini akan "diupgrade" ke versi terdekat yang diizinkan dan lebih tinggi pada tingkat kompatibilitas yang sama, sedangkan dependensi yang memiliki versi lebih tinggi daripada versi yang diizinkan pada tingkat kompatibilitas yang sama akan menyebabkan error. |
registry
|
defaultnya adalah '' Mengganti registry untuk modul ini; alih-alih menemukan modul ini dari daftar default registry, sebaiknya gunakan registry yang ditentukan. |
override_repo
None
override_repo(extension_proxy, *args, **kwargs)
Mengganti satu atau beberapa repositori yang ditentukan oleh ekstensi modul tertentu dengan repositori tertentu
yang terlihat oleh modul saat ini. Nilai ini akan diabaikan jika modul saat ini bukan modul root atau `--ignore_dev_dependency` diaktifkan.
Sebagai gantinya, gunakan inject_repo
untuk menambahkan repo baru.
Parameter
Parameter | Deskripsi |
---|---|
extension_proxy
|
required Objek proxy ekstensi modul yang ditampilkan oleh panggilan use_extension .
|
args
|
diperlukan Repositori dalam ekstensi yang harus diganti dengan repositori bernama sama dalam modul saat ini. |
kwargs
|
required Penggantian diterapkan ke repositori yang dihasilkan oleh ekstensi, dengan nilainya adalah nama repositori dalam cakupan modul saat ini dan kunci adalah nama repo yang akan diganti dalam ekstensi. |
register_execution_platforms
None
register_execution_platforms(dev_dependency=False, *platform_labels)
Menentukan platform eksekusi yang telah ditentukan untuk didaftarkan saat modul ini dipilih. Harus berupa pola target absolut (yaitu dimulai dengan @
atau //
). Lihat resolusi toolchain untuk mengetahui informasi selengkapnya.
Parameter
Parameter | Deskripsi |
---|---|
dev_dependency
|
default adalah False Jika benar, platform eksekusi tidak akan didaftarkan jika modul saat ini bukan modul root atau `--ignore_dev_dependency` diaktifkan. |
platform_labels
|
urutan string;
wajib Label platform yang akan didaftarkan. |
register_toolchains
None
register_toolchains(dev_dependency=False, *toolchain_labels)
Menentukan toolchain yang telah ditentukan untuk didaftarkan saat modul ini dipilih. Harus berupa pola target absolut (yaitu dimulai dengan @
atau //
). Lihat resolusi toolchain untuk mengetahui informasi selengkapnya.
Parameter
Parameter | Deskripsi |
---|---|
dev_dependency
|
defaultnya adalah False Jika true (benar), toolchain tidak akan didaftarkan jika modul saat ini bukan modul root atau `--ignore_dev_dependency` diaktifkan. |
toolchain_labels
|
urutan string;
wajib Label toolchain yang akan didaftarkan. Label dapat menyertakan :all , dalam hal ini, semua target yang menyediakan toolchain dalam paket akan didaftarkan dalam urutan leksikografis menurut nama.
|
single_version_override
None
single_version_override(module_name, version='', registry='', patches=[], patch_cmds=[], patch_strip=0)
Menentukan bahwa dependensi harus tetap berasal dari registry, tetapi versinya harus disematkan, atau registrynya diganti, atau daftar patch diterapkan. Perintah ini hanya berlaku di modul root; dengan kata lain, jika modul digunakan sebagai dependensi oleh orang lain, penggantiannya sendiri akan diabaikan.
Parameter
Parameter | Deskripsi |
---|---|
module_name
|
diperlukan Nama dependensi modul Bazel tempat penggantian ini akan diterapkan. |
version
|
defaultnya adalah '' Mengganti versi modul ini yang dideklarasikan dalam grafik dependensi. Dengan kata lain, modul ini akan "disematkan" ke versi pengganti ini. Atribut ini dapat dihilangkan jika semua yang ingin diganti adalah registry atau patch. |
registry
|
defaultnya adalah '' Mengganti registry untuk modul ini; alih-alih menemukan modul ini dari daftar default registry, sebaiknya gunakan registry yang ditentukan. |
patches
|
Iterable string;
defaultnya adalah [] Daftar label yang mengarah ke file patch yang akan diterapkan ke modul ini. File patch harus ada di hierarki sumber project level teratas. Aturan tersebut diterapkan sesuai urutan daftar. Jika {i>patch<i} membuat perubahan pada file MODULE.bazel, perubahan ini hanya akan efektif jika file {i>patch<i} disediakan oleh modul {i>root<i}. |
patch_cmds
|
Iterable string;
default adalah [] Urutan perintah Bash yang akan diterapkan di Linux/Macos setelah patch diterapkan. Perubahan pada file MODULE.bazel tidak akan efektif. |
patch_strip
|
defaultnya adalah 0 Sama dengan --strip argumen patch Unix. |
use_extension
module_extension_proxy use_extension(extension_bzl_file, extension_name, *, dev_dependency=False, isolate=False)Menampilkan objek proxy yang mewakili ekstensi modul; metodenya dapat dipanggil untuk membuat tag ekstensi modul.
Parameter
Parameter | Deskripsi |
---|---|
extension_bzl_file
|
diperlukan Label ke file Starlark yang menentukan ekstensi modul. |
extension_name
|
required Nama ekstensi modul yang akan digunakan. Simbol dengan nama ini harus diekspor oleh file Starlark. |
dev_dependency
|
default adalah False Jika true, penggunaan ekstensi modul ini akan diabaikan jika modul saat ini bukan modul root atau `--ignore_dev_dependency` diaktifkan. |
isolate
|
default-nya adalah False Eksperimental. Parameter ini bersifat eksperimental dan dapat berubah kapan saja. Jangan bergantung pada hal ini. Fitur ini dapat diaktifkan secara eksperimental dengan menyetel ---experimental_isolated_extension_usages Jika benar, penggunaan ekstensi modul ini akan diisolasi dari semua penggunaan lain, baik dalam modul ini maupun modul lainnya. Tag yang dibuat untuk penggunaan ini tidak memengaruhi penggunaan lain dan repositori yang dihasilkan oleh ekstensi untuk penggunaan ini akan berbeda dari semua repositori lain yang dihasilkan oleh ekstensi. Parameter ini saat ini bersifat eksperimental dan hanya tersedia dengan flag |
use_repo
None
use_repo(extension_proxy, *args, **kwargs)
Mengimpor satu atau beberapa repositori yang dibuat oleh ekstensi modul tertentu ke dalam cakupan modul saat ini.
Parameter
Parameter | Deskripsi |
---|---|
extension_proxy
|
diperlukan Objek proxy ekstensi modul yang ditampilkan oleh panggilan use_extension .
|
args
|
required Nama repo yang akan diimpor. |
kwargs
|
required Menentukan repo tertentu untuk diimpor ke dalam cakupan modul saat ini dengan nama yang berbeda. Kunci harus berupa nama yang akan digunakan dalam cakupan saat ini, sedangkan nilai harus berupa nama asli yang diekspor oleh ekstensi modul. |
use_repo_rule
repo_rule_proxy use_repo_rule(repo_rule_bzl_file, repo_rule_name)Menampilkan nilai proxy yang dapat langsung dipanggil dalam file MODULE.bazel sebagai aturan repositori, satu atau beberapa kali. Repos yang dibuat dengan cara tersebut hanya terlihat oleh modul saat ini, dengan nama yang dideklarasikan menggunakan atribut
name
di proxy. Atribut dev_dependency
Boolean implisit juga dapat digunakan pada proxy untuk menunjukkan bahwa repo tertentu hanya akan dibuat jika modul saat ini adalah modul root.
Parameter
Parameter | Deskripsi |
---|---|
repo_rule_bzl_file
|
required Label ke file Starlark yang menentukan aturan repo. |
repo_rule_name
|
required Nama aturan repositori yang akan digunakan. Simbol dengan nama ini harus diekspor oleh file Starlark. |