implementation işlevine bağımsız değişken olarak bir repository_ctx nesnesi iletilir.
Üyeler
- attr
- sil
- download
- download_and_extract
- execute
- extract
- file
- getenv
- name
- original_name
- os
- patch
- path
- oku
- rename
- repo_metadata
- report_progress
- symlink
- template
- watch
- watch_tree
- which
- workspace_root
attr
structure repository_ctx.attr
delete
bool repository_ctx.delete(path)
Parametreler
| Parametre | Açıklama |
|---|---|
path
|
string; veya path;
required Silinecek dosyanın, depo dizinine göre göreli veya mutlak yolu. Yol veya dize olabilir. |
indir
unknown repository_ctx.download(url, output='', sha256='', executable=False, allow_fail=False, canonical_id='', auth={}, headers={}, *, integrity='', block=True)success içeren bir yapı döndürür. Bu yapı, indirme işlemi başarıyla tamamlandıysa true olan bir işarettir. Başarılı olursa sha256 ve integrity alanlarıyla birlikte dosyanın karmasını içerir. sha256 veya integrity kullanıcı tarafından belirtildiğinde açık bir canonical_id ayarlanması önemle tavsiye edilir. Örneğin: get_default_canonical_id
Parametreler
| Parametre | Açıklama |
|---|---|
url
|
string veya string yinelemesi;
zorunlu Aynı dosyaya referans veren yansıtma URL'lerinin listesi. |
output
|
string; veya Label; veya path;
varsayılan değer ''çıktı dosyasının yolu (depo dizinine göre). |
sha256
|
string;
varsayılan değer ''İndirilen 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ı atlamak güvenlik riski oluşturur. Bu alanın atlanması en iyi ihtimalle derlemenizin hermetik olmamasına neden olur. Geliştirmeyi kolaylaştırmak için isteğe bağlıdır ancak gönderimden önce ayarlanmalıdır. Sağlanırsa önce verilen karma değerine sahip bir dosya için depo önbelleği kontrol edilir. Yalnızca dosya önbellekte bulunamazsa indirme işlemi denenir. Dosya başarıyla indirildikten sonra önbelleğe eklenir. |
executable
|
bool;
varsayılan değer FalseOluşturulan dosyada yürütülebilir işaretini ayarlayın. Varsayılan olarak false'tur. |
allow_fail
|
bool;
varsayılan değer FalseAyarlanırsa başarısız indirmeler için hata oluşturmak yerine döndürülen değerde hatayı belirtin. |
canonical_id
|
string;
varsayılan değer ''Ayarlanırsa önbellek isabetlerini, dosyanın önbelleğe aynı standart kimlikle eklendiği durumlarla sınırlandırın. Varsayılan olarak önbelleğe alma işleminde sağlama toplamı ( sha256 veya integrity) kullanılır.
|
auth
|
dict;
varsayılan değer {}Bazı URL'ler için kimlik doğrulama bilgilerini belirten isteğe bağlı bir sözlük. |
headers
|
dict;
varsayılan değer {}Tüm URL'ler için HTTP üst bilgilerini belirten isteğe bağlı bir sözlük. |
integrity
|
string;
varsayılan değer ''İndirilen dosyanın, alt kaynak bütünlüğü biçimindeki 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ı atlamak güvenlik riski oluşturur. Bu alanın atlanması en iyi ihtimalle derlemenizin hermetik olmamasına neden olur. 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 verilen sağlama toplamına sahip bir dosya için depo önbelleği kontrol edilir. Yalnızca dosya önbellekte bulunamazsa indirme işlemi denenir. Dosya başarıyla indirildikten sonra önbelleğe eklenir. |
block
|
bool;
varsayılan değer True'dır. false olarak ayarlanırsa çağrı hemen döndürülür ve normal dönüş değeri yerine, indirme işlemi tamamlanana kadar engellenen ve normal dönüş değerini döndüren veya her zamanki gibi hata veren tek bir yönteme (wait()) sahip bir jeton döndürülür. |
download_and_extract
struct repository_ctx.download_and_extract(url, output='', sha256='', type='', strip_prefix='', allow_fail=False, canonical_id='', auth={}, headers={}, *, integrity='', rename_files={})
success içeren bir yapı döndürür. success, indirme işlemi başarıyla tamamlandıysa true olan bir işarettir. Başarılı olursa sha256 ve integrity alanlarıyla birlikte dosyanın karmasını döndürür. sha256 veya integrity kullanıcı tarafından belirtildiğinde açık bir canonical_id ayarlanması önemle tavsiye edilir. Örneğin: get_default_canonical_id
Parametreler
| Parametre | Açıklama |
|---|---|
url
|
string veya string yinelemesi;
zorunlu Aynı dosyaya referans veren yansıtma URL'lerinin listesi. |
output
|
string; veya Label; veya path;
varsayılan değer ''Arşivin açılacağı dizinin yolu (depo dizinine göre). |
sha256
|
string;
varsayılan değer ''İndirilen 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ı atlamak güvenlik riski oluşturur. Bu alanın atlanması en iyi ihtimalle derlemenizin hermetik olmamasına neden olur. Geliştirmeyi kolaylaştırmak için isteğe bağlıdır ancak gönderimden önce ayarlanmalıdır. Sağlanırsa önce verilen karma değerine sahip bir dosya için depo önbelleği kontrol edilir. Yalnızca dosya önbellekte bulunamazsa indirme işlemi denenir. Dosya başarıyla indirildikten sonra önbelleğe eklenir. |
type
|
string;
varsayılan değer ''İndirilen 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 burada "zip", "jar", "war", "aar", "nupkg", "whl", "tar", "tar.gz", "tgz", "gz", "tar.xz", "txz", "xz", "tar.zst", "tzst", "zst", "tar.bz2", "tbz", "bz2", "ar", "deb" veya "7z" uzantısını açıkça belirtebilirsiniz. |
strip_prefix
|
string;
varsayılan değer ''Çıkarılan dosyalardan kaldırılacak bir dizin öneki. Birçok arşiv, arşivdeki tüm dosyaları içeren bir üst düzey dizin içerir. build_file içinde bu öneki tekrar tekrar belirtmek yerine, bu alan çıkarılan dosyalardan öneki kaldırmak için kullanılabilir.
Bu parametre, uyumluluk için kullanımdan kaldırılan |
allow_fail
|
bool;
varsayılan değer FalseAyarlanırsa başarısız indirmeler için hata oluşturmak yerine döndürülen değerde hatayı belirtin. |
canonical_id
|
string;
varsayılan değer ''Ayarlanırsa önbellek isabetlerini, dosyanın önbelleğe aynı standart kimlikle eklendiği durumlarla sınırlandırın. Varsayılan olarak önbelleğe alma işleminde sağlama toplamı kullanılır ( sha256 veya integrity).
|
auth
|
dict;
varsayılan değer {}Bazı URL'ler için kimlik doğrulama bilgilerini belirten isteğe bağlı bir sözlük. |
headers
|
dict;
varsayılan değer {}Tüm URL'ler için HTTP üst bilgilerini belirten isteğe bağlı bir sözlük. |
integrity
|
string;
varsayılan değer ''İndirilen dosyanın, alt kaynak bütünlüğü biçimindeki 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ı atlamak güvenlik riski oluşturur. Bu alanın atlanması en iyi ihtimalle derlemenizin hermetik olmamasına neden olur. 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 verilen sağlama toplamına sahip bir dosya için depo önbelleği kontrol edilir. Yalnızca dosya önbellekte bulunamazsa indirme işlemi denenir. Dosya başarıyla indirildikten sonra önbelleğe eklenir. |
rename_files
|
dict;
varsayılan değer {}Ayıklama 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 önekinde herhangi bir düzenleme yapılmadan önce değerle yeniden adlandırılır. Bu seçenek, Unicode olmayan dosya adları içeren veya büyük/küçük harfe duyarsız 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="")
timeout ile sınırlıdır (saniye cinsinden, varsayılan değer 600 saniyedir). Bu yöntem, komutun çıkışı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
|
sequence;
required Arguments listesi. İlk öğe, yürütülecek programın yolu olmalıdır. |
timeout
|
int;
varsayılan değer 600Komutun saniye cinsinden maksimum süresi (varsayılan değer 600 saniyedir). |
environment
|
dict;
varsayılan değer {}Bazı ortam değişkenlerinin işleme aktarılmak üzere ayarlanmasını zorlar. Ortam değişkenini kaldırmak için değer None olabilir.
|
quiet
|
bool;
varsayılan değer Truestdout ve stderr'in terminale yazdırılıp yazdırılmayacağı. |
working_directory
|
string;
varsayılan değer ""Komut yürütme için çalışma dizini. Depo köküne göre göreli veya mutlak olabilir. Varsayılan dizin, depo köküdür. |
çıkarma
None repository_ctx.extract(archive, output='', strip_prefix='', *, rename_files={}, watch_archive='auto')Parametreler
| Parametre | Açıklama |
|---|---|
archive
|
string; veya Label; veya path;
required path to the archive that will be unpacked, relative to the repository directory. |
output
|
string; veya Label; veya path;
varsayılan değer ''arşivin açılacağı dizinin yolu (depo dizinine göre). |
strip_prefix
|
string;
varsayılan değer ''çıkarılan dosyalardan kaldırılacak bir dizin öneki. Birçok arşiv, arşivdeki tüm dosyaları içeren bir üst düzey dizin içerir. Bu öneki build_file içinde tekrar tekrar belirtmek yerine, bu alan çıkarılan dosyalardan öneki kaldırmak için kullanılabilir.
Bu parametre, uyumluluk için kullanımdan kaldırılan |
rename_files
|
dict;
varsayılan değer {}Ayıklama 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 önekinde herhangi bir düzenleme yapılmadan önce değerle yeniden adlandırılır. Bu seçenek, Unicode olmayan dosya adları içeren veya büyük/küçük harfe duyarsız dosya sistemlerinde aynı yola çıkarılacak dosyalar içeren arşivleri çıkarmak için kullanılabilir. |
watch_archive
|
string;
varsayılan değer 'auto'Arşiv dosyasının izlenip izlenmeyeceği. "yes", "no" veya "auto" dizesi olabilir. "yes" değerini iletmek, watch() yöntemini hemen çağırmaya eşdeğerdir; "no" değerini iletmek, dosyanın izlenmesini denemez; "auto" değerini iletmek ise yalnızca dosyanın izlenmesinin yasal olduğu durumlarda bu işlemi dener (daha fazla bilgi için watch() belgelerine bakın).
|
dosya
None repository_ctx.file(path, content='', executable=True, legacy_utf8=False)Parametreler
| Parametre | Açıklama |
|---|---|
path
|
string; veya Label; veya path;
required Oluşturulacak dosyanın, depo dizinine göre yolu. |
content
|
string;
varsayılan değer ''Oluşturulacak dosyanın içeriği. Varsayılan olarak boştur. |
executable
|
bool;
varsayılan değer TrueOluşturulan dosyada yürütülebilir işaretini ayarlayın. Varsayılan olarak true değerini alır. |
legacy_utf8
|
bool;
varsayılan değer Falseİşlem yapılmaz. Bu parametrenin desteği sonlandırıldı ve gelecekteki bir Bazel sürümünde kaldırılacak. |
getenv
string repository_ctx.getenv(name, default=None)
name ortam değişkeninin değerini dize olarak, yoksa default değerini döndürür. Artımlı olarak oluştururken name ile adlandırılan değişkenin değerinde yapılan herhangi bir değişiklik, bu deponun yeniden getirilmesine neden olur.
Parametreler
| Parametre | Açıklama |
|---|---|
name
|
string;
required Name of desired environment variable. |
default
|
dize veya None;
varsayılan değer Nonename bulunamazsa döndürülecek varsayılan değer.
|
None.
ad
string repository_ctx.name
name olarak belirtilen adı almak için bunun yerine original_name kullanın.
original_name
string repository_ctx.original_name
name özelliği olarak belirtilen ad. Bu ad, harici depolar arasında benzersiz olmayabilir. Harici deponun standart adını almak için bunun yerine name kullanın.
os
repository_os repository_ctx.os
patch
None repository_ctx.patch(patch_file, strip=0, *, watch_patch='auto')Parametreler
| Parametre | Açıklama |
|---|---|
patch_file
|
string; veya Label; veya path;
gerekli Uygulanacak yama dosyası. Etiket, göreli yol veya mutlak yol olabilir. Göreli bir yol ise depo dizinine çözümlenir. |
strip
|
int;
varsayılan değer 0Belirtilen sayıda öndeki bileşeni dosya adlarından kaldırır. |
watch_patch
|
string;
varsayılan değer 'auto'Yama dosyasının izlenip izlenmeyeceği. "yes", "no" veya "auto" dizesi olabilir. "yes" değerini iletmek, watch() yöntemini hemen çağırmaya eşdeğerdir; "no" değerini iletmek, dosyanın izlenmesini denemez; "auto" değerini iletmek ise yalnızca dosyanın izlenmesinin yasal olduğu durumlarda bu işlemi dener (daha fazla bilgi için watch() belgelerine bakın).
|
yol
path repository_ctx.path(path)
repository_ctx ise göreli yol, depo dizinine göre çözümlenir. module_ctx ise göreli yol, bu modül uzantısının geçici çalışma dizinine göre çözümlenir. Yol bir etiketse ilgili dosyanın yoluna çözümlenir. Uzak depoların ve modül uzantılarının analiz aşamasında yürütüldüğünü ve bu nedenle bir hedef sonuca bağlı olamayacağını (etiket, oluşturulmamış bir dosyayı işaret etmelidir) unutmayın. Yol bir yol ise bu yolu olduğu gibi döndürür.
Parametreler
| Parametre | Açıklama |
|---|---|
path
|
string; veya Label; veya path;
requiredstring, Label veya path yolu oluşturmak için.
|
okuma
string repository_ctx.read(path, *, watch='auto')
Parametreler
| Parametre | Açıklama |
|---|---|
path
|
string; veya Label; veya path;
gerekli Okunacak dosyanın yolu. |
watch
|
string;
varsayılan değer 'auto'Dosyanın izlenip izlenmeyeceği. "yes", "no" veya "auto" dizesi olabilir. "yes" değerini iletmek, watch() yöntemini hemen çağırmaya eşdeğerdir; "no" değerini iletmek, dosyanın izlenmesini denemez; "auto" değerini iletmek ise yalnızca dosyanın izlenmesinin yasal olduğu durumlarda bu işlemi dener (daha fazla bilgi için watch() belgelerine bakın).
|
adını değiştir
None repository_ctx.rename(src, dst)src olarak yeniden adlandırır.dst Üst dizinler gerektiğinde oluşturulur. Hedef yol zaten varsa işlem başarısız olur. Her iki yol da depoda bulunmalıdır.
Parametreler
| Parametre | Açıklama |
|---|---|
src
|
string; veya Label; veya path;
required Yeniden adlandırılacak mevcut dosyanın veya dizinin, depo dizinine göre yolu. |
dst
|
string; veya Label; veya path;
zorunlu Dosyanın veya dizinin yeniden adlandırılacağı yeni ad (depo dizinine göre). |
repo_metadata
repo_metadata repository_ctx.repo_metadata(*, reproducible=False, attrs_for_reproducibility={})
Parametreler
| Parametre | Açıklama |
|---|---|
reproducible
|
bool;
default is FalseBu deponun yeniden üretilebilir şekilde yeniden getirilebileceğini belirtir. Yani tam olarak aynı giriş özellikleri, depo kuralı tanımı, izlenen dosyalar ve ortam değişkenleriyle vb. başka bir kez getirilirse tam olarak aynı çıktı üretilir. Bu özellik, izlenmeyen diğer koşullar (ör. internetten alınan bilgiler, çalışma alanının kök dizin yolu, rastgele yürütülebilir dosyaların çalıştırılmasından elde edilen çıktı) değişse bile geçerli olmalıdır. True olarak ayarlanırsa getirilen depo içeriklerinin çalışma alanları arasında önbelleğe alınmasına izin verilir. Bunun True olarak ayarlanmasının, depo içerikleri önbelleğinde önbelleğe almayı garanti etmediğini unutmayın. Örneğin, yerel depo kuralları hiçbir zaman önbelleğe alınmaz. |
attrs_for_reproducibility
|
dict;
varsayılan değer {}reproducible False ise bu, Bazel'e orijinal depo kuralının hangi özelliklerinin değiştirilerek yeniden üretilebilir hale getirileceğini söylemek için belirtilebilir.
|
report_progress
None repository_ctx.report_progress(status='')Parametreler
| Parametre | Açıklama |
|---|---|
status
|
string;
varsayılan değer ''string getirme ilerleme durumunun mevcut durumunu açıklar.
|
sembolik bağlantı
None repository_ctx.symlink(target, link_name)Parametreler
| Parametre | Açıklama |
|---|---|
target
|
string; veya Label; veya path;
required Sembolik bağlantının işaret etmesi gereken yol. |
link_name
|
string; veya Label; veya path;
required Oluşturulacak sembolik bağlantının yolu. |
şablon
None repository_ctx.template(path, template, substitutions={}, executable=True, *, watch_template='auto')template kullanarak yeni bir dosya oluşturur. template içinde substitutions anahtarının her tekrarı, ilgili değerle değiştirilir. Sonuç, path dilinde yazılır. Yürütülebilir biti açmak veya kapatmak için isteğe bağlı bir executable bağımsız değişken (varsayılan olarak doğru) ayarlanabilir.
Parametreler
| Parametre | Açıklama |
|---|---|
path
|
string; veya Label; veya path;
required Oluşturulacak dosyanın, depo dizinine göre yolu. |
template
|
string; veya Label; veya path;
required Şablon dosyasının yolu. |
substitutions
|
dict;
varsayılan değer {}Şablon genişletilirken yapılacak değiştirmeler. |
executable
|
bool;
varsayılan değer TrueOluşturulan dosyada yürütülebilir işaretini ayarlayın. Varsayılan olarak true'dur. |
watch_template
|
string;
varsayılan değer 'auto'Şablon dosyasının izlenip izlenmeyeceği. "yes", "no" veya "auto" dizesi olabilir. "yes" değerini iletmek, watch() yöntemini hemen çağırmaya eşdeğerdir; "no" değerini iletmek, dosyanın izlenmesini denemez; "auto" değerini iletmek ise yalnızca dosyanın izlenmesinin yasal olduğu durumlarda bu işlemi dener (daha fazla bilgi için watch() belgelerine bakın).
|
kol saati
None repository_ctx.watch(path)"Değişiklikler", dosyanın içeriğinde yapılan değişiklikleri (yol bir dosya ise), yolun daha önce dosya olup şimdi dizin olmasını veya tam tersini ve yolun var olmaya başlamasını ya da sonlanmasını içerir. Özellikle, yol bir dizinse bu işlem dizin altındaki dosyalarda yapılan değişiklikleri içermez. Bunun için path.readdir() politikasını kullanın.
Şu anda getirilen depodaki veya mevcut modül uzantısının çalışma dizinindeki yolları izlemeye çalışmanın hataya neden olacağını unutmayın. Mevcut Bazel çalışma alanının dışındaki bir yolu izlemeye çalışan bir modül uzantısı da hatayla sonuçlanır.
Parametreler
| Parametre | Açıklama |
|---|---|
path
|
dize; veya Etiket; veya yol;
zorunlu İzlenecek dosyanın yolu. |
watch_tree
None repository_ctx.watch_tree(path)Şu anda getirilen depodaki yolları izlemeye çalışmanın hataya neden olacağını unutmayın.
Parametreler
| Parametre | Açıklama |
|---|---|
path
|
string; veya Label; veya path;
required İzlenecek dizin ağacının yolu. |
hangi
path repository_ctx.which(program)
path değerini veya yolda böyle bir program yoksa None değerini döndürür.
Parametreler
| Parametre | Açıklama |
|---|---|
program
|
string;
required Program to find in the path. |
None.
workspace_root
path repository_ctx.workspace_root