Bạn có thể tải các hàm sau đây từ @bazel_tools//tools/build_defs/repo:utils.bzl
.
Tiện ích để thao tác với các kho lưu trữ bên ngoài sau khi được tìm nạp.
Thiết lập
Các phần mềm tiện ích này được dùng theo các quy tắc lưu trữ khác. Bạn có thể tải các báo cáo này như sau.
load(
"@bazel_tools//tools/build_defs/repo:utils.bzl",
"workspace_and_buildfile",
"patch",
"update_attrs",
)
có thể
maybe(repo_rule, name, kwargs)
Hàm Utility chỉ dùng để thêm kho lưu trữ nếu chưa có kho lưu trữ.
Việc này là để triển khai macro repository.bzl an toàn được ghi lại trong https://bazel.build/rules/deploying#dependency.
Các tham số
repo_rule |
là bắt buộc.
hàm quy tắc lưu trữ. |
name |
là bắt buộc.
tên của kho lưu trữ cần tạo. |
kwargs |
không bắt buộc.
các đối số còn lại được chuyển đến hàm repo_Rule. |
Trả bóng
Không có gì, định nghĩa kho lưu trữ khi cần dưới dạng hiệu ứng phụ.
parse_netrc
parse_netrc(contents, filename)
Hàm tiện ích để phân tích cú pháp ít nhất một tệp .netrc cơ bản.
Các tham số
contents |
là bắt buộc.
đầu vào cho trình phân tích cú pháp. |
filename |
không bắt buộc.
mặc định là None
tên tệp để sử dụng trong thông báo lỗi, nếu có. |
Trả bóng
truy xuất chính tả ánh xạ tên máy đến một lệnh chính tả kèm theo thông tin được cung cấp về chúng
bản vá
patch(ctx, patches, patch_cmds, patch_cmds_win, patch_tool, patch_args, auth)
Triển khai bản vá một kho lưu trữ đã trích xuất.
Quy tắc này nhằm dùng trong hàm triển khai của quy tắc kho lưu trữ. Nếu bạn không chỉ định các tham số patches
, patch_tool
, patch_args
, patch_cmds
và patch_cmds_win
, thì các tham số này sẽ được lấy từ ctx.attr
.
Các tham số
ctx |
là bắt buộc.
Ngữ cảnh kho lưu trữ của quy tắc kho lưu trữ gọi hàm tiện ích này. |
patches |
không bắt buộc.
mặc định là None
Các tệp bản vá sẽ áp dụng. Danh sách các chuỗi, Nhãn hoặc đường dẫn. |
patch_cmds |
không bắt buộc.
mặc định là None
Các lệnh Bash cần chạy để vá lỗi, chuyển lần lượt từng lệnh để bash -c. Danh sách chuỗi |
patch_cmds_win |
không bắt buộc.
mặc định là None
Các lệnh Powershell để chạy để vá, chuyển lần lượt từng lệnh đến powershell /c. Danh sách chuỗi. Nếu giá trị boolean của tham số này là false, thì patch_cmds sẽ được sử dụng và thông số này sẽ bị bỏ qua. |
patch_tool |
không bắt buộc.
mặc định là None
Đường dẫn của công cụ bản vá cần thực thi để áp dụng các bản vá. Chuỗi. |
patch_args |
không bắt buộc.
mặc định là None
Các đối số cần truyền đến công cụ vá. Danh sách chuỗi. |
auth |
không bắt buộc.
mặc định là None
Lệnh tuỳ chọn chỉ định thông tin xác thực cho một số URL. |
read_netrc
read_netrc(ctx, filename)
Hàm tiện ích để phân tích cú pháp ít nhất một tệp .netrc cơ bản.
Các tham số
ctx |
là bắt buộc.
Ngữ cảnh kho lưu trữ của quy tắc kho lưu trữ gọi hàm tiện ích này. |
filename |
là bắt buộc.
tên của tệp .netrc cần đọc |
Trả bóng
truy xuất chính tả ánh xạ tên máy đến một lệnh chính tả kèm theo thông tin được cung cấp về chúng
read_user_netrc
read_user_netrc(ctx)
Đọc tệp netrc mặc định của người dùng.
Các tham số
ctx |
là bắt buộc.
Ngữ cảnh kho lưu trữ của quy tắc kho lưu trữ gọi hàm hiệu dụng này. |
Trả bóng
truy xuất chính tả ánh xạ tên máy đến một lệnh chính tả kèm theo thông tin được cung cấp về các tên máy đó.
update_attrs
update_attrs(orig, keys, override)
Hàm hiệu dụng để thay đổi và thêm các thuộc tính được chỉ định vào lệnh gọi quy tắc lưu trữ cụ thể.
Mã này được dùng để tạo quy tắc có thể tái tạo.
Các tham số
orig |
là bắt buộc.
lệnh của các thuộc tính đã đặt (rõ ràng hoặc ngầm định) bằng một lệnh gọi quy tắc cụ thể |
keys |
là bắt buộc.
bộ thuộc tính đầy đủ được xác định theo quy tắc này |
override |
là bắt buộc.
bản chính của các thuộc tính để ghi đè hoặc thêm vào bản gốc |
Trả bóng
bản chính tả của thuộc tính với các khoá từ ghi đè được chèn/cập nhật
use_netrc
use_netrc(netrc, urls, patterns)
Tính toán lệnh xác thực từ tệp netrc đã phân tích cú pháp và danh sách URL.
Các tham số
netrc |
là bắt buộc.
tệp netrc đã được phân tích cú pháp thành một lệnh, ví dụ: như lấy từ read_netrc |
urls |
là bắt buộc.
một danh sách URL. |
patterns |
là bắt buộc.
bản ghi URL không bắt buộc cho mẫu uỷ quyền |
Trả bóng
dict thích hợp làm đối số xác thực cho ctx.download; chính xác hơn là dict
workspace_and_buildfile
workspace_and_buildfile(ctx)
Hàm tiện ích để ghi WORKSPACE và tệp BUILD nếu được yêu cầu.
Quy tắc này nhằm dùng trong hàm triển khai quy tắc lưu trữ.
Đoạn mã này giả định các tham số name
, build_file
, build_file_content
, workspace_file
và workspace_file_content
có trong ctx.attr
; 4 tham số sau có thể có giá trị Không có.
Các tham số
ctx |
là bắt buộc.
Ngữ cảnh kho lưu trữ của quy tắc kho lưu trữ gọi hàm tiện ích này. |