depo

Sorun bildir Kaynağı görüntüle Nightly · 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

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

Üyeler

özlk

struct repository_ctx.attr

Özelliklerin değerlerine erişmek için bir yapı. Değerler kullanıcı tarafından sağlanır (aksi takdirde varsayılan değer kullanılır).

delete

bool repository_ctx.delete(path)

Bir dosyayı veya dizini siler. Dosya veya dizinin bu çağrıyla gerçekten silinip silinmediğini belirten bir boole döndürür.

Parametreler

Parametre Açıklama
path dize veya yol; zorunlu
Depo dizine göre veya mutlak olarak silinecek dosyanın yolu. Bir yol veya dize olabilir.

indir

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 içeren bir yapı döndürür. Bu yapı, indirme işlemi başarıyla tamamlanırsa true olan bir işarettir. İndirme işlemi başarılı olursa sha256 ve integrity alanlarını içeren dosyanın karmasını döndürür.

Parametreler

Parametre Açıklama
url dize veya dize öğelerinin Iterable dizisi; zorunlu
Aynı dosyaya atıfta bulunan ayna URL'lerin listesi.
output dize; veya Etiket; veya yol; varsayılan, depo dizinine göre çıkış dosyasının ''
yoludur.
sha256 varsayılan değer '' olan
, indirilen dosyanın beklenen SHA-256 karmasıdır. Bu değer, indirilen dosyanın SHA-256 karmasıyla eşleşmelidir. Uzak dosyalar değişebileceğinden SHA-256'yı çıkarmak güvenlik riski oluşturur. Bu alanın atlanması, en iyi ihtimalle derlemenizin hermetik olmasını engeller. Geliştirmeyi kolaylaştırmak için isteğe bağlıdır ancak göndermeden önce ayarlanmalıdır.
executable varsayılan değer False
oluşturulan dosyada yürütülebilir işaretini ayarlar, varsayılan olarak yanlıştır.
allow_fail varsayılan değer False
Ayarlanırsa başarısız indirmeler için hata oluşturmak yerine hatayı döndürülen değerde belirtin
canonical_id varsayılan değer ''
Ayarlanırsa önbellek isabetlerini, dosyanın önbelleğe aynı kanonikal kimlikle eklendiği durumlarla kısıtlayın
auth varsayılan değer {}
Bazı URL'ler için kimlik doğrulama bilgilerini belirten isteğe bağlı bir sözlük.
integrity varsayılan değer ''
İndirilen dosyanın, alt öğe bütünlüğü biçiminde beklenen sağlama toplamı. Bu değer, indirilen dosyanın sağlama toplamıyla eşleşmelidir. Uzak dosyalar değişebileceğinden sağlama toplamını çıkarmak güvenlik açısından risklidir. Bu alanın atlanması, en iyi ihtimalle derlemenizin hermetik olmasını engeller. Geliştirmeyi kolaylaştırmak için isteğe bağlıdır ancak göndermeden önce ayarlanmalıdır.

download_and_extract

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, dosyayı çıkarır ve success içeren bir yapı döndürür. Bu yapı, indirme işlemi başarıyla tamamlanırsa true olan bir işarettir. İşlem başarılı olursa sha256 ve integrity alanlarını içeren dosyanın karmasını döndürür.

Parametreler

Parametre Açıklama
url dize veya dize öğelerinin Iterable dizisi; zorunlu
Aynı dosyaya atıfta bulunan ayna URL'lerin listesi.
output dize; veya etiket; veya yol; varsayılan değer ''
Arşivin, depo dizine göre paketten çıkarılacağı dizinin yolu.
sha256 varsayılan değer '' olan
, indirilen dosyanın beklenen SHA-256 karmasıdır. Bu değer, indirilen dosyanın SHA-256 karmasıyla eşleşmelidir. Uzak dosyalar değişebileceğinden SHA-256'yı çıkarmak güvenlik riski oluşturur. Bu alanın atlanması, en iyi ihtimalle derlemenizin hermetik olmasını engeller. Geliştirmeyi kolaylaştırmak için isteğe bağlıdır ancak göndermeden önce ayarlanmalıdır. Sağlanırsa ilk olarak depo önbelleği, belirtilen karmaya sahip bir dosya olup olmadığını kontrol eder. İndirme işlemi yalnızca dosya önbellekte bulunamazsa denenir. İndirme işlemi başarılı olduğunda dosya önbelleğe eklenir.
type varsayılan değer ''
olup indirilen dosyanın arşiv türüdür. Varsayılan olarak, arşiv türü URL'nin dosya uzantısına göre 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 ".deb" uzantılarından birini burada açıkça belirtebilirsiniz.
stripPrefix varsayılan olarak ''
çıkarılan dosyalardan kaldırılacak bir dizin ön eki. Birçok arşiv, arşivdeki tüm dosyaları içeren bir üst düzey dizin içerir. Bu ön eki build_file içinde tekrar tekrar belirtmek yerine bu alan, ayıklanan dosyalardan onu ayırmak için kullanılabilir.
allow_fail varsayılan değer False
Ayarlanırsa başarısız indirmeler için hata oluşturmak yerine hatayı döndürülen değerde belirtin
canonical_id varsayılan değer ''
Ayarlanırsa önbellek isabetlerini, dosyanın önbelleğe aynı kanonikal kimlikle eklendiği durumlarla kısıtlayın
auth varsayılan değer {}
Bazı URL'ler için kimlik doğrulama bilgilerini belirten isteğe bağlı bir sözlük.
integrity varsayılan değer ''
İndirilen dosyanın, alt öğe bütünlüğü biçiminde beklenen sağlama toplamı. Bu değer, indirilen dosyanın sağlama toplamıyla eşleşmelidir. Uzak dosyalar değişebileceğinden sağlama toplamını çıkarmak güvenlik açısından risklidir. Bu alanın atlanması, en iyi ihtimalle derlemenizin hermetik olmasını engeller. Geliştirmeyi kolaylaştırmak için isteğe bağlıdır ancak göndermeden önce ayarlanmalıdır.
rename_files varsayılan değer: {}
Ayıklama sırasında yeniden adlandırılacak dosyaları belirten isteğe bağlı bir komut. Bir anahtarla tam olarak eşleşen adlara sahip arşiv girişleri, herhangi bir dizin öneki ayarlamasından önce değer olarak yeniden adlandırılır. Bu komut, Unicode olmayan dosya adları veya büyük/küçük harfe duyarlı olmayan dosya sistemlerinde aynı yola çıkarılacak dosyalara sahip arşivleri ayıklamak için kullanılabilir.

execute

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

Bağımsız değişkenler 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 olarak 600 saniye). Bu yöntem, komutun çıktısını içeren bir exec_result yapısı döndürür. environment eşlemesi, işleme iletilecek bazı ortam değişkenlerini geçersiz kılmak için kullanılabilir.

Parametreler

Parametre Açıklama
arguments required
Parametre listesi. İlk öğe, çalıştırılacak programın yolu olmalıdır.
timeout varsayılan değer 600
komutun saniye cinsinden maksimum süresi (varsayılan değer 600 saniyedir).
environment varsayılan değer {}
bazı ortam değişkenlerinin işleme aktarılacak şekilde ayarlanmasını zorunlu kılar.
quiet varsayılan değer True şeklindedir
stdout ve stderr'in terminale yazdırılması gerekiyorsa.
working_directory varsayılan ""
Komut yürütme için çalışma dizini. Depo köküne göre göreli veya mutlak olabilir.

ayıklamak

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

Arşivi depo dizinine çıkarın.

Parametreler

Parametre Açıklama
archive dize; veya Etiket; veya yol; zorunlu
Arşivin, depolama alanı dizine göreli yolu.
output dize; veya etiket; veya yol; varsayılan değer ''
Arşivin, depo dizine göre paketten çıkarılacağı dizinin yolu.
stripPrefix varsayılan olarak ''
çıkarılan dosyalardan kaldırılacak bir dizin ön eki. Birçok arşiv, arşivdeki tüm dosyaları içeren bir üst düzey dizin içerir. Bu ön eki build_file içinde tekrar tekrar belirtmek yerine, bu alan çıkarılan dosyalardan kaldırmak için kullanılabilir.
rename_files varsayılan değer {}
Çıkarma sırasında yeniden adlandırılacak dosyaları belirten isteğe bağlı bir sözlük. Adları bir anahtarla tam olarak eşleşen arşiv girişleri, dizin ön ek düzenlemesinden önce değerle yeniden adlandırılır. Bu seçenek, Unicode olmayan dosya adları içeren veya büyük/küçük harf duyarlı olmayan dosya sistemlerinde aynı yola ayıklanacak dosyalar içeren arşivleri ayıklamak için kullanılabilir.

dosya

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

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

Parametreler

Parametre Açıklama
path dize; veya Etiket; veya yol; zorunlu
Oluşturulacak dosyanın, depolama alanı dizine göre yolu.
content varsayılan değer ''
oluşturulacak dosyanın içeriğidir, varsayılan olarak boştur.
executable varsayılan değer True
oluşturulan dosyada yürütülebilirlik işaretini ayarlar, varsayılan olarak doğrudur.
legacy_utf8 varsayılan değer True
dosya içeriğini UTF-8 olarak kodlar, varsayılan olarak doğrudur. Gelecek sürümlerde varsayılan ayar değiştirilecek ve bu parametre kaldırılacaktır.

ad

string repository_ctx.name

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

os

repository_os repository_ctx.os

Sistemdeki bilgilere erişmek için kullanılan bir yapı.

patch

None repository_ctx.patch(patch_file, strip=0)

Harici deponun kök dizinine bir yama dosyası uygulayın. Yama dosyası, standart bir birleştirilmiş fark biçimi dosyası olmalıdır. Bazel'e özgü yamalar uygulaması, patch komut satırı aracı gibi bulanık eşleşmeyi ve ikili yamayı desteklemez.

Parametreler

Parametre Açıklama
patch_file dize; veya Etiket; veya yol; zorunlu
Uygulanacak yama dosyası. Etiket, göreli yol veya mutlak yol olabilir. Göreli bir yolsa depo dizininde çözümlenir.
strip varsayılan değer 0
dosya adlarından belirtilen sayıda ön bileşeni kaldırır.

yol

path repository_ctx.path(path)

Bir dizeden, etiketten veya yoldan bir yol döndürür. Göreli bir yol ise kod deposu dizine göre çözümlenir. Yol bir etiketse ilgili dosyanın yoluna çözümlenir. Uzak depoların analiz aşamasında çalıştırıldığını ve bu nedenle hedef bir 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 dize; veya Etiket; veya yol; zorunlu
yol oluşturmak için kullanılacak dize, etiket veya yol

okuma

string repository_ctx.read(path)

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

Parametreler

Parametre Açıklama
path dize; veya Etiket; veya yol; okunacak dosyanın gerekli
yolu.

report_progress

None repository_ctx.report_progress(status='')

Bu deposunun veya modül uzantısının getirilmesi işleminin ilerleme durumunu günceller

Parametreler

Parametre Açıklama
status string; varsayılan değer ''
getirme işleminin mevcut durumunu açıklayan dize

None repository_ctx.symlink(target, link_name)

Dosya sisteminde sembolik bağlantı oluşturur.

Parametreler

Parametre Açıklama
target dize; veya Etiket; veya yol; zorunlu
Simge bağlantısının işaret ettiği yol.
dize; veya Etiket; veya yol; zorunlu
Depo dizine göre oluşturulacak sembolik bağlantının yolu.

şablon

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

template kullanarak yeni bir dosya oluşturur. substitutions anahtarının template politikasında her geçtiği yer, ilgili değerle değiştirilecek. Sonuç path dilinde yazılır. İsteğe bağlı birexecutable bağımsız değişkeni (varsayılan olarak doğrudur) yürütülebilir bitini etkinleştirmek veya devre dışı bırakmak için ayarlanabilir.

Parametreler

Parametre Açıklama
path dize; veya Etiket; veya yol; zorunlu
Oluşturulacak dosyanın, depolama alanı dizine göre yolu.
template dize; veya Etiket; veya yol; şablon dosyasının gerekli
yoludur.
substitutions varsayılan olarak {}
şablon genişletilirken yapılacak ikameler.
executable varsayılan değer True
oluşturulan dosyada yürütülebilirlik işaretini ayarlar, varsayılan olarak doğrudur.

hangi

path repository_ctx.which(program)

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

Parametreler

Parametre Açıklama
program required
Yolda bulunacak program.
None sonucunu döndürebilir.

workspace_root

path repository_ctx.workspace_root

Bazel çağrısının kök çalışma alanının yolu.