Bağımlılık grafiğindeki ilgili etiketler hakkında yardımcı işlevler ve bilgiler içeren modül uzantısının bağlamı. Bir modül uzantısı oluşturduğunuzda implementation
işlevine bağımsız değişken olarak bir module_ctx nesnesi iletilir.
Üyeler
- download
- download_and_extract
- yürütme
- extension_metadata
- extract
- file
- getenv
- is_dev_dependency
- modules
- os
- path
- oku
- report_progress
- root_module_has_non_dev_dependency
- watch
- which
indir
unknown module_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. 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 '' çıkış 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'nın atlanması 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. Başarılı bir indirme işleminden sonra dosya önbelleğe eklenir. |
executable
|
bool;
varsayılan değer False Oluşturulan dosyada yürütülebilir işaretini ayarlayın. Varsayılan olarak false (yanlış) değerindedir. |
allow_fail
|
bool;
varsayılan değer False Ayarlanı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, verilen sağlama toplamı ile bir dosya için önce depo önbelleği kontrol edilir; yalnızca dosya önbellekte bulunamazsa indirme işlemi denenir. Başarılı bir indirme işleminden sonra dosya önbelleğe eklenir. |
block
|
bool;
varsayılan değer True 'dir. 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 module_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. Bu yapı, indirme işlemi başarıyla tamamlandıysa true
olan bir işarettir. İndirme işlemi başarılıysa sha256
ve integrity
alanlarını içeren 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öreli). |
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'nın atlanması 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. Başarılı bir indirme işleminden sonra dosya ö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 "zip", "jar", "war", "aar", "nupkg", "tar", "tar.gz", "tgz", "tar.xz", "txz", ".tar.zst", ".tzst", "tar.bz2", ".tbz", ".ar" veya ".deb" uzantıları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 False Ayarlanı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, verilen sağlama toplamı ile bir dosya için önce depo önbelleği kontrol edilir; yalnızca dosya önbellekte bulunamazsa indirme işlemi denenir. Başarılı bir indirme işleminden sonra dosya ö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. Bir anahtarla tam olarak eşleşen adlara sahip arşiv girişleri, dizin önekinde herhangi bir düzenleme yapılmadan önce değer olarak 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 module_ctx.execute(arguments, timeout=600, environment={}, quiet=True, working_directory="")
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. 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 Bağımsız değişkenlerin listesi. İlk öğe, yürütülecek programın yolu olmalıdır. |
timeout
|
int;
varsayılan değer 600 Komutun 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 True stdout 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öreceli veya mutlak olabilir. Varsayılan dizin, depo köküdür. |
extension_metadata
extension_metadata module_ctx.extension_metadata(root_module_direct_deps=None, root_module_direct_dev_deps=None, reproducible=False)
Parametreler
Parametre | Açıklama |
---|---|
root_module_direct_deps
|
string'lerin sırası; veya string; veya None ;
varsayılan değer None Uzantının, kök modülün doğrudan bağımlılıkları olarak kabul ettiği depoların adları. Kök modül ek depoları içe aktarıyorsa veya bu depoların tümünü use_repo aracılığıyla içe aktarmıyorsa Bazel, uzantı değerlendirilirken bir uyarı yazdırır ve kullanıcıya use_repo çağrılarını otomatik olarak düzeltmek için bazel mod tidy komutunu çalıştırmasını söyler.
|
root_module_direct_dev_deps
|
string'lerin sırası; veya string; veya None ;
varsayılan değer None Uzantının, kök modülün doğrudan geliştirme bağımlılıkları olarak kabul ettiği depoların adları. Kök modül ek depoları içe aktarıyorsa veya use_extension(..., dev_dependency = True) ile oluşturulan bir uzantı proxy'sinde use_repo aracılığıyla bu depoların tümünü içe aktarmıyorsa Bazel, uzantı değerlendirilirken bir uyarı yazdırır ve kullanıcıya use_repo çağrılarını otomatik olarak düzeltmek için bazel mod tidy komutunu çalıştırmasını söyler.
|
reproducible
|
bool;
varsayılan değer False Bu modül uzantısının tam tekrarlanabilirliği sağladığını belirtir. Bu nedenle, kilit dosyasında depolanmamalıdır. |
çıkarma
None
module_ctx.extract(archive, output='', strip_prefix='', *, rename_files={}, watch_archive='auto')
Parametreler
Parametre | Açıklama |
---|---|
archive
|
string; veya Label; veya path;
required Arşivin açılacağı, depo dizinine göreli yol. |
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. Bir anahtarla tam olarak eşleşen adlara sahip arşiv girişleri, dizin önekinde herhangi bir düzenleme yapılmadan önce değer olarak 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, dosyayı izlemeye çalışmaz; "auto" değerini iletmek ise dosyayı yalnızca yasal olarak izlemek mümkün olduğunda izlemeye çalışır (daha fazla bilgi için watch() belgelerine bakın).
|
dosya
None
module_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 True Oluş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ılmıştır ve gelecekteki bir Bazel sürümünde kaldırılacaktır. |
getenv
string module_ctx.getenv(name, default=None)
name
değerini varsa dize olarak, yoksa default
olarak 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 None name bulunamazsa döndürülecek varsayılan değer.
|
None
iade edilebilir.
is_dev_dependency
bool module_ctx.is_dev_dependency(tag)
devDependency = True
ile use_extension çağrısının sonucunda belirtilen etiketin olup olmadığını döndürür.
Parametreler
Parametre | Açıklama |
---|---|
tag
|
bazel_module_tag;
required bazel_module.tags'den alınan bir etiket. |
modüllerin
list module_ctx.modules
os
repository_os module_ctx.os
yol
path module_ctx.path(path)
Parametreler
Parametre | Açıklama |
---|---|
path
|
string; veya Label; veya path;
requiredstring , Label veya path .
|
okuma
string module_ctx.read(path, *, watch='auto')
Parametreler
Parametre | Açıklama |
---|---|
path
|
string; veya Label; veya path;
required 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, dosyayı izlemeye çalışmaz; "auto" değerini iletmek ise dosyayı yalnızca yasal olarak izlemek mümkün olduğunda izlemeye çalışır (daha fazla bilgi için watch() belgelerine bakın).
|
report_progress
None
module_ctx.report_progress(status='')
Parametreler
Parametre | Açıklama |
---|---|
status
|
string;
varsayılan değer '' string getirme ilerleme durumunun mevcut durumunu açıklar.
|
root_module_has_non_dev_dependency
bool module_ctx.root_module_has_non_dev_dependency
kol saati
None
module_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, dizindeki 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. |
hangi
path module_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
iade edilebilir.