ใช้กฎที่เก็บ

คุณโหลดฟังก์ชันต่อไปนี้ได้จาก @bazel_tools//tools/build_defs/repo:utils.bzl

อาจจะ

maybe(repo_rule, name, kwargs)

ฟังก์ชันยูทิลิตีสําหรับการเพิ่มที่เก็บข้อมูลเฉพาะในกรณีที่ยังไม่มี

ซึ่งเป็นการใช้แมโคร safe_repositories.bzl ที่ระบุไว้ใน https://bazel.build/rules/deploying#dependencies

พารามิเตอร์

repo_rule ต้องระบุ

ฟังก์ชันกฎของที่เก็บ

name ต้องระบุ

ชื่อของที่เก็บที่จะสร้าง

kwargs ไม่บังคับ

อาร์กิวเมนต์ที่เหลือซึ่งส่งไปยังฟังก์ชัน repo_rule

parse_netrc

parse_netrc(contents, filename)

ฟังก์ชันยูทิลิตีเพื่อแยกวิเคราะห์ไฟล์ .netrc ขั้นพื้นฐานอย่างน้อย

พารามิเตอร์

contents ต้องระบุ

อินพุตสำหรับตัวแยกวิเคราะห์

filename ไม่บังคับ ค่าเริ่มต้นคือ None

ชื่อไฟล์ที่จะใช้ในข้อความแสดงข้อผิดพลาด (หากมี)

แพตช์

patch(ctx, patches, patch_cmds, patch_cmds_win, patch_tool, patch_args, auth)

การติดตั้งใช้งานการแก้ไขที่เก็บที่แยกออกมาแล้ว

กฎนี้มีไว้ใช้ในฟังก์ชันการใช้งานของกฎที่เก็บ หากไม่ได้ระบุพารามิเตอร์ patches, patch_tool, patch_args, patch_cmds และ patch_cmds_win ระบบจะนำค่าจาก ctx.attr มาใช้

พารามิเตอร์

ctx ต้องระบุ

บริบทที่เก็บของกฎที่เก็บที่เรียกใช้ฟังก์ชันยูทิลิตีนี้

patches ไม่บังคับ ค่าเริ่มต้นคือ None

ไฟล์แพตช์ที่จะใช้ รายการสตริง ป้ายกำกับ หรือเส้นทาง

patch_cmds ไม่บังคับ ค่าเริ่มต้นคือ None

คำสั่ง Bash ที่จะเรียกใช้สำหรับการแก้ไข โดยส่งทีละคำสั่งไปยัง bash -c รายการสตริง

patch_cmds_win ไม่บังคับ ค่าเริ่มต้นคือ None

คำสั่ง Powershell ที่จะเรียกใช้สำหรับการแก้ไข ซึ่งส่ง ทีละรายการไปยัง powershell /c รายการสตริง หากค่าบูลีนของพารามิเตอร์นี้เป็นเท็จ ระบบจะใช้ patch_cmds และละเว้นพารามิเตอร์นี้

patch_tool ไม่บังคับ ค่าเริ่มต้นคือ None

เส้นทางของเครื่องมือแพตช์ที่จะดำเนินการเพื่อใช้ แพตช์ สตริง

patch_args ไม่บังคับ ค่าเริ่มต้นคือ None

อาร์กิวเมนต์ที่จะส่งไปยังเครื่องมือแก้ไข รายการสตริง

auth ไม่บังคับ ค่าเริ่มต้นคือ None

พจนานุกรมที่ไม่บังคับซึ่งระบุข้อมูลการตรวจสอบสิทธิ์สำหรับ URL บางรายการ

read_netrc

read_netrc(ctx, filename)

ฟังก์ชันยูทิลิตีเพื่อแยกวิเคราะห์ไฟล์ .netrc ขั้นพื้นฐานอย่างน้อย

พารามิเตอร์

ctx ต้องระบุ

บริบทที่เก็บของกฎที่เก็บที่เรียกใช้ฟังก์ชันยูทิลิตีนี้

filename ต้องระบุ

ชื่อของไฟล์ .netrc ที่จะอ่าน

read_user_netrc

read_user_netrc(ctx)

อ่านไฟล์ .netrc เริ่มต้นของผู้ใช้

พารามิเตอร์

ctx ต้องระบุ

บริบทที่เก็บของกฎที่เก็บที่เรียกใช้ฟังก์ชันยูทิลิตี้นี้

update_attrs

update_attrs(orig, keys, override)

ฟังก์ชันยูทิลิตีสำหรับการแก้ไขและเพิ่มแอตทริบิวต์ที่ระบุในการเรียกใช้กฎที่เก็บที่เฉพาะเจาะจง

ซึ่งใช้เพื่อทำให้กฎสามารถทำซ้ำได้

พารามิเตอร์

orig ต้องระบุ

พจนานุกรมของแอตทริบิวต์ที่ตั้งค่าจริง (ทั้งโดยชัดแจ้งหรือโดยนัย) โดยการเรียกใช้กฎที่เฉพาะเจาะจง

keys ต้องระบุ

ชุดแอตทริบิวต์ทั้งหมดที่กำหนดไว้ในกฎนี้

override ต้องระบุ

พจนานุกรมของแอตทริบิวต์ที่จะลบล้างหรือเพิ่มลงใน orig

use_netrc

use_netrc(netrc, urls, patterns)

คำนวณพจนานุกรมการตรวจสอบสิทธิ์จากไฟล์ .netrc ที่แยกวิเคราะห์แล้วและรายการ URL

พารามิเตอร์

netrc ต้องระบุ

ไฟล์ netrc ที่แยกวิเคราะห์เป็น dict แล้ว เช่น ที่ได้จาก read_netrc

urls ต้องระบุ

รายการ URL

patterns ต้องระบุ

พจนานุกรมที่ไม่บังคับของ URL ไปยังรูปแบบการให้สิทธิ์

workspace_and_buildfile

workspace_and_buildfile(ctx)

ฟังก์ชันยูทิลิตีสำหรับการเขียน WORKSPACE และหากมีการขอ BUILD ไฟล์

กฎนี้มีไว้ใช้ในฟังก์ชันการใช้งานของกฎที่เก็บ โดยจะถือว่าพารามิเตอร์ name, build_file, build_file_content, workspace_file และ workspace_file_content อยู่ใน ctx.attr โดย 4 พารามิเตอร์หลังอาจมีค่าเป็น None

พารามิเตอร์

ctx ต้องระบุ

บริบทที่เก็บของกฎที่เก็บที่เรียกใช้ฟังก์ชันยูทิลิตีนี้