sử dụng quy tắc kho lưu trữ

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_cmdspatch_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_fileworkspace_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.