implementation
khi tạo quy tắc kho lưu trữ.
Thành viên
- attr
- xóa
- tải xuống
- download_and_extract
- thực thi
- trích xuất
- file
- name
- hệ điều hành
- bản vá
- đường dẫn
- đọc
- report_progress
- đường liên kết tượng trưng
- mẫu
- mà
- workspace_root
thuộc tính
struct repository_ctx.attrMột cấu trúc để truy cập vào giá trị của các thuộc tính. Các giá trị do người dùng cung cấp (nếu không, hệ thống sẽ sử dụng giá trị mặc định).
xóa
bool repository_ctx.delete(path)Xóa một tệp hoặc thư mục. Trả về một giá trị bool, cho biết liệu tệp hoặc thư mục có thực sự bị lệnh gọi này xoá hay không.
Các tham số
Thông số | Nội dung mô tả |
---|---|
path
|
string; or path ;
bắt buộcĐường dẫn của tệp cần xoá, so với thư mục lưu trữ hoặc tuyệt đối. Có thể là một đường dẫn hoặc một chuỗi. |
tải xuống
struct repository_ctx.download(url, output='', sha256='', executable=False, allow_fail=False, canonical_id='', auth={}, *, integrity='')Tải tệp xuống đường dẫn đầu ra cho url được cung cấp và trả về cấu trúc có chứa
success
, cờ này là true
nếu quá trình tải xuống hoàn tất thành công và nếu thành công, hàm băm của tệp có các trường sha256
và integrity
.
Các tham số
Thông số | Nội dung mô tả |
---|---|
url
|
string; or Iterable of strings ;
bắt buộcDanh sách các URL phản chiếu tham chiếu cùng một tệp. |
output
|
string; or Label; or path ; default = ''đường dẫn đến tệp đầu ra, liên quan đến thư mục kho lưu trữ. |
sha256
|
default = '' hàm băm SHA-256 dự kiến của tệp đã tải xuống. Giá trị này phải khớp với hàm băm SHA-256 của tệp được tải xuống. Việc bỏ qua SHA-256 là một rủi ro bảo mật vì các tệp từ xa có thể thay đổi. Tốt nhất là bỏ qua trường này sẽ tạo bản dựng không có dấu vết. Bạn không bắt buộc phải thiết lập để phát triển dễ dàng hơn nhưng nên đặt trước khi vận chuyển. |
executable
|
default = False đặt cờ thực thi trên tệp đã tạo, false theo mặc định. |
allow_fail
|
default = False Nếu được đặt, hãy chỉ ra lỗi trong giá trị trả về thay vì báo lỗi cho các lượt tải xuống không thành công |
canonical_id
|
default = '' Nếu được đặt, hãy hạn chế lượt truy cập bộ nhớ đệm vào các trường hợp tệp được thêm vào bộ nhớ đệm có cùng mã chuẩn |
auth
|
default = {} Lệnh không bắt buộc xác định thông tin xác thực cho một số URL. |
integrity
|
default = '' Giá trị tổng kiểm dự kiến của tệp đã tải xuống, ở định dạng Tính toàn vẹn của tài nguyên phụ. Giá trị này phải khớp với giá trị tổng của tệp đã tải xuống. Việc bỏ qua tổng kiểm tra là một rủi ro bảo mật vì các tệp từ xa có thể thay đổi. Tốt nhất là bỏ qua trường này sẽ tạo bản dựng không có dấu vết. Bạn không bắt buộc phải thiết lập để phát triển dễ dàng hơn nhưng nên đặt trước khi vận chuyển. |
download_and_extract
struct repository_ctx.download_and_extract(url, output='', sha256='', type='', stripPrefix='', allow_fail=False, canonical_id='', auth={}, *, integrity='', rename_files={})Tải một tệp xuống đường dẫn đầu ra cho URL được cung cấp, trích xuất tệp đó và trả về cấu trúc có chứa
success
. Cờ này là true
nếu quá trình tải xuống hoàn tất thành công và nếu thành công, hàm băm của tệp có các trường sha256
và integrity
.
Các tham số
Thông số | Nội dung mô tả |
---|---|
url
|
string; or Iterable of strings ;
bắt buộcDanh sách các URL phản chiếu tham chiếu cùng một tệp. |
output
|
string; or Label; or path ;
default = ''đường dẫn đến thư mục nơi kho lưu trữ sẽ được giải nén, liên quan đến thư mục kho lưu trữ. |
sha256
|
default = '' hàm băm SHA-256 dự kiến của tệp đã tải xuống. Giá trị này phải khớp với hàm băm SHA-256 của tệp được tải xuống. Việc bỏ qua SHA-256 là một rủi ro bảo mật vì các tệp từ xa có thể thay đổi. Tốt nhất là bỏ qua trường này sẽ tạo bản dựng không có dấu vết. Bạn không bắt buộc phải thiết lập để phát triển dễ dàng hơn nhưng nên đặt trước khi vận chuyển. Nếu được cung cấp, trước tiên, bộ nhớ cache của kho lưu trữ sẽ được kiểm tra xem có tệp đã cho hay không; hệ thống sẽ chỉ thử tải xuống nếu không tìm thấy tệp trong bộ nhớ đệm. Sau khi tải xuống thành công, tệp sẽ được thêm vào bộ nhớ đệm. |
type
|
default = '' loại lưu trữ của tệp đã tải xuống. Theo mặc định, loại lưu trữ được xác định từ đuôi tệp của URL. Nếu tệp không có đuôi, bạn có thể chỉ định rõ "zip", "jar", "war", "aar", "tar", "tar.gz", "tgz", "tar.xz", "txz", ".tar.zst", ".tzst", "tar.bz2", ".tbz", ".ar" hoặc ".deb" tại đây. |
stripPrefix
|
default = '' là tiền tố thư mục cần tách khỏi các tệp được trích xuất. Nhiều lưu trữ chứa thư mục cấp cao nhất chứa tất cả các tệp trong lưu trữ. Thay vì phải chỉ định nhiều lần tiền tố này trong build_file , bạn có thể sử dụng trường này để tách tiền khỏi các tệp được trích xuất.
|
allow_fail
|
default = False Nếu được đặt, hãy chỉ ra lỗi trong giá trị trả về thay vì báo lỗi cho các lượt tải xuống không thành công |
canonical_id
|
default = '' Nếu được đặt, hãy hạn chế lượt truy cập bộ nhớ đệm vào các trường hợp tệp được thêm vào bộ nhớ đệm có cùng mã chuẩn |
auth
|
default = {} Lệnh không bắt buộc xác định thông tin xác thực cho một số URL. |
integrity
|
default = '' Giá trị tổng kiểm dự kiến của tệp đã tải xuống, ở định dạng Tính toàn vẹn của tài nguyên phụ. Giá trị này phải khớp với giá trị tổng của tệp đã tải xuống. Việc bỏ qua tổng kiểm tra là một rủi ro bảo mật vì các tệp từ xa có thể thay đổi. Tốt nhất là bỏ qua trường này sẽ tạo bản dựng không có dấu vết. Bạn không bắt buộc phải thiết lập để phát triển dễ dàng hơn nhưng nên đặt trước khi vận chuyển. |
rename_files
|
default = {} Lệnh chính tả không bắt buộc chỉ định các tệp cần đổi tên trong quá trình trích xuất. Mục nhập lưu trữ với tên khớp chính xác với một khóa sẽ được đổi tên thành giá trị, trước bất kỳ điều chỉnh tiền tố thư mục nào. Bạn có thể sử dụng tệp này để trích xuất các tệp lưu trữ chứa tên tệp không phải Unicode hoặc các tệp có chứa tệp sẽ trích xuất vào cùng một đường dẫn trên các hệ thống tệp không phân biệt chữ hoa chữ thường. |
thực thi
exec_result repository_ctx.execute(arguments, timeout=600, environment={}, quiet=True, working_directory="")Thực thi lệnh được cung cấp trong danh sách các đối số. Thời gian thực thi lệnh sẽ có giới hạn là
timeout
(tính bằng giây, mặc định là 600 giây). Phương thức này trả về một cấu trúc exec_result
chứa dữ liệu đầu ra của lệnh. Bản đồ environment
có thể dùng để ghi đè một số biến môi trường cần chuyển vào quy trình.
Các tham số
Thông số | Nội dung mô tả |
---|---|
arguments
|
bắt buộc Danh sách các đối số, phần tử đầu tiên phải là đường dẫn đến chương trình để thực thi. |
timeout
|
default = 600 thời lượng tối đa của lệnh tính bằng giây (mặc định là 600 giây). |
environment
|
default = {} buộc một số biến môi trường cần được đặt để được chuyển vào quy trình. |
quiet
|
default = True Nếu stdout và stderr nên được in trên thiết bị đầu cuối. |
working_directory
|
default = "" Thư mục đang làm việc để thực thi lệnh. Có thể liên quan đến thư mục gốc hoặc tuyệt đối của kho lưu trữ. |
trích xuất
None repository_ctx.extract(archive, output='', stripPrefix='', *, rename_files={})Trích xuất tệp lưu trữ vào thư mục kho lưu trữ.
Các tham số
Thông số | Nội dung mô tả |
---|---|
archive
|
string; or Label; or path ;
đường dẫnbắt buộc đến tệp lưu trữ sẽ được giải nén, liên quan đến thư mục kho lưu trữ. |
output
|
string; or Label; or path ;
default = ''đường dẫn đến thư mục nơi kho lưu trữ sẽ được giải nén, liên quan đến thư mục kho lưu trữ. |
stripPrefix
|
default = '' là tiền tố thư mục cần tách khỏi các tệp được trích xuất. Nhiều lưu trữ chứa thư mục cấp cao nhất chứa tất cả các tệp trong lưu trữ. Thay vì phải chỉ định nhiều lần tiền tố này trong build_file , bạn có thể sử dụng trường này để tách tiền khỏi các tệp được trích xuất.
|
rename_files
|
default = {} Lệnh chính tả không bắt buộc chỉ định các tệp cần đổi tên trong quá trình trích xuất. Mục nhập lưu trữ với tên khớp chính xác với một khóa sẽ được đổi tên thành giá trị, trước bất kỳ điều chỉnh tiền tố thư mục nào. Bạn có thể sử dụng tệp này để trích xuất các tệp lưu trữ chứa tên tệp không phải Unicode hoặc các tệp có chứa tệp sẽ trích xuất vào cùng một đường dẫn trên các hệ thống tệp không phân biệt chữ hoa chữ thường. |
tệp
None repository_ctx.file(path, content='', executable=True, legacy_utf8=True)Tạo một tệp trong thư mục kho lưu trữ có nội dung được cung cấp.
Các tham số
Thông số | Nội dung mô tả |
---|---|
path
|
string; or Label; or path ;
bắt buộcđường dẫn của tệp cần tạo, so với thư mục kho lưu trữ. |
content
|
default = '' nội dung của tệp cần tạo, trống theo mặc định. |
executable
|
default = True đặt cờ thực thi trên tệp đã tạo, true theo mặc định. |
legacy_utf8
|
default = True mã hoá nội dung tệp thành UTF-8, true theo mặc định. Các phiên bản trong tương lai sẽ thay đổi mặc định và xóa thông số này. |
name
string repository_ctx.nameTên của kho lưu trữ bên ngoài do quy tắc này tạo.
hệ điều hành
repository_os repository_ctx.osCấu trúc để truy cập thông tin từ hệ thống.
bản vá
None repository_ctx.patch(patch_file, strip=0)Áp dụng tệp bản vá cho thư mục gốc của kho lưu trữ bên ngoài. Tệp bản vá phải là tệp định dạng khác biệt thống nhất chuẩn. Phương thức triển khai bản vá gốc của Bazel không hỗ trợ so khớp lỗi và bản vá nhị phân giống như công cụ dòng lệnh của bản vá.
Các tham số
Thông số | Nội dung mô tả |
---|---|
patch_file
|
string; or Label; or path ;
bắt buộcTệp bản vá được áp dụng, có thể là nhãn, đường dẫn tương đối hoặc đường dẫn tuyệt đối. Nếu đó là một đường dẫn tương đối, nó sẽ phân giải vào thư mục kho lưu trữ. |
strip
|
default = 0 bỏ số lượng thành phần đầu tiên đã chỉ định khỏi tên tệp. |
path
path repository_ctx.path(path)Trả về một đường dẫn từ một chuỗi, nhãn hoặc đường dẫn. Nếu đường dẫn tương đối, nó sẽ phân giải tương đối so với thư mục lưu trữ. Nếu đường dẫn là một nhãn, nó sẽ phân giải thành đường dẫn của tệp tương ứng. Lưu ý rằng các kho lưu trữ từ xa được thực thi trong giai đoạn phân tích nên không thể phụ thuộc vào kết quả mục tiêu (nhãn phải trỏ đến tệp không được tạo). Nếu là một đường dẫn, đường dẫn đó sẽ trả về đường dẫn đó như hiện tại.
Các tham số
Thông số | Nội dung mô tả |
---|---|
path
|
string; or Label; or path ; bắt buộcchuỗi, nhãn hoặc đường dẫn để tạo đường dẫn |
đọc
string repository_ctx.read(path)Đọc nội dung của một tệp trên hệ thống tệp.
Các tham số
Thông số | Nội dung mô tả |
---|---|
path
|
string; or Label; or path ;
đường dẫnbắt buộc của tệp để đọc. |
tiến_độ_báo_cáo
None repository_ctx.report_progress(status='')Cập nhật trạng thái tiến trình tìm nạp kho lưu trữ hoặc phần mở rộng mô-đun
Các tham số
Thông số | Nội dung mô tả |
---|---|
status
|
string ;
default = ''chuỗi mô tả trạng thái hiện tại của tiến trình tìm nạp |
liên kết tượng trưng
None repository_ctx.symlink(target, link_name)Tạo một đường liên kết tượng trưng trên hệ thống tệp.
Các tham số
Thông số | Nội dung mô tả |
---|---|
target
|
string; or Label; or path ;
bắt buộcĐường dẫn mà đường liên kết tượng trưng sẽ trỏ đến. |
link_name
|
string; or Label; or path ;
bắt buộcĐường dẫn của đường liên kết tượng trưng để tạo, liên quan đến thư mục kho lưu trữ. |
ManualContentEmbargoesScheduleTemplate.xlsx
None repository_ctx.template(path, template, substitutions={}, executable=True)Tạo một tệp mới bằng
template
. Mọi lần xuất hiện trong template
của khoá substitutions
sẽ được thay thế bằng giá trị tương ứng. Kết quả được viết bằng path
. Một đối số executable
(không bắt buộc) thành mặc định có thể được thiết lập để bật hoặc tắt bit thực thi.
Các tham số
Thông số | Nội dung mô tả |
---|---|
path
|
string; or Label; or path ;
bắt buộcđường dẫn của tệp cần tạo, so với thư mục kho lưu trữ. |
template
|
string; or Label; or path ;
đường dẫnbắt buộc đến tệp mẫu. |
substitutions
|
default = {} để thay thế khi mở rộng mẫu. |
executable
|
default = True đặt cờ thực thi trên tệp đã tạo, true theo mặc định. |
thiết bị nào
path repository_ctx.which(program)Trả về đường dẫn của chương trình tương ứng hoặc Không nếu không có chương trình nào như vậy trong đường dẫn.
Các tham số
Thông số | Nội dung mô tả |
---|---|
program
|
bắt buộc Chương trình cần tìm trong đường dẫn. |
None
.
Không gian làm việc gốc
path repository_ctx.workspace_rootĐường dẫn đến không gian làm việc gốc của lệnh gọi bazel.