depo_ctx

Sorun bildirin Kaynağı göster

Yardımcı işlevleri ve özelliklerle ilgili bilgileri içeren depo kuralının bağlamı. Bir depo kuralı oluşturduğunuzda repository_ctx nesnesini implementation işlevinin bağımsız değişkeni olarak alırsınız.

Üyeler

Attr

struct repository_ctx.attr

Özelliklerin değerlerine erişimi sağlayan bir yapı. Değerler kullanıcı tarafından sağlanır (sağlanmamışsa varsayılan bir değer kullanılır).

delete

bool repository_ctx.delete(path)

Bir dosyayı veya dizini siler. Dosyanın veya dizinin bu görüşme tarafından gerçekten silinip silinmediğini gösteren bir bool döndürür.

Parametreler

Parametre Açıklama
path string; or path; zorunlu
Silinecek dosyanın, depo dizinine veya mutlak değere göre yolu. Bir yol veya dize olabilir.

indirme

struct repository_ctx.download(url, output='', sha256='', executable=False, allow_fail=False, canonical_id='', auth={}, *, integrity='')

Bir dosyayı, sağlanan URL'nin çıkış yoluna indirir ve success ifadesini içeren bir yapı, indirme işlemi başarıyla tamamlanırsa true işareti, başarıyla tamamlanırsa sha256 ve integrity alanlarında birer dosya karması döndürür.

Parametreler

Parametre Açıklama
url string; or Iterable of strings; zorunlu
Aynı dosyaya referans veren yansıtma URL'lerinin listesi.
output string; or Label; or path; varsayılan = ''
depo dizinine göre, çıkış dosyasına giden yol.
sha256 default = ''
indirilen dosyanın beklenen SHA-256 hash değeri. Bu, indirilen dosyanın SHA-256 karmasıyla eşleşmelidir. Uzak dosyalar değişebileceğinden SHA-256'yı atlamak bir güvenlik riskidir. Bu alanın atlanması, yapınızı her zaman ilgisiz hale getirecektir. Geliştirmeyi kolaylaştırmak için isteğe bağlıdır ancak gönderimden önce ayarlanmalıdır.
executable default = False
Oluşturulan dosyada yürütülebilir işareti, varsayılan olarak yanlış değerini döndürür.
allow_fail default = False
Ayarlanırsa, başarısız indirmelerle ilgili hata iletmek yerine dönüş değerindeki hatayı belirtin
canonical_id default = ''
Ayarlanırsa önbellek isabetlerini, dosyanın aynı standart kimliğe sahip önbelleğe eklendiği durumlarda kısıtlayın
auth default = {}
Bazı URL'ler için kimlik doğrulama bilgilerini belirten isteğe bağlı bir dikte.
integrity default = ''
İndirilen dosyanın beklenen sağlama toplamı, Alt Kaynak Bütünlüğü biçiminde. Bu değer, indirilen dosyanın sağlamasıyla eşleşmelidir. Uzak dosyalar değişebileceğinden, sağlama toplamı almamak bir güvenlik riskidir. Bu alanın atlanması, yapınızı her zaman ilgisiz hale getirecektir. Geliştirmeyi kolaylaştırmak için isteğe bağlıdır ancak gönderimden önce ayarlanmalıdır.

indir_ve_çıkar

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

Bir dosyayı sağlanan URL'nin çıkış yoluna indirir, bu dosyayı çıkarır ve success içeren bir yapı döndürür. İndirme işlemi başarıyla tamamlanırsa true işareti ile başarılı olursa sha256 ve integrity alanlarını kullanarak bu karma oluşturma işlemi uygulanır.

Parametreler

Parametre Açıklama
url string; or Iterable of strings; zorunlu
Aynı dosyaya referans veren yansıtma URL'lerinin listesi.
output string; or Label; or path; default = ''
deponun deposunun açılacağı dizine yönlendiren dizindir.
sha256 default = ''
indirilen dosyanın beklenen SHA-256 hash değeri. Bu, indirilen dosyanın SHA-256 karmasıyla eşleşmelidir. Uzak dosyalar değişebileceğinden SHA-256'yı atlamak bir güvenlik riskidir. Bu alanın atlanması, yapınızı her zaman ilgisiz hale getirecektir. Geliştirmeyi kolaylaştırmak için isteğe bağlıdır ancak gönderimden önce ayarlanmalıdır. Sağlanırsa depo önbelleği, öncelikle verilen karmaya sahip bir dosya için kontrol edilir. İndirme işlemi yalnızca dosya önbellekte bulunamadıysa gerçekleştirilir. Dosya başarıyla indirildikten sonra önbelleğe eklenir.
type default = ''
indirilen dosyanın arşiv türü. Varsayılan olarak arşiv türü, URL'nin dosya uzantısından belirlenir. Dosyanın uzantısı yoksa "zip", "jar", "war", "aar", "tar", "tar.gz", "tgz", "tar.xz", "txz", ".tar.zst", ".tzst", "tar.bz2", ".tbz", ".ar" veya ".de
stripPrefix default = ''
Çıkarılan dosyalardan çıkarılacak bir dizin öneki. Birçok arşiv, arşivdeki tüm dosyaları içeren bir üst düzey dizin içerir. Bu ön ek, build_file içinde tekrar tekrar belirtilmesine gerek kalmadan, ayıklanan dosyalardan ayırmak için kullanılabilir.
allow_fail default = False
Ayarlanırsa, başarısız indirmelerle ilgili hata iletmek yerine dönüş değerindeki hatayı belirtin
canonical_id default = ''
Ayarlanırsa önbellek isabetlerini, dosyanın aynı standart kimliğe sahip önbelleğe eklendiği durumlarda kısıtlayın
auth default = {}
Bazı URL'ler için kimlik doğrulama bilgilerini belirten isteğe bağlı bir dikte.
integrity default = ''
İndirilen dosyanın beklenen sağlama toplamı, Alt Kaynak Bütünlüğü biçiminde. Bu değer, indirilen dosyanın sağlamasıyla eşleşmelidir. Uzak dosyalar değişebileceğinden, sağlama toplamı almamak bir güvenlik riskidir. Bu alanın atlanması, yapınızı her zaman ilgisiz hale getirecektir. Geliştirmeyi kolaylaştırmak için isteğe bağlıdır ancak gönderimden önce ayarlanmalıdır.
rename_files default = {}
Ayıklama sırasında yeniden adlandırılacak dosyaları belirten isteğe bağlı bir dikte. Adlar bir anahtarla tam olarak eşleşen arşiv girişleri, dizin öneki düzenlemelerinden önce değere göre yeniden adlandırılır. Bu dosya, Unicode olmayan dosya adları içeren veya büyük/küçük harfe duyarlı olmayan dosya sistemlerinde aynı yola çıkarılacak dosyaları içeren arşivleri çıkarmak için kullanılabilir.

execute

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

Bağımsız değişken listesi tarafından verilen komutu yürütür. Komutun yürütme süresi timeout ile sınırlıdır (saniye cinsinden varsayılan 600 saniye). Bu yöntem, komutun çıkışını içeren bir exec_result yapısı döndürür. Sürece aktarılacak bazı ortam değişkenlerini geçersiz kılmak için environment haritası kullanılabilir.

Parametreler

Parametre Açıklama
arguments gerekli
Bağımsız değişken listesi, ilk öğe çalıştırılacak programın yolu olmalıdır.
timeout default = 600
saniye cinsinden maksimum komut süresi (varsayılan 600 saniyedir).
environment default = {}
Bazı ortam değişkenlerinin işleme iletilmesi için zorlanır.
quiet default = True (Doğru)
Stdout ve stderr'ın terminale yazdırılması gerekiyorsa.
working_directory default = ""
Komut yürütme için çalışma dizini. Depo kök veya mutlak ile ilgili olabilir.

ayıklama

None repository_ctx.extract(archive, output='', stripPrefix='', *, rename_files={})

Depoya bir arşiv çıkarın.

Parametreler

Parametre Açıklama
archive string; or Label; or path; paket dışı hale getirilen arşiv yoluna
zorunlu dizin.
output string; or Label; or path; default = ''
deponun deposunun açılacağı dizine yönlendiren dizindir.
stripPrefix default = ''
Çıkarılan dosyalardan çıkarılacak bir dizin öneki. Birçok arşiv, arşivdeki tüm dosyaları içeren bir üst düzey dizin içerir. Bu ön ek, build_file içinde tekrar tekrar belirtilmesine gerek kalmadan, ayıklanan dosyalardan ayırmak için kullanılabilir.
rename_files default = {}
Ayıklama sırasında yeniden adlandırılacak dosyaları belirten isteğe bağlı bir dikte. Adlar bir anahtarla tam olarak eşleşen arşiv girişleri, dizin öneki düzenlemelerinden önce değere göre yeniden adlandırılır. Bu dosya, Unicode olmayan dosya adları içeren veya büyük/küçük harfe duyarlı olmayan dosya sistemlerinde aynı yola çıkarılacak dosyaları içeren arşivleri çıkarmak için kullanılabilir.

file

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

Depoda, sağlanan içeriği içeren bir dosya oluşturur.

Parametreler

Parametre Açıklama
path string; or Label; or path; kod deposu dizinine göre, oluşturma için gerekli
yol.
content default = ''
Oluşturulacak dosyanın içeriği varsayılan olarak boştur.
executable default = True (Doğru)
Oluşturulan dosyadaki yürütülebilir işareti varsayılan olarak true (doğru) değerine ayarlayın.
legacy_utf8 default = Doğru
Dosya içeriğini UTF-8 olarak kodlar, varsayılan olarak true değerini alır. Gelecekteki sürümler, varsayılan ayarı değiştirecek ve bu parametreyi kaldıracaktır.

ad

string repository_ctx.name

Bu kural tarafından oluşturulan harici deponun adı.

OS

repository_os repository_ctx.os

Sistemden bilgilere erişim için bir yapıdır.

patch

None repository_ctx.patch(patch_file, strip=0)

Harici deponun kök dizinine bir yama dosyası uygulayın. Yama dosyası, standart bir birleşik fark biçimi dosyası olmalıdır. Bazel yerel yama uygulaması, fuzz eşleşmesini ve yama komut satırı aracı gibi ikili yamaları desteklemez.

Parametreler

Parametre Açıklama
patch_file string; or Label; or path; gereklidir
Uygulanacak yama dosyası etiket, göreli yol veya mutlak yol olabilir. Göreli bir yol söz konusuysa bu, depo dizinine çözümlenir.
strip default = 0
belirtilen sayıda lider bileşenyi dosya adlarından çıkarın.

yol

path repository_ctx.path(path)

Bir dize, etiket veya yoldan gelen yolu döndürür. Yol göreliyse kod deposu diziniyle göreli olarak çözülür. Yol bir etiketse karşılık gelen dosyanın yolu olarak çözümlenir. Uzak depoların analiz aşamasında yürütüldüğünü ve bu nedenle bir hedef sonuca bağlı olamayacağını unutmayın (etiket, oluşturulmamış bir dosyayı işaret etmelidir). Yol bir yolsa bu yolu olduğu gibi döndürür.

Parametreler

Parametre Açıklama
path string; or Label; or path; yol oluşturmak için gereken
dize, etiket veya yol

okuma

string repository_ctx.read(path)

Dosya sistemindeki bir dosyanın içeriğini okur.

Parametreler

Parametre Açıklama
path string; or Label; or path; dosyanın okunacağı
yol gereklidir.

rapor_ilerlemesi

None repository_ctx.report_progress(status='')

Bu kod deposu veya modül uzantısının getirilmesiyle ilgili ilerleme durumunu günceller

Parametreler

Parametre Açıklama
status string; getirme işlemi için mevcut ilerleme durumunu açıklayan varsayılan = ''
dizesi

None repository_ctx.symlink(target, link_name)

Dosya sisteminde bir sembolik bağlantı oluşturur.

Parametreler

Parametre Açıklama
target string; or Label; or path; zorunlu
Sembol bağlantısının işaret etmesi gereken yol.
string; or Label; or path; gereklidir
Oluşturulacak sembol bağlantısının, kod deposu dizinine göreli yolu.

template

None repository_ctx.template(path, template, substitutions={}, executable=True)

template kullanarak yeni bir dosya oluşturur. substitutions anahtarının template öğesi her tekrarda buna karşılık gelen değerle değiştirilir. Sonuç path dilinde yazılmıştır. Yürütülebilir biti etkinleştirmek veya devre dışı bırakmak için isteğe bağlıexecutable bağımsız değişken (varsayılan olarak doğru değerine) ayarlanabilir.

Parametreler

Parametre Açıklama
path string; or Label; or path; kod deposu dizinine göre, oluşturma için gerekli
yol.
template string; or Label; or path; şablon dosyasının
yolu gerekir.
substitutions default = {}
şablonu genişletirken yapılacak değişiklikler.
executable default = True (Doğru)
Oluşturulan dosyadaki yürütülebilir işareti varsayılan olarak true (doğru) değerine ayarlayın.

hangi

path repository_ctx.which(program)

İlgili programın yolunu veya yol içinde böyle bir program yoksa Yok değerini döndürür.

Parametreler

Parametre Açıklama
program yol
bulun.
None iade edilebilir.

workspace_kök

path repository_ctx.workspace_root

Pazar çağrısının kök çalışma alanına giden yol.