Fungsi berikut dapat dimuat dari @bazel_tools//tools/build_defs/repo:utils.bzl
.
Utilitas untuk memanipulasi repositori eksternal, setelah diambil.
Penyiapan
Utilitas ini dimaksudkan untuk digunakan oleh aturan repositori lainnya. Laporan tersebut dapat dimuat sebagai berikut.
load(
"@bazel_tools//tools/build_defs/repo:utils.bzl",
"workspace_and_buildfile",
"patch",
"update_attrs",
)
mungkin
maybe(repo_rule, name, kwargs)
Fungsi utilitas untuk hanya menambahkan repositori jika belum ada.
Tindakan ini dilakukan untuk mengimplementasikan makro repository.bzl aman yang didokumentasikan di https://bazel.build/rules/deploying#dependensi.
Parameter
repo_rule |
tidak diperlukan.
fungsi repositori. |
name |
tidak diperlukan.
nama repositori yang akan dibuat. |
kwargs |
opsional.
argumen tersisa yang diteruskan ke fungsi {i>repo_rule<i}. |
Hasil
Tidak ada, menentukan repositori saat diperlukan sebagai efek samping.
parse_netrc
parse_netrc(contents, filename)
Fungsi utilitas untuk mengurai setidaknya file .netrc dasar.
Parameter
contents |
tidak diperlukan.
input untuk parser. |
filename |
opsional.
default-nya adalah None
nama file yang digunakan dalam pesan {i>error<i}, jika ada. |
Hasil
memetakan nama mesin ke dikte dengan informasi yang diberikan tentang mesin tersebut
patch
patch(ctx, patches, patch_cmds, patch_cmds_win, patch_tool, patch_args, auth)
Implementasi patch untuk repositori yang sudah diekstrak.
Aturan ini dimaksudkan untuk digunakan dalam fungsi implementasi
aturan repositori. Jika parameter patches
, patch_tool
, patch_args
, patch_cmds
, dan patch_cmds_win
tidak ditentukan, parameter tersebut akan diambil dari ctx.attr
.
Parameter
ctx |
tidak diperlukan.
Konteks repositori aturan repositori yang memanggil fungsi utilitas ini. |
patches |
opsional.
default-nya adalah None
File patch yang akan diterapkan. Daftar string, Label, atau jalur. |
patch_cmds |
opsional.
default-nya adalah None
Perintah Bash yang dijalankan untuk patching, diteruskan satu per satu ke bash -c. Daftar string |
patch_cmds_win |
opsional.
default-nya adalah None
Perintah PowerShell yang akan dijalankan untuk patching, diteruskan satu per satu ke powershell /c. Daftar string. Jika nilai boolean parameter ini salah, patch_cmds akan digunakan dan parameter ini akan diabaikan. |
patch_tool |
opsional.
default-nya adalah None
Jalur alat patch yang akan dijalankan untuk menerapkan patch. String. |
patch_args |
opsional.
default-nya adalah None
Argumen yang akan diteruskan ke alat patch. Daftar string. |
auth |
opsional.
default-nya adalah None
Dikte opsional yang menentukan informasi autentikasi untuk beberapa URL. |
read_netrc
read_netrc(ctx, filename)
Fungsi utilitas untuk mengurai setidaknya file .netrc dasar.
Parameter
ctx |
tidak diperlukan.
Konteks repositori aturan repositori yang memanggil fungsi utilitas ini. |
filename |
tidak diperlukan.
nama file {i>.netrc<i} yang akan dibaca |
Hasil
memetakan nama mesin ke dikte dengan informasi yang diberikan tentang mesin tersebut
read_user_netrc
read_user_netrc(ctx)
Membaca file netrc default pengguna.
Parameter
ctx |
tidak diperlukan.
Konteks repositori aturan repositori yang memanggil fungsi utilitas ini. |
Hasil
memetakan nama mesin ke dikte yang berisi informasi yang diberikan tentangnya.
update_attrs
update_attrs(orig, keys, override)
Fungsi utilitas untuk mengubah dan menambahkan atribut yang ditentukan ke pemanggilan aturan repositori tertentu.
Hal ini digunakan agar aturan dapat direproduksi.
Parameter
orig |
tidak diperlukan.
perintah yang benar-benar menetapkan atribut (baik secara eksplisit maupun implisit) oleh pemanggilan aturan tertentu |
keys |
tidak diperlukan.
sekumpulan atribut lengkap yang ditentukan pada aturan ini |
override |
tidak diperlukan.
perintah atribut yang akan diganti atau ditambahkan ke awal |
Hasil
kueri atribut dengan kunci dari penggantian yang disisipkan/diperbarui
use_netrc
use_netrc(netrc, urls, patterns)
Hitung dikte autentikasi dari file netrc yang diurai dan daftar URL.
Parameter
netrc |
tidak diperlukan.
file netrc yang sudah diurai menjadi dikte, misalnya, seperti yang diperoleh dari read_netrc |
urls |
tidak diperlukan.
daftar URL. |
patterns |
tidak diperlukan.
Dikte opsional URL ke pola otorisasi |
Hasil
dict cocok sebagai argumen autentikasi untuk ctx.download; lebih tepatnya, dikte akan memetakan semua URL tempat file netrc menyediakan login dan sandi ke dikte yang berisi login, sandi, dan pola otorisasi opsional yang sesuai, serta pemetaan "type" ke "basic" atau "pattern".
workspace_and_buildfile
workspace_and_buildfile(ctx)
Fungsi utilitas untuk menulis WORKSPACE dan, jika diminta, file BUILD.
Aturan ini ditujukan untuk digunakan dalam fungsi implementasi aturan repositori.
Hal ini mengasumsikan parameter name
, build_file
, build_file_content
,
workspace_file
, dan workspace_file_content
ada
di ctx.attr
; empat yang terakhir mungkin dengan nilai None.
Parameter
ctx |
tidak diperlukan.
Konteks repositori aturan repositori yang memanggil fungsi utilitas ini. |