โมดูล_สิทธิ์

รายงานปัญหา ดูซอร์สโค้ด

บริบทของส่วนขยายของโมดูลที่มีฟังก์ชันตัวช่วยและข้อมูลเกี่ยวกับแท็กที่เกี่ยวข้องในกราฟอ้างอิง คุณได้รับออบเจ็กต์โมดูลโมดูล เป็นอาร์กิวเมนต์ไปยังฟังก์ชัน implementation เมื่อสร้างส่วนขยายโมดูล

สมาชิก

ดาวน์โหลด

struct module_ctx.download(url, output='', sha256='', executable=False, allow_fail=False, canonical_id='', auth={}, *, integrity='')

ดาวน์โหลดไฟล์ไปยังเส้นทางเอาต์พุตสําหรับ URL ที่ระบุ และส่งกลับโครงสร้างที่มี success ค่าสถานะ true เมื่อดาวน์โหลดเสร็จสมบูรณ์ และแฮชของไฟล์ที่มีช่อง sha256 และ integrity ถ้าสําเร็จ

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
url string; or Iterable of strings; จําเป็น
รายการ URL มิเรอร์ที่อ้างอิงถึงไฟล์เดียวกัน
output string; or Label; or path; ค่าเริ่มต้น = ''
เส้นทางไปยังไฟล์เอาต์พุตเมื่อเทียบกับไดเรกทอรีที่เก็บ
sha256 default = ''
แฮช SHA-256 ที่คาดหวังของไฟล์ที่ดาวน์โหลดมา ซึ่งต้องตรงกับแฮช SHA-256 ของไฟล์ที่ดาวน์โหลด การละเว้น SHA-256 เป็นความเสี่ยงด้านความปลอดภัยเพราะไฟล์ระยะไกลอาจเปลี่ยนแปลงได้ การไม่ใส่ฟิลด์นี้อย่างดีที่สุดจะทําให้งานสร้างของคุณไม่เป็นไปในทางที่ดีขึ้น การดําเนินการนี้ไม่บังคับเพื่อทําให้การพัฒนาง่ายขึ้น แต่ควรตั้งค่าก่อนการจัดส่ง
executable default = False
ตั้งค่าการติดธงปฏิบัติการในไฟล์ที่สร้างไว้ ซึ่งเป็นเท็จโดยค่าเริ่มต้น
allow_fail default = False
หากตั้งค่าไว้ ให้ระบุข้อผิดพลาดในค่าที่ส่งคืนแทนการเพิ่มข้อผิดพลาดสําหรับการดาวน์โหลดที่ไม่สําเร็จ
canonical_id ค่าเริ่มต้น = ''
หากตั้งค่า ให้จํากัด Hit แคชไว้สําหรับกรณีที่มีการเพิ่มไฟล์ลงในแคชที่มีรหัส Canonical เดียวกัน
auth default = {}
คําสืบค้นที่ไม่บังคับซึ่งระบุข้อมูลการตรวจสอบสิทธิ์สําหรับ URL บางรายการ
integrity default = ''
ต้องการ checksum ของไฟล์ที่ดาวน์โหลดในรูปแบบความสมบูรณ์ของทรัพยากรย่อย ซึ่งต้องตรงกับเช็คซัมของไฟล์ที่ดาวน์โหลด การละเว้น checksum อาจทําให้ไฟล์ระยะไกลเปลี่ยนแปลงได้ การไม่ใส่ฟิลด์นี้อย่างดีที่สุดจะทําให้งานสร้างของคุณไม่เป็นไปในทางที่ดีขึ้น การดําเนินการนี้ไม่บังคับเพื่อทําให้การพัฒนาง่ายขึ้น แต่ควรตั้งค่าก่อนการจัดส่ง

ดาวน์โหลด_และ_แยก

struct module_ctx.download_and_extract(url, output='', sha256='', type='', stripPrefix='', allow_fail=False, canonical_id='', auth={}, *, integrity='', rename_files={})

ดาวน์โหลดไฟล์ไปที่เส้นทางเอาต์พุตสําหรับ URL ที่ระบุ ดึงข้อมูล และแสดงผลโครงสร้างที่มี success ค่าแฟล็กที่เป็น true หากการดาวน์โหลดเสร็จสมบูรณ์ และถ้าสําเร็จ แฮชของไฟล์ที่มีช่อง sha256 และ integrity

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
url string; or Iterable of strings; จําเป็น
รายการ URL มิเรอร์ที่อ้างอิงถึงไฟล์เดียวกัน
output string; or Label; or path; ค่าเริ่มต้น = ''
เส้นทางไปยังไดเรกทอรีที่ระบบจะคลายการบีบอัดที่เก็บถาวรโดยสัมพันธ์กับไดเรกทอรีที่เก็บ
sha256 default = ''
แฮช SHA-256 ที่คาดหวังของไฟล์ที่ดาวน์โหลดมา ซึ่งต้องตรงกับแฮช SHA-256 ของไฟล์ที่ดาวน์โหลด การละเว้น SHA-256 เป็นความเสี่ยงด้านความปลอดภัยเพราะไฟล์ระยะไกลอาจเปลี่ยนแปลงได้ การไม่ใส่ฟิลด์นี้อย่างดีที่สุดจะทําให้งานสร้างของคุณไม่เป็นไปในทางที่ดีขึ้น การดําเนินการนี้ไม่บังคับเพื่อทําให้การพัฒนาง่ายขึ้น แต่ควรตั้งค่าก่อนการจัดส่ง หากมี ระบบจะตรวจสอบแคชของที่เก็บสําหรับไฟล์ที่มีแฮชที่ระบุก่อน ระบบจะพยายามดาวน์โหลดเฉพาะกรณีที่ไม่พบไฟล์ที่อยู่ในแคช เมื่อดาวน์โหลดเสร็จเรียบร้อย ระบบจะเพิ่มไฟล์ลงในแคช
type default = ''
ประเภทที่เก็บถาวรของไฟล์ที่ดาวน์โหลด โดยค่าเริ่มต้น ระบบจะกําหนดประเภทการเก็บถาวรจากนามสกุลไฟล์ของ URL หากไฟล์ไม่มีนามสกุล คุณจะระบุ "zip", "jar", "war", "aar", "tar", "tar.gz", "tgz", "tar.xz", "txz", ".tar.zst", ".tzst", "tar.bz2", ".tbz", ".ar" หรือ ".deb" ได้ที่นี่
stripPrefix default = ''
คํานําหน้าไดเรกทอรีที่จะตัดออกจากไฟล์ที่แยกออกมา ที่เก็บถาวรหลายรายการมีไดเรกทอรีระดับบนสุดที่มีไฟล์ทั้งหมดอยู่ในที่เก็บถาวร ไม่จําเป็นต้องระบุคํานําหน้านี้ซ้ําใน build_file ช่องนี้สามารถใช้ในการตัดสตริงออกจากไฟล์ที่มีการแตกไฟล์
allow_fail default = False
หากตั้งค่าไว้ ให้ระบุข้อผิดพลาดในค่าที่ส่งคืนแทนการเพิ่มข้อผิดพลาดสําหรับการดาวน์โหลดที่ไม่สําเร็จ
canonical_id ค่าเริ่มต้น = ''
หากตั้งค่า ให้จํากัด Hit แคชไว้สําหรับกรณีที่มีการเพิ่มไฟล์ลงในแคชที่มีรหัส Canonical เดียวกัน
auth default = {}
คําสืบค้นที่ไม่บังคับซึ่งระบุข้อมูลการตรวจสอบสิทธิ์สําหรับ URL บางรายการ
integrity default = ''
ต้องการ checksum ของไฟล์ที่ดาวน์โหลดในรูปแบบความสมบูรณ์ของทรัพยากรย่อย ซึ่งต้องตรงกับเช็คซัมของไฟล์ที่ดาวน์โหลด การละเว้น checksum อาจทําให้ไฟล์ระยะไกลเปลี่ยนแปลงได้ การไม่ใส่ฟิลด์นี้อย่างดีที่สุดจะทําให้งานสร้างของคุณไม่เป็นไปในทางที่ดีขึ้น การดําเนินการนี้ไม่บังคับเพื่อทําให้การพัฒนาง่ายขึ้น แต่ควรตั้งค่าก่อนการจัดส่ง
rename_files ค่าเริ่มต้น = {}
คําสั่งแบบบังคับ ระบุไฟล์ที่จะเปลี่ยนชื่อในระหว่างการแยก ระบบจะเก็บถาวรรายการที่มีชื่อตรงกับคีย์ทุกประการเป็นค่า ก่อนจะมีการปรับนําหน้าไดเรกทอรี สามารถใช้เพื่อแยกที่เก็บถาวรที่มีชื่อไฟล์ที่ไม่ใช่ Unicode หรือมีไฟล์ที่จะแยกเป็นเส้นทางเดียวกันในระบบไฟล์ที่ไม่คํานึงถึงตัวพิมพ์เล็กและใหญ่

ดําเนินการ

exec_result module_ctx.execute(arguments, timeout=600, environment={}, quiet=True, working_directory="")

เรียกใช้คําสั่งที่ระบุโดยรายการของอาร์กิวเมนต์ เวลาในการปฏิบัติการของคําสั่งจะถูกจํากัดโดย timeout (ค่าเริ่มต้นคือ 600 วินาที) เมธอดนี้จะส่งคืนโครงสร้าง exec_result ที่มีเอาต์พุตของคําสั่ง คุณสามารถใช้แผนที่ environment เพื่อลบล้างตัวแปรของสภาพแวดล้อมบางส่วนเพื่อส่งต่อไปยังกระบวนการ

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
arguments ต้องระบุ
รายการอาร์กิวเมนต์ องค์ประกอบแรกควรเป็นเส้นทางไปยังโปรแกรมที่จะดําเนินการ
timeout ค่าเริ่มต้น = 600
ระยะเวลาสูงสุดของคําสั่งในหน่วยวินาที (ค่าเริ่มต้นคือ 600 วินาที)
environment default = {}
กําหนดให้ตัวแปรสภาพแวดล้อมบางรายการได้รับการส่งต่อไปยังกระบวนการ
quiet default = True
หากมีการพิมพ์ stdout และ stderr ที่เครื่องอ่าน
working_directory default = ""
ไดเรกทอรีที่ใช้งานได้สําหรับการเรียกใช้คําสั่ง สามารถสัมพันธ์กับรากของที่เก็บหรือค่าสัมบูรณ์

ไฟล์

None module_ctx.file(path, content='', executable=True, legacy_utf8=True)

สร้างไฟล์ในไดเรกทอรีที่เก็บซึ่งมีเนื้อหาที่ระบุ

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
path string; or Label; or path; ต้องระบุ
เส้นทางของไฟล์ที่จะสร้างเมื่อเทียบกับไดเรกทอรีที่เก็บ
content default = ''
เนื้อหาของไฟล์ที่จะสร้างจะว่างเปล่าโดยค่าเริ่มต้น
executable default = True
ตั้งค่าการติดธงสั่งการในไฟล์ที่สร้างขึ้น ซึ่งมีค่าเป็น true ตามค่าเริ่มต้น
legacy_utf8 default = True
เข้ารหัสเนื้อหาของไฟล์เป็น UTF-8 โดยค่าเริ่มต้น เวอร์ชันในอนาคตจะเปลี่ยนค่าเริ่มต้นและนําพารามิเตอร์นี้ออก

เป็นทรัพยากร Dependency

bool module_ctx.is_dev_dependency(tag)

แสดงผลว่ามีการระบุแท็กที่ระบุในผลลัพธ์ของการเรียก use_extension ด้วย devDependency = True หรือไม่

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
tag bazel_module_tag; ต้องระบุ
แท็กที่ได้รับจาก bazel_module.tags

โมดูล

list module_ctx.modules

รายการโมดูล Bazel ทั้งหมดในกราฟ Dependency ภายนอก แต่ละรายการเป็นออบเจ็กต์ bazel_module ที่แสดงแท็กทั้งหมดที่ระบุไว้สําหรับส่วนขยายโมดูลนี้ ลําดับของการจัดลําดับนี้ของพจนานุกรมนี้เหมือนกับการค้นหาแบบกว้างๆ ที่เริ่มจากโมดูลราก

ระบบปฏิบัติการ

repository_os module_ctx.os

โครงสร้างสําหรับเข้าถึงข้อมูลจากระบบ

เส้นทาง

path module_ctx.path(path)

แสดงผลเส้นทางจากสตริง ป้ายกํากับ หรือเส้นทาง หากเส้นทางเป็นแบบสัมพัทธ์ เส้นทางจะสัมพัทธ์กับไดเรกทอรีที่เก็บ หากเส้นทางเป็นป้ายกํากับ เส้นทางจะเปลี่ยนเป็นค่าที่สอดคล้องกันของไฟล์นั้นๆ โปรดทราบว่าระบบจะเรียกใช้ที่เก็บระยะไกลในช่วงการวิเคราะห์ จึงขึ้นอยู่กับผลลัพธ์เป้าหมาย (ป้ายกํากับควรชี้ไปยังไฟล์ที่ไม่ได้สร้างขึ้น) หากเป็นเส้นทาง เส้นทางนั้นจะแสดงผลเป็น

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
path string; or Label; or path; ต้องระบุ
สตริง ป้ายกํากับ หรือเส้นทางที่ใช้สร้างเส้นทาง

อ่าน

string module_ctx.read(path)

อ่านเนื้อหาของไฟล์ในระบบไฟล์

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
path string; or Label; or path ต้องมี
เส้นทางของไฟล์ที่จะอ่าน

รายงานความคืบหน้า

None module_ctx.report_progress(status='')

อัปเดตสถานะความคืบหน้าสําหรับการดึงข้อมูลส่วนขยายของที่เก็บหรือส่วนขยายโมดูลนี้

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
status string; ค่าเริ่มต้น = ''
สตริงที่อธิบายสถานะปัจจุบันของความคืบหน้าในการเรียกข้อมูล

ไหน

path module_ctx.which(program)

แสดงผลเส้นทางของโปรแกรมที่เกี่ยวข้องหรือไม่มี หากไม่มีโปรแกรมดังกล่าวในเส้นทาง

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
program จําเป็นต้องมี
โปรแกรมเพื่อค้นหาในเส้นทาง
อาจส่งคืนในวันที่ None