Các phương thức có trong tệp MODULE.bazel.
Hội viên
- archive_override
- bazel_dep
- git_override
- bao gồm
- inject_repo
- local_path_override
- mô-đun
- 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)
Chỉ định sự phụ thuộc này phải đến từ một tệp lưu trữ (zip, gzip, v.v.) tại một vị trí nhất định, thay vì từ sổ đăng ký. Chỉ thị này chỉ có hiệu lực trong mô-đun gốc; nói cách khác, nếu một mô-đun được dùng làm phần phụ thuộc của các mô-đun khác, thì các chế độ ghi đè của chính mô-đun đó sẽ bị bỏ qua.
Thông số
Thông số | Mô tả |
---|---|
module_name
|
bắt buộc Tên của phần phụ thuộc mô-đun Bazel để áp dụng chế độ ghi đè này. |
urls
|
string; hoặc Iterable của string;
bắt buộc URL của tệp lưu trữ; có thể là URL http(s):// hoặc file://. |
integrity
|
mặc định là '' Checksum dự kiến của tệp lưu trữ, ở định dạng Tính toàn vẹn của tài nguyên phụ. |
strip_prefix
|
giá trị mặc định là '' Tiền tố thư mục để xoá khỏi các tệp đã giải nén. |
patches
|
Có thể lặp lại của chuỗi; mặc định là [] Danh sách các nhãn trỏ đến tệp bản vá để áp dụng cho mô-đun này. Các tệp bản vá phải tồn tại trong cây nguồn của dự án cấp cao nhất. Các đề xuất được áp dụng theo thứ tự danh sách. |
patch_cmds
|
Tập hợp lặp lại của chuỗi;
mặc định là [] Trình tự các lệnh Bash sẽ được áp dụng trên Linux/Macos sau khi áp dụng các bản vá. |
patch_strip
|
mặc định là 0 Giống như đối số --strip của bản vá Unix. |
bazel_dep
None
bazel_dep(name, version='', max_compatibility_level=-1, repo_name='', dev_dependency=False)
Khai báo phần phụ thuộc trực tiếp trên một mô-đun Bazel khác.
Thông số
Thông số | Mô tả |
---|---|
name
|
bắt buộc Tên của mô-đun cần thêm làm phần phụ thuộc trực tiếp. |
version
|
mặc định là '' Phiên bản của mô-đun sẽ được thêm làm phần phụ thuộc trực tiếp. |
max_compatibility_level
|
mặc định là -1 compatibility_level tối đa được hỗ trợ để thêm mô-đun dưới dạng phần phụ thuộc trực tiếp. Phiên bản của mô-đun ngụ ý cấp độ tương thích_tối thiểu được hỗ trợ, cũng như cấp độ tối đa nếu không chỉ định thuộc tính này.
|
repo_name
|
mặc định là '' Tên của kho lưu trữ bên ngoài đại diện cho phần phụ thuộc này. Theo mặc định, đây là tên của mô-đun. |
dev_dependency
|
mặc định là False Nếu đúng, phần phụ thuộc này sẽ bị bỏ qua nếu mô-đun hiện tại không phải là mô-đun gốc hoặc `--ignore_dev_dependency` đang bật. |
git_override
None
git_override(module_name, remote, commit='', patches=[], patch_cmds=[], patch_strip=0, init_submodules=False, strip_prefix='')
Chỉ định một phần phụ thuộc phải đến từ một cam kết nhất định của kho lưu trữ Git. Lệnh này chỉ có hiệu lực trong mô-đun gốc. Nói cách khác, nếu một mô-đun được người khác sử dụng làm phần phụ thuộc thì các lượt ghi đè của chính mô-đun đó sẽ bị bỏ qua.
Thông số
Thông số | Mô tả |
---|---|
module_name
|
bắt buộc Tên của phần phụ thuộc mô-đun Bazel để áp dụng chế độ ghi đè này. |
remote
|
bắt buộc URL của kho lưu trữ Git từ xa. |
commit
|
mặc định là '' Cam kết cần được kiểm tra. |
patches
|
Có thể lặp lại của chuỗi; mặc định là [] Danh sách các nhãn trỏ đến tệp bản vá để áp dụng cho mô-đun này. Các tệp bản vá phải tồn tại trong cây nguồn của dự án cấp cao nhất. Các đề xuất được áp dụng theo thứ tự danh sách. |
patch_cmds
|
Có thể lặp lại của chuỗi; mặc định là [] Trình tự các lệnh Bash sẽ được áp dụng trên Linux/Macos sau khi áp dụng bản vá. |
patch_strip
|
mặc định là 0 Giống như đối số --strip của bản vá Unix. |
init_submodules
|
mặc định là False Liệu các mô-đun con git trong kho lưu trữ đã tìm nạp có được khởi tạo đệ quy hay không. |
strip_prefix
|
mặc định là '' Tiền tố thư mục để loại bỏ khỏi các tệp đã trích xuất. Bạn có thể dùng tệp này để nhắm mục tiêu một thư mục con của kho lưu trữ git. Xin lưu ý rằng thư mục con phải có tệp `MODULE.bazel` riêng với tên mô-đun giống với đối số `module_name` được truyền đến `git_override` này. |
bao gồm
None
include(label)
Bao gồm nội dung của một tệp MODULE.bazel khác. Về cơ bản, include()
hoạt động như thể tệp được đưa vào được đặt theo văn bản tại vị trí của lệnh gọi include()
, ngoại trừ việc các liên kết biến (chẳng hạn như các liên kết được dùng cho use_extension
) chỉ hiển thị trong tệp mà chúng xuất hiện, chứ không phải trong bất kỳ tệp nào được đưa vào hoặc bao gồm.Chỉ mô-đun gốc mới có thể sử dụng include()
; sẽ xảy ra lỗi nếu tệp MODULE của bazel_dep
sử dụng include()
.
Chỉ có thể thêm các tệp trong kho lưu trữ chính.
include()
cho phép bạn phân đoạn tệp mô-đun gốc thành nhiều phần, để tránh có một tệp MODULE.bazel khổng lồ hoặc để quản lý tốt hơn quyền kiểm soát truy cập cho từng phân đoạn ngữ nghĩa.
Thông số
Thông số | Mô tả |
---|---|
label
|
bắt buộc Nhãn trỏ đến tệp cần đưa vào. Nhãn phải trỏ đến một tệp trong kho lưu trữ chính; nói cách khác, nhãn này phải bắt đầu bằng dấu gạch chéo đôi ( // ).
|
inject_repo
None
inject_repo(extension_proxy, *args, **kwargs)
Chèn một hoặc nhiều kho lưu trữ mới vào tiện ích mô-đun nhất định.
Giá trị này sẽ bị bỏ qua nếu mô-đun hiện tại không phải là mô-đun gốc hoặc nếu bạn bật tuỳ chọn `--ignore_dev_dependency`.
Thay vào đó, hãy sử dụng override_repo
để ghi đè một kho lưu trữ hiện có.
Thông số
Thông số | Mô tả |
---|---|
extension_proxy
|
bắt buộc Đối tượng proxy mở rộng mô-đun do lệnh gọi use_extension trả về.
|
args
|
bắt buộc Kho lưu trữ hiển thị với mô-đun hiện tại sẽ được chèn vào tiện ích có cùng tên. |
kwargs
|
bắt buộc Kho lưu trữ mới để chèn vào tiện ích, trong đó các giá trị là tên của kho lưu trữ trong phạm vi của mô-đun hiện tại và khoá là tên mà chúng sẽ hiển thị trong tiện ích. |
local_path_override
None
local_path_override(module_name, path)
Chỉ định một phần phụ thuộc phải đến từ một thư mục nhất định trên ổ đĩa cục bộ. Lệnh này chỉ có hiệu lực trong mô-đun gốc. Nói cách khác, nếu một mô-đun được người khác sử dụng làm phần phụ thuộc thì các lượt ghi đè riêng của mô-đun đó sẽ bị bỏ qua.
Thông số
Thông số | Mô tả |
---|---|
module_name
|
bắt buộc Tên của phần phụ thuộc mô-đun Bazel để áp dụng chế độ ghi đè này. |
path
|
bắt buộc Đường dẫn đến thư mục chứa mô-đun này. |
mô-đun
None
module(name='', version='', compatibility_level=0, repo_name='', bazel_compatibility=[])
Khai báo một số thuộc tính của mô-đun Bazel được biểu thị bằng kho lưu trữ Bazel hiện tại. Các thuộc tính này là siêu dữ liệu thiết yếu của mô-đun (chẳng hạn như tên và phiên bản) hoặc ảnh hưởng đến hành vi của mô-đun hiện tại và các phần phụ thuộc của mô-đun đó. Bạn nên gọi lệnh này tối đa một lần và nếu được gọi, thì đó phải là lệnh đầu tiên trong tệp MODULE.bazel. Chỉ có thể bỏ qua nếu mô-đun này là mô-đun gốc (như trong, nếu mô-đun không bị phụ thuộc bởi một mô-đun khác).
Thông số
Thông số | Mô tả |
---|---|
name
|
mặc định là '' Tên của mô-đun. Chỉ có thể bỏ qua nếu mô-đun này là mô-đun gốc (như trong, nếu mô-đun không bị phụ thuộc bởi một mô-đun khác). Tên mô-đun hợp lệ phải: 1) chỉ được chứa chữ thường (a-z), chữ số (0-9), dấu chấm (.), dấu gạch nối (-) và dấu gạch dưới (_); 2) bắt đầu bằng một chữ cái viết thường; 3) kết thúc bằng chữ cái viết thường hoặc chữ số. |
version
|
mặc định là '' Phiên bản của mô-đun. Chỉ có thể bỏ qua nếu mô-đun này là mô-đun gốc (chẳng hạn như nếu mô-đun này không phụ thuộc vào mô-đun khác). Phiên bản phải ở định dạng SemVer thoải mái; hãy xem tài liệu để biết thêm chi tiết. |
compatibility_level
|
mặc định là 0 Mức độ tương thích của mô-đun. Bạn nên thay đổi giá trị này mỗi khi có thay đổi lớn về khả năng không tương thích. Về cơ bản, đây là "phiên bản chính" của mô-đun xét về mặt SemVer, ngoại trừ việc mô-đun không được nhúng vào chuỗi phiên bản mà tồn tại dưới dạng một trường riêng biệt. Các mô-đun có mức độ tương thích khác nhau sẽ tham gia vào quá trình phân giải phiên bản như thể đó là các mô-đun có tên khác nhau, nhưng biểu đồ phần phụ thuộc cuối cùng không được chứa nhiều mô-đun có cùng tên nhưng khác mức độ tương thích (trừ phi multiple_version_override có hiệu lực). Hãy xem tài liệu để biết thêm chi tiết.
|
repo_name
|
mặc định là '' Tên của kho lưu trữ đại diện cho mô-đun này, như chính mô-đun nhìn thấy. Theo mặc định, tên của kho lưu trữ là tên của mô-đun. Bạn có thể chỉ định tên này để dễ dàng di chuyển các dự án đã sử dụng tên kho lưu trữ khác với tên mô-đun. |
bazel_compatibility
|
Đối tượng có thể lặp lại của chuỗi; giá trị mặc định là [] Danh sách các phiên bản bazel cho phép người dùng khai báo phiên bản Bazel nào tương thích với mô-đun này. Điều này KHÔNG ảnh hưởng đến việc phân giải phần phụ thuộc, nhưng bzlmod sẽ sử dụng thông tin này để kiểm tra xem phiên bản Bazel hiện tại của bạn có tương thích hay không. Định dạng của giá trị này là một chuỗi gồm một số giá trị ràng buộc được phân tách bằng dấu phẩy. Ba quy tắc ràng buộc được hỗ trợ: <=X.X.X: Phiên bản Bazel phải bằng hoặc cũ hơn X.X.X. Được dùng khi có thay đổi không tương thích đã biết trong phiên bản mới hơn. >=X.X.X: Phiên bản Bazel phải bằng hoặc mới hơn X.X.X.Được sử dụng khi bạn phụ thuộc vào một số tính năng chỉ có từ X.X.X. -X.X.X: Phiên bản Bazel X.X.X không tương thích. Được dùng khi có lỗi trong X.X.X khiến bạn gặp sự cố, nhưng đã được khắc phục trong các phiên bản sau. |
multiple_version_override
None
multiple_version_override(module_name, versions, registry='')
Chỉ định rằng một phần phụ thuộc vẫn phải đến từ một sổ đăng ký, nhưng cho phép nhiều phiên bản của phần phụ thuộc đó cùng tồn tại. Hãy xem tài liệu để biết thêm chi tiết. Lệnh này chỉ có hiệu lực trong mô-đun gốc. Nói cách khác, nếu một mô-đun được người khác sử dụng làm phần phụ thuộc thì các lượt ghi đè của chính mô-đun đó sẽ bị bỏ qua.
Thông số
Thông số | Mô tả |
---|---|
module_name
|
bắt buộc Tên của phần phụ thuộc mô-đun Bazel để áp dụng chế độ ghi đè này. |
versions
|
Tập hợp lặp lại của chuỗi;
bắt buộc Chỉ định rõ ràng các phiên bản được phép tồn tại cùng nhau. Các phiên bản này phải có trong lựa chọn trước của biểu đồ phần phụ thuộc. Các phần phụ thuộc trên mô-đun này sẽ được "nâng cấp" lên phiên bản cao hơn gần nhất được phép ở cùng cấp độ tương thích, trong khi các phần phụ thuộc có phiên bản cao hơn mọi phiên bản được phép ở cùng cấp độ tương thích sẽ gây ra lỗi. |
registry
|
mặc định là '' Ghi đè sổ đăng ký cho mô-đun này. Thay vì tìm mô-đun này từ danh sách sổ đăng ký mặc định, bạn nên sử dụng sổ đăng ký đã cho. |
override_repo
None
override_repo(extension_proxy, *args, **kwargs)
Ghi đè một hoặc nhiều kho lưu trữ do phần mở rộng mô-đun nhất định xác định bằng các kho lưu trữ nhất định mà mô-đun hiện tại có thể thấy. Mô-đun này sẽ bị bỏ qua nếu mô-đun hiện tại không phải là mô-đun gốc hoặc "--ignore_dev_Dependencies" được bật.
Thay vào đó, hãy sử dụng inject_repo
để thêm một kho lưu trữ mới.
Thông số
Thông số | Mô tả |
---|---|
extension_proxy
|
bắt buộc Đối tượng proxy mở rộng mô-đun do lệnh gọi use_extension trả về.
|
args
|
bắt buộc Các kho lưu trữ trong tiện ích sẽ được ghi đè bằng các kho lưu trữ có cùng tên trong mô-đun hiện tại. |
kwargs
|
bắt buộc Các chế độ ghi đè để áp dụng cho các kho lưu trữ do tiện ích tạo, trong đó các giá trị là tên của kho lưu trữ trong phạm vi của mô-đun hiện tại và khoá là tên của kho lưu trữ mà chúng sẽ ghi đè trong tiện ích. |
register_execution_platforms
None
register_execution_platforms(dev_dependency=False, *platform_labels)
Chỉ định các nền tảng thực thi đã xác định sẽ được đăng ký khi mô-đun này được chọn. Phải là mẫu mục tiêu tuyệt đối (tức là bắt đầu bằng @
hoặc //
). Hãy xem phần độ phân giải chuỗi công cụ để biết thêm thông tin.
Thông số
Thông số | Mô tả |
---|---|
dev_dependency
|
giá trị mặc định là False Nếu giá trị là true, nền tảng thực thi sẽ không được đăng ký nếu mô-đun hiện tại không phải là mô-đun gốc hoặc thuộc tính "--ignore_dev_Dependencies" được bật. |
platform_labels
|
trình tự các chuỗi;
bắt buộc Nhãn của các nền tảng cần đăng ký. |
register_toolchains
None
register_toolchains(dev_dependency=False, *toolchain_labels)
Chỉ định các chuỗi công cụ đã xác định sẽ được đăng ký khi mô-đun này được chọn. Phải là mẫu mục tiêu tuyệt đối (ví dụ: bắt đầu bằng @
hoặc //
). Hãy xem bài viết cách giải quyết liên quan đến chuỗi công cụ để biết thêm thông tin.
Thông số
Thông số | Mô tả |
---|---|
dev_dependency
|
mặc định là False Nếu đúng, các chuỗi công cụ sẽ không được đăng ký nếu mô-đun hiện tại không phải là mô-đun gốc hoặc `--ignore_dev_dependency` đang bật. |
toolchain_labels
|
trình tự của chuỗi;
bắt buộc Nhãn của chuỗi công cụ cần đăng ký. Nhãn có thể bao gồm :all , trong trường hợp này, tất cả mục tiêu cung cấp chuỗi công cụ trong gói sẽ được đăng ký theo thứ tự bảng chữ cái theo tên.
|
single_version_override
None
single_version_override(module_name, version='', registry='', patches=[], patch_cmds=[], patch_strip=0)
Chỉ định rằng một phần phụ thuộc vẫn phải đến từ một sổ đăng ký, nhưng phiên bản của phần phụ thuộc đó phải được ghim hoặc sổ đăng ký của phần phụ thuộc đó phải được ghi đè hoặc danh sách các bản vá được áp dụng. Lệnh này chỉ có hiệu lực trong mô-đun gốc. Nói cách khác, nếu một mô-đun được người khác sử dụng làm phần phụ thuộc thì các lượt ghi đè của chính mô-đun đó sẽ bị bỏ qua.
Thông số
Thông số | Mô tả |
---|---|
module_name
|
bắt buộc Tên của phần phụ thuộc mô-đun Bazel để áp dụng chế độ ghi đè này. |
version
|
mặc định là '' Ghi đè phiên bản đã khai báo của mô-đun này trong biểu đồ phần phụ thuộc. Nói cách khác, mô-đun này sẽ được "ghim" vào phiên bản ghi đè này. Bạn có thể bỏ qua thuộc tính này nếu tất cả những gì muốn ghi đè là sổ đăng ký hoặc bản vá. |
registry
|
mặc định là '' Ghi đè sổ đăng ký cho mô-đun này; thay vì tìm mô-đun này trong danh sách sổ đăng ký mặc định, bạn nên sử dụng sổ đăng ký đã cho. |
patches
|
Có thể lặp lại của chuỗi; mặc định là [] Danh sách các nhãn trỏ đến tệp bản vá để áp dụng cho mô-đun này. Các tệp bản vá phải tồn tại trong cây nguồn của dự án cấp cao nhất. Các đề xuất được áp dụng theo thứ tự danh sách. Nếu một bản vá thực hiện thay đổi đối với tệp MODULE.bazel, thì những thay đổi này sẽ chỉ có hiệu lực nếu tệp vá do mô-đun gốc cung cấp. |
patch_cmds
|
Tập hợp lặp lại của chuỗi;
mặc định là [] Trình tự các lệnh Bash sẽ được áp dụng trên Linux/Macos sau khi áp dụng các bản vá. Các thay đổi đối với tệp MODULE.bazel sẽ không có hiệu lực. |
patch_strip
|
mặc định là 0 Giống như đối số --strip của bản vá Unix. |
use_extension
module_extension_proxy use_extension(extension_bzl_file, extension_name, *, dev_dependency=False, isolate=False)Trả về một đối tượng proxy đại diện cho một tiện ích mô-đun; các phương thức của đối tượng này có thể được gọi để tạo thẻ tiện ích mô-đun.
Thông số
Thông số | Mô tả |
---|---|
extension_bzl_file
|
bắt buộc Nhãn cho tệp Starlark xác định đuôi mô-đun. |
extension_name
|
bắt buộc Tên của phần mở rộng mô-đun cần sử dụng. Biểu tượng có tên này phải được tệp Starlark xuất. |
dev_dependency
|
mặc định là False Nếu đúng, việc sử dụng tiện ích mô-đun này sẽ bị bỏ qua nếu mô-đun hiện tại không phải là mô-đun gốc hoặc `--ignore_dev_dependency` đang bật. |
isolate
|
mặc định là False Thử nghiệm. Thông số này đang trong giai đoạn thử nghiệm và có thể thay đổi bất cứ lúc nào. Vui lòng không phụ thuộc vào tính năng này. Bạn có thể bật tính năng này trên cơ sở thử nghiệm bằng cách đặt ---experimental_isolated_extension_usages Nếu đúng, thì cách sử dụng tiện ích mô-đun này sẽ được tách biệt với tất cả các cách sử dụng khác, cả trong mô-đun này và các mô-đun khác. Các thẻ được tạo cho mục đích sử dụng này không ảnh hưởng đến các mục đích sử dụng khác và kho lưu trữ do tiện ích tạo cho mục đích sử dụng này sẽ khác với tất cả các kho lưu trữ khác do tiện ích tạo. Thông số này hiện đang trong giai đoạn thử nghiệm và chỉ có thể sử dụng với cờ |
use_repo
None
use_repo(extension_proxy, *args, **kwargs)
Nhập một hoặc nhiều kho lưu trữ do tiện ích mô-đun nhất định tạo ra vào phạm vi của mô-đun hiện tại.
Thông số
Thông số | Mô tả |
---|---|
extension_proxy
|
bắt buộc Đối tượng proxy mở rộng mô-đun do lệnh gọi use_extension trả về.
|
args
|
bắt buộc Tên của các kho lưu trữ cần nhập. |
kwargs
|
bắt buộc Chỉ định một số kho lưu trữ nhất định để nhập vào phạm vi của mô-đun hiện tại với các tên khác nhau. Khoá phải là tên để sử dụng trong phạm vi hiện tại, trong khi các giá trị phải là tên gốc mà tiện ích mô-đun xuất. |
use_repo_rule
repo_rule_proxy use_repo_rule(repo_rule_bzl_file, repo_rule_name)Trả về một giá trị proxy có thể được gọi trực tiếp trong tệp MODULE.bazel dưới dạng quy tắc kho lưu trữ, một hoặc nhiều lần. Các kho lưu trữ được tạo theo cách này chỉ hiển thị cho mô-đun hiện tại, theo tên được khai báo bằng thuộc tính
name
trên proxy. Thuộc tính Boolean dev_dependency
ngầm ẩn cũng có thể được dùng trên proxy để biểu thị rằng một repo nhất định chỉ được tạo khi mô-đun hiện tại là mô-đun gốc.
Thông số
Thông số | Mô tả |
---|---|
repo_rule_bzl_file
|
bắt buộc Nhãn cho tệp Starlark xác định quy tắc kho lưu trữ. |
repo_rule_name
|
bắt buộc Tên của quy tắc kho lưu trữ để sử dụng. Biểu tượng có tên này phải được tệp Starlark xuất. |