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
- attr
- sil
- download
- download_and_extract
- execute
- extract
- dosya
- name
- işletim sistemi
- yama
- path
- oku
- report_progress
- symlink
- şablonu
- which
- workspace_root
ö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 şeklindedirstdout 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.nameBu kural tarafından oluşturulan harici deponun adı.
os
repository_os repository_ctx.osSistemdeki 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 |
sembolik bağlantı
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. |
link_name
|
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_rootBazel çağrısının kök çalışma alanının yolu.