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

รายงานปัญหา ดูแหล่งที่มา Nightly · 8.3 · 8.2 · 8.1 · 8.0 · 7.6

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

สมาชิก

ดาวน์โหลด

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

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

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
url string หรือ Iterable ของ string ต้องระบุ
รายการ URL แบบมิเรอร์ที่อ้างอิงไฟล์เดียวกัน
output สตริง หรือ Label หรือ path ค่าเริ่มต้นคือ ''
เส้นทางไปยังไฟล์เอาต์พุตที่เกี่ยวข้องกับไดเรกทอรีที่เก็บ
sha256 ค่าเริ่มต้นคือ ''
แฮช SHA-256 ที่คาดไว้ของไฟล์ที่ดาวน์โหลด ซึ่งต้องตรงกับแฮช SHA-256 ของไฟล์ที่ดาวน์โหลด การละเว้น SHA-256 ถือเป็นความเสี่ยงด้านความปลอดภัยเนื่องจากไฟล์ระยะไกลอาจมีการเปลี่ยนแปลง การละเว้นฟิลด์นี้จะทำให้บิลด์ของคุณไม่เป็นแบบเฮอร์มิติก ไม่บังคับเพื่อช่วยให้การพัฒนาเป็นไปได้ง่ายขึ้น แต่ควรตั้งค่าก่อนจัดส่ง หากระบุไว้ ระบบจะตรวจสอบแคชของที่เก็บก่อนเพื่อหาไฟล์ที่มีแฮชที่ระบุ และจะพยายามดาวน์โหลดก็ต่อเมื่อไม่พบไฟล์ในแคช หลังจากดาวน์โหลดสำเร็จแล้ว ระบบจะเพิ่มไฟล์ลงในแคช
executable ค่าเริ่มต้นคือ False
ตั้งค่าสถานะที่เรียกใช้งานได้ในไฟล์ที่สร้างขึ้น โดยค่าเริ่มต้นจะเป็น false
allow_fail ค่าเริ่มต้นคือ False
หากตั้งค่าไว้ ให้ระบุข้อผิดพลาดในค่าที่แสดงแทนที่จะแจ้งข้อผิดพลาดสำหรับการดาวน์โหลดที่ไม่สำเร็จ
canonical_id ค่าเริ่มต้นคือ ''
หากตั้งค่าไว้ ให้จำกัดการเข้าชมแคชเฉพาะกรณีที่เพิ่มไฟล์ลงในแคชด้วยรหัส Canonical เดียวกัน โดยค่าเริ่มต้น การแคชจะใช้ Checksum (sha256 หรือ integrity)
auth ค่าเริ่มต้นคือ {}
พจนานุกรมที่ไม่บังคับซึ่งระบุข้อมูลการตรวจสอบสิทธิ์สำหรับ URL บางรายการ
headers ค่าเริ่มต้นคือ {}
พจนานุกรมที่ไม่บังคับซึ่งระบุส่วนหัว HTTP สำหรับ URL ทั้งหมด
integrity ค่าเริ่มต้นคือ ''
ผลรวมตรวจสอบที่คาดไว้ของไฟล์ที่ดาวน์โหลดในรูปแบบ Subresource Integrity ต้องตรงกับผลรวมตรวจสอบของไฟล์ที่ดาวน์โหลด การละเว้นการตรวจสอบผลรวมมีความเสี่ยงด้านความปลอดภัยเนื่องจากไฟล์ระยะไกลอาจมีการเปลี่ยนแปลง การละเว้นฟิลด์นี้จะทำให้บิลด์ของคุณไม่เป็นแบบเฮอร์มิติก ไม่บังคับเพื่อช่วยให้การพัฒนาเป็นไปได้ง่ายขึ้น แต่ควรตั้งค่าก่อนจัดส่ง หากระบุไว้ ระบบจะตรวจสอบแคชของที่เก็บก่อนเพื่อหาไฟล์ที่มีผลรวมเช็คซัมที่ระบุ และจะพยายามดาวน์โหลดก็ต่อเมื่อไม่พบไฟล์ในแคช หลังจากดาวน์โหลดสำเร็จแล้ว ระบบจะเพิ่มไฟล์ลงในแคช
block ค่าเริ่มต้นคือ True
หากตั้งค่าเป็น false การเรียกจะแสดงผลทันที และแทนที่จะเป็นค่าที่แสดงผลตามปกติ การเรียกจะแสดงผลโทเค็นที่มีเมธอดเดียวคือ wait() ซึ่งจะบล็อกจนกว่าการดาวน์โหลดจะเสร็จสิ้นและแสดงผลค่าที่แสดงผลตามปกติหรือส่งข้อยกเว้นตามปกติ

download_and_extract

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

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

พารามิเตอร์

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

ดำเนินการ

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

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

พารามิเตอร์

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

extension_metadata

extension_metadata module_ctx.extension_metadata(root_module_direct_deps=None, root_module_direct_dev_deps=None, reproducible=False)

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

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
root_module_direct_deps ลำดับของสตริง หรือสตริง หรือNone ค่าเริ่มต้นคือ None
ชื่อของที่เก็บที่ส่วนขยายถือว่าเป็นทรัพยากร Dependency โดยตรงของโมดูลรูท หากโมดูลรูทนำเข้าที่เก็บเพิ่มเติมหรือไม่นำเข้าที่เก็บทั้งหมดเหล่านี้ผ่าน use_repo Bazel จะพิมพ์คำเตือนเมื่อมีการประเมินส่วนขยาย โดยจะแนะนำให้ผู้ใช้เรียกใช้ bazel mod tidy เพื่อแก้ไขการเรียกใช้ use_repo โดยอัตโนมัติ

หากมีข้อใดข้อหนึ่ง root_module_direct_deps จะพิมพ์คำเตือนและคำสั่งแก้ไขเมื่อมีการประเมินส่วนขยาย

หากมีการระบุ root_module_direct_deps หรือ root_module_direct_dev_deps รายการใดรายการหนึ่ง จะต้องระบุอีกรายการด้วย รายการที่ระบุโดยพารามิเตอร์ทั้ง 2 รายการนี้ต้องไม่ซ้ำกัน

คุณตั้งค่า root_module_direct_deps และ root_module_direct_dev_deps ได้เพียงค่าเดียวเป็นค่าพิเศษ "all" ซึ่งระบบจะถือว่ามีการระบุรายการที่มีชื่อของที่เก็บทั้งหมดที่ส่วนขยายสร้างขึ้นเป็นค่า

root_module_direct_dev_deps ลำดับของสตริง หรือสตริง หรือ None ค่าเริ่มต้นคือ None
ชื่อของที่เก็บที่ส่วนขยายถือว่าเป็นทรัพยากร Dependency สำหรับการพัฒนาโดยตรงของโมดูลรูท หากโมดูลรูทนำเข้าที่เก็บเพิ่มเติมหรือไม่ได้นำเข้าที่เก็บทั้งหมดเหล่านี้ผ่าน use_repo ในพร็อกซีส่วนขยายที่สร้างด้วย use_extension(..., dev_dependency = True) Bazel จะพิมพ์คำเตือนเมื่อมีการประเมินส่วนขยาย โดยแนะนำให้ผู้ใช้เรียกใช้ bazel mod tidy เพื่อแก้ไขการเรียก use_repo โดยอัตโนมัติ

หากมีการระบุ root_module_direct_deps หรือ root_module_direct_dev_deps รายการใดรายการหนึ่ง จะต้องระบุอีกรายการด้วย รายการที่ระบุโดยพารามิเตอร์ทั้ง 2 รายการนี้ต้องไม่ซ้ำกัน

คุณตั้งค่า root_module_direct_deps และ root_module_direct_dev_deps ได้เพียงค่าเดียวเป็นค่าพิเศษ "all" ซึ่งระบบจะถือว่ามีการระบุรายการที่มีชื่อของที่เก็บทั้งหมดที่ส่วนขยายสร้างขึ้นเป็นค่า

reproducible bool; ค่าเริ่มต้นคือ False
ระบุว่าส่วนขยายโมดูลนี้ช่วยให้มั่นใจได้ถึงความสามารถในการทำซ้ำที่สมบูรณ์ จึงไม่ควรจัดเก็บไว้ในไฟล์ล็อก

ดึงข้อมูล

None module_ctx.extract(archive, output='', stripPrefix='', *, rename_files={}, watch_archive='auto')

แตกไฟล์ที่เก็บไปยังไดเรกทอรีที่เก็บ

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
archive string หรือ Label หรือ path required
เส้นทางไปยังที่เก็บถาวรที่จะแตกไฟล์ ซึ่งสัมพันธ์กับไดเรกทอรีที่เก็บ
output string หรือ Label หรือ path ค่าเริ่มต้นคือ ''
เส้นทางไปยังไดเรกทอรีที่จะแตกไฟล์เก็บถาวร ซึ่งสัมพันธ์กับไดเรกทอรีที่เก็บ
stripPrefix ค่าเริ่มต้นคือ ''
คำนำหน้าไดเรกทอรีที่จะนำออกจากไฟล์ที่แยก ที่เก็บถาวรจำนวนมากมีไดเรกทอรีระดับบนสุดซึ่งมีไฟล์ทั้งหมดในที่เก็บถาวร คุณใช้ฟิลด์นี้เพื่อนำคำนำหน้านี้ออกจากไฟล์ที่แยกออกมาได้แทนที่จะต้องระบุคำนำหน้านี้ซ้ำๆ ใน build_file
rename_files ค่าเริ่มต้นคือ {}
พจนานุกรมที่ไม่บังคับซึ่งระบุไฟล์ที่จะเปลี่ยนชื่อระหว่างการแยก รายการที่เก็บถาวรซึ่งมีชื่อตรงกับคีย์จะได้รับการเปลี่ยนชื่อเป็นค่าก่อนที่จะมีการปรับคำนำหน้าไดเรกทอรี ซึ่งใช้เพื่อแยกไฟล์เก็บถาวรที่มีชื่อไฟล์ที่ไม่ใช่ Unicode หรือมีไฟล์ที่จะแยกไปยังเส้นทางเดียวกันในระบบไฟล์ที่ไม่คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ได้
watch_archive ค่าเริ่มต้นคือ 'auto'
ดูไฟล์ที่เก็บถาวรหรือไม่ อาจเป็นสตริง "yes", "no" หรือ "auto" การส่งค่า "yes" จะเทียบเท่ากับการเรียกใช้เมธอด watch() ทันที ส่วนการส่งค่า "no" จะไม่พยายามดูไฟล์ และการส่งค่า "auto" จะพยายามดูไฟล์เฉพาะเมื่อทำได้อย่างถูกต้องตามกฎหมายเท่านั้น (ดูข้อมูลเพิ่มเติมได้ที่เอกสารประกอบของ watch())

ไฟล์

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

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

พารามิเตอร์

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

getenv

string module_ctx.getenv(name, default=None)

แสดงค่าของตัวแปรสภาพแวดล้อม name เป็นสตริงหากมี หรือ default หากไม่มี

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

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
name สตริง ต้องระบุ
ชื่อของตัวแปรสภาพแวดล้อมที่ต้องการ
default สตริง หรือ None ค่าเริ่มต้นคือ None
ค่าเริ่มต้นที่จะแสดงหากไม่พบ name
อาจส่งคืน None

is_dev_dependency

bool module_ctx.is_dev_dependency(tag)

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

พารามิเตอร์

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

โมดูล

list module_ctx.modules

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

os

repository_os module_ctx.os

โครงสร้างเพื่อเข้าถึงข้อมูลจากระบบ

เส้นทาง

path module_ctx.path(path)

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

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
path string หรือ Label หรือ path ต้องระบุ
string, Label หรือ path ที่จะใช้สร้างเส้นทาง

อ่าน

string module_ctx.read(path, *, watch='auto')

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

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
path สตริง หรือ Label หรือ path ต้องระบุ
เส้นทางของไฟล์ที่จะอ่าน
watch ค่าเริ่มต้นคือ 'auto'
จะดูไฟล์หรือไม่ อาจเป็นสตริง "yes", "no" หรือ "auto" การส่งค่า "yes" จะเทียบเท่ากับการเรียกใช้เมธอด watch() ทันที ส่วนการส่งค่า "no" จะไม่พยายามดูไฟล์ และการส่งค่า "auto" จะพยายามดูไฟล์เฉพาะเมื่อทำได้อย่างถูกต้องตามกฎหมายเท่านั้น (ดูข้อมูลเพิ่มเติมได้ที่เอกสารประกอบของ watch())

report_progress

None module_ctx.report_progress(status='')

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

พารามิเตอร์

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

root_module_has_non_dev_dependency

bool module_ctx.root_module_has_non_dev_dependency

ไม่ว่าโมดูลรูทจะใช้ส่วนขยายนี้เป็นการอ้างอิงที่ไม่ใช่การพัฒนาหรือไม่

นาฬิกา

None module_ctx.watch(path)

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

"การเปลี่ยนแปลง" รวมถึงการเปลี่ยนแปลงเนื้อหาของไฟล์ (หากเส้นทางเป็นไฟล์) หากเส้นทางเคยเป็นไฟล์แต่ตอนนี้เป็นไดเรกทอรี หรือในทางกลับกัน และหากเส้นทางเริ่มหรือหยุดมีอยู่ โปรดทราบว่าการดำเนินการนี้ไม่รวมถึงการเปลี่ยนแปลงไฟล์ใดๆ ในไดเรกทอรีหากเส้นทางเป็นไดเรกทอรี หากต้องการทำเช่นนั้น ให้ใช้ path.readdir() แทน

โปรดทราบว่าการพยายามดูเส้นทางภายในที่เก็บที่กำลังดึงข้อมูล หรือภายในไดเรกทอรีการทำงานของส่วนขยายโมดูลปัจจุบัน จะทำให้เกิดข้อผิดพลาด ส่วนขยายโมดูลที่พยายามดูเส้นทางนอกพื้นที่ทำงาน Bazel ปัจจุบันจะทำให้เกิดข้อผิดพลาดด้วย

พารามิเตอร์

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

ไหน

path module_ctx.which(program)

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

พารามิเตอร์

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