utils deposu kuralları

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",
)

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şlevine atanmıştır.

name gereklidir.

Oluşturulacak deponun adı.

kwargs isteğe bağlıdır.

repo_rule işlevine aktarılan kalan bağımsız değişkenleri ifade eder.

İ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ını (varsa) belirtin.

İ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 depo 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

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.

Yama için çalıştırılacak Powershell komutları, powershell'e /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

Yamaları uygulamak için yürütülecek 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.

Bazı URL'lerin kimlik doğrulama bilgilerini belirten isteğe bağlı bir metin.

read_netrc

read_netrc(ctx, filename)

En azından temel bir .netrc dosyasını ayrıştırmak için yardımcı program işlevi.

Parametreler

ctx zorunludur.

Bu yardımcı program işlevini çağıran depo kuralının depo bağlamı.

filename gereklidir.

okunacak .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ı okur.

Parametreler

ctx gereklidir.

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 yardımcı program.

Bu, bir kuralı tekrarlanabilir hale getirmek için kullanılır.

Parametreler

orig gereklidir.

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 gereklidir.

orijinal öğeyi geçersiz kılacak veya orijinale ekleyebilecek özellikler dizini

İadeler

Üzerine yazma özelliğinin 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 bir URL listesinden bir kimlik doğrulama kodu hesaplayın.

Parametreler

netrc gereklidir.

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 yönelik isteğe bağlı sözlük

İadeler

ctx.download için kimlik doğrulama bağımsız değişkeni olarak uygun olan bir komut dosyası oluşturur. Daha net ifade etmek gerekirse, Dikte, netrc dosyasının giriş ve şifre bilgilerini sağladığı tüm URL'leri, ilgili giriş, şifre ve isteğe bağlı yetkilendirme kalıbının yanı sıra "type"ın "temel" veya "desen" ile eşlenmesini de içeren bir dile eşler.

workspace_and_buildfile

workspace_and_buildfile(ctx)

WORKSPACE ve istenirse BUILD dosyası yazmak için yardımcı program.

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, ilk dördü muhtemelen Yok değerine sahip olduğunu varsayar.

Parametreler

ctx zorunludur.

Bu yardımcı program işlevini çağıran depo kuralının depo bağlamı.