Yardımcı işlevler ve özelliklerle ilgili bilgileri içeren depolama alanı 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
- file
- name
- os
- yama
- path
- oku
- report_progress
- symlink
- template
- which
- workspace_root
özlk
struct repository_ctx.attr
delete
bool repository_ctx.delete(path)
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='')
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 değer '' depolama alanı dizine göre çıkış dosyasının yolu. |
sha256
|
varsayılan değer '' indirilen dosyanın beklenen SHA-256 karması. Bu, 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önderimden ö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 Kaynak Bütünlüğü biçiminde beklenen sağlama toplamı. Bu, 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önderimden ö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={})
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 '' indirilen dosyanın beklenen SHA-256 karması. Bu, 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önderimden önce ayarlanmalıdır. Sağlanırsa ilk olarak depo önbelleği, belirtilen karma oluşturma işlemine sahip bir dosya olup olmadığı açısından kontrol edilir. İndirme işlemine yalnızca dosya önbellekte bulunamazsa denir. İndirme işlemi başarılı olduğunda dosya önbelleğe eklenir. |
type
|
varsayılan olarak '' indirilen dosyanın arşiv türü. Arşiv türü varsayılan olarak 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 ".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 çıkarılan dosyalardan kaldı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 Kaynak Bütünlüğü biçiminde beklenen sağlama toplamı. Bu, 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önderimden önce ayarlanmalıdır. |
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. |
execute
exec_result repository_ctx.execute(arguments, timeout=600, environment={}, quiet=True, working_directory="")
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
haritası, 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 stdout ve stderr'nin terminale yazdırılıp yazdırılmayacağı. |
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={})
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)
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
os
repository_os repository_ctx.os
patch
None
repository_ctx.patch(patch_file, strip=0)
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)
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)
Parametreler
Parametre | Açıklama |
---|---|
path
|
dize; veya Etiket; veya yol;
zorunlu Okunacak dosyanın yolu. |
report_progress
None
repository_ctx.report_progress(status='')
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)
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. template
içindeki substitutions
anahtarının her tekrarı, ilgili değerle değiştirilir. 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;
zorunlu şablon dosyasının yolu. |
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)
Parametreler
Parametre | Açıklama |
---|---|
program
|
required Yolda bulunacak program. |
None
değerini döndürebilir.
workspace_root
path repository_ctx.workspace_root