Aşağıdaki işlevler @bazel_tools//tools/build_defs/repo:utils.bzl
'ten yüklenebilir.
Getirildikten sonra harici depolarla işlem yapmak için kullanılan yardımcı programlar.
Kurulum
Bu yardımcı programlar, diğer depo kuralları tarafından kullanılmak üzere tasarlanmıştır. Bunlar aşağıdaki gibi yüklenebilir.
load(
"@bazel_tools//tools/build_defs/repo:utils.bzl",
"workspace_and_buildfile",
"patch",
"update_attrs",
)
get_auth
get_auth(ctx, urls)
.netrc dosyasından URL listesi için doğru kimlik doğrulama sözlüğünü elde eden yardımcı program işlevi.
Varsa isteğe bağlı netrc ve auth_patterns özelliklerini destekleyin.
Parametreler
ctx |
zorunludur.
Bu yardımcı program işlevini çağıran depo kuralının depo bağlamı. |
urls |
zorunludur.
Okunacak URL'lerin listesi |
İadeler
repository_ctx.download işlevine iletilebilecek kimlik doğrulama dizini
belki
maybe(repo_rule, name, kwargs)
Yalnızca mevcut değilse depo eklemek için kullanılan yardımcı program işlevi.
Bu, https://bazel.build/rules/deploying#dependencies adresinde açıklanan güvenli repositories.bzl makrosunu uygulamak içindir.
Parametreler
repo_rule |
zorunludur.
depo kuralı işlevi. |
name |
zorunludur.
Oluşturulacak deponun adı. |
kwargs |
isteğe bağlıdır.
repo_rule işlevine iletilen kalan bağımsız değişkenler. |
İadeler
Hiçbir şey, ek bir etki olarak gerektiğinde deposu tanımlar.
parse_netrc
parse_netrc(contents, filename)
En azından temel bir .netrc dosyasını ayrıştırmak için kullanılan yardımcı program işlevi.
Parametreler
contents |
zorunludur.
ayrıştırıcı için giriş. |
filename |
isteğe bağlıdır.
Varsayılan değer None 'tür.
Hata mesajlarında kullanılacak dosya adı (varsa). |
İadeler
Makine adlarını, bunlarla ilgili bilgilerin yer aldığı bir diziye eşleyen sözlük
patch
patch(ctx, patches, patch_cmds, patch_cmds_win, patch_tool, patch_args, auth)
Zaten ayıklanmış bir depoya yama uygulama.
Bu kuralın, bir depolama alanı kuralının uygulama işlevinde kullanılması amaçlanmıştır. patches
, patch_tool
, patch_args
, patch_cmds
ve patch_cmds_win
parametreleri belirtilmezse ctx.attr
parametresinden alınır.
Parametreler
ctx |
zorunludur.
Bu yardımcı program işlevini çağıran depo kuralının depo bağlamı. |
patches |
isteğe bağlıdır.
Varsayılan değer None 'tür.
Uygulanacak yama dosyaları. Dizelerin, etiketlerin veya yolların listesi. |
patch_cmds |
isteğe bağlıdır.
Varsayılan değer None 'tür.
Düzeltme için çalıştırılacak bash komutları. bash -c komutuna tek tek iletilir. Dize listesi |
patch_cmds_win |
isteğe bağlıdır.
Varsayılan değer None 'tür.
Yamalama için çalıştırılacak PowerShell komutları. Komutlar, powershell /c'ye tek tek iletilir. Dize listesi. Bu parametrenin doğru/yanlış değeri yanlışsa patch_cmds kullanılır ve bu parametre yoksayılır. |
patch_tool |
isteğe bağlıdır.
Varsayılan değer None 'tür.
Yamaların uygulanması için çalıştırılacak yama aracının yolu. Dize. |
patch_args |
isteğe bağlıdır.
Varsayılan değer None 'tür.
Yama aracına aktarılacak bağımsız değişkenler. Dize listesi. |
auth |
isteğe bağlıdır.
Varsayılan değer None 'tür.
URL'lerin bazıları için kimlik doğrulama bilgilerini belirten isteğe bağlı bir sözlük. |
read_netrc
read_netrc(ctx, filename)
En azından temel bir .netrc dosyasını ayrıştırmak için kullanılan yardımcı program işlevi.
Parametreler
ctx |
zorunludur.
Bu yardımcı program işlevini çağıran depo kuralının depo bağlamı. |
filename |
zorunludur.
Okunan .netrc dosyasının adı |
İadeler
Makine adlarını, bunlarla ilgili bilgilerin yer aldığı bir diziye eşleyen sözlük
read_user_netrc
read_user_netrc(ctx)
Kullanıcının varsayılan netrc dosyasını okuma.
Parametreler
ctx |
zorunludur.
Bu yardımcı program işlevini çağıran depo kuralının depo bağlamı. |
İadeler
Makine adlarını, bunlar hakkında sağlanan bilgileri içeren bir diziyle eşleyen bir sözlük.
update_attrs
update_attrs(orig, keys, override)
Belirtilen özellikleri belirli bir depo kural çağrısına eklemek ve değiştirmek için kullanılan yardımcı program işlevi.
Bu, bir kuralı yeniden uygulanabilir hale getirmek için kullanılır.
Parametreler
orig |
zorunludur.
Belirli bir kural çağrısı tarafından ayarlanan özelliklerin (açık veya örtülü olarak) sözlük biçiminde gösterimi |
keys |
zorunludur.
Bu kuralda tanımlanan tüm özellikler |
override |
zorunludur.
orijinal öğeyi geçersiz kılacak veya orijinale ekleyebilecek özellikler dizini |
İadeler
Üzerine yazma işleminin anahtarlarını içeren özellikler dizini eklendi/güncellendi
use_netrc
use_netrc(netrc, urls, patterns)
Ayrıştırılmış bir netrc dosyasından ve URL'lerin listesinden bir kimlik doğrulama dizini oluşturun.
Parametreler
netrc |
zorunludur.
read_netrc işlevinden elde edilen gibi, bir netrc dosyası (halihazırda bir dizeye ayrıştırılmış) |
urls |
zorunludur.
URL listesi. |
patterns |
zorunludur.
URL'den yetkilendirme kalıplarına isteğe bağlı sözlük |
İadeler
ctx.download için auth bağımsız değişkeni olarak uygun bir sözlük; daha açık belirtmek gerekirse sözlük, netrc dosyasının giriş ve şifre sağladığı tüm URL'leri, ilgili giriş, şifre ve isteğe bağlı yetkilendirme kalıbını içeren bir sözlükle eşleştirir. Ayrıca "tür"ün "temel" veya "kalıp" ile eşleştirilmesini sağlar.
workspace_and_buildfile
workspace_and_buildfile(ctx)
WORKSPACE ve istenen durumlarda BUILD dosyası yazmak için kullanılan yardımcı işlev.
Bu kuralın, bir depolama alanı kuralının uygulama işlevinde kullanılması amaçlanmıştır.
name
, build_file
, build_file_content
, workspace_file
ve workspace_file_content
parametrelerinin ctx.attr
içinde bulunduğu varsayılır. Son dört parametrenin değeri None olabilir.
Parametreler
ctx |
zorunludur.
Bu yardımcı program işlevini çağıran depo kuralının depo bağlamı. |