Bağımlılıklar grafiğindeki alakalı etiketlerle ilgili yardımcı işlevleri ve bilgileri içeren modül uzantısının bağlamı. Bir modül uzantısı oluşturduğunuzda, implementation
işlevinin bağımsız değişkeni olarak bir modül_ctx nesnesi alırsınız.
Üyeler
- download
- download_and_extract
- execute
- extension_metadata
- dosya
- is_dev_dependency
- modules
- os
- path
- oku
- report_progress
- root_module_has_non_dev_dependency
- which
indir
struct module_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 '' 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ö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 '' şeklindedirAyarlanırsa önbellek isabetlerini, dosyanın aynı standart kimliğe sahip önbelleğe eklendiği durumlarla sınırlandırın |
auth
|
varsayılan değer {} 'tir.Bazı URL'ler için kimlik doğrulama bilgilerini belirten isteğe bağlı bir ifadedir. |
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 module_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
|
string; veya dizelerin yinelenebilir;
gerekli Aynı dosyaya referans veren yansıtma URL'lerinin 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öndermeden önce ayarlanmalıdır. Kod deposu önbelleği sağlanmışsa öncelikle belirtilen karmaya sahip bir dosya olup olmadığı kontrol edilir. İndirme işlemi yalnızca dosya önbellekte bulunamadığında denenir. İndirme işlemi başarılı olduğunda dosya önbelleğe eklenir. |
type
|
varsayılan olarak '' indirilen dosyanın arşiv tü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 üst düzey bir 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 '' şeklindedirAyarlanırsa önbellek isabetlerini, dosyanın aynı standart kimliğe sahip önbelleğe eklendiği durumlarla sınırlandırın |
auth
|
varsayılan değer {} 'tir.Bazı URL'ler için kimlik doğrulama bilgilerini belirten isteğe bağlı bir ifadedir. |
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 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 module_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
|
gerekli Bağımsız değişkenler listesi; ilk öğe, yürütülecek programa giden yol olmalıdır. |
timeout
|
varsayılan değer 600 komutun saniye cinsinden maksimum süresidir (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 olarak "" şeklindedirKomut yürütme için çalışma dizini. Depo köküne göre göreli veya mutlak olabilir. |
extension_metadata
extension_metadata module_ctx.extension_metadata(root_module_direct_deps=None, root_module_direct_dev_deps=None)Bazel uzantısı tarafından oluşturulan depolar hakkında meta veri sağlamak için modül uzantısının uygulama işlevinden döndürülebilecek opak bir nesne oluşturur.
Parametreler
Parametre | Açıklama |
---|---|
root_module_direct_deps
|
Dize dizisi; veya dize; veya None ;
varsayılan değer None Uzantı tarafından kök modülün doğrudan bağımlılıkları olarak kabul edilen depoların adları. Kök modül ek depoları içe aktarırsa veya use_repo aracılığıyla bu depoların tümünü içe aktarmazsa Bazel uzantı değerlendirildiğinde bir uyarı ve düzeltme komutu yazdırır.
|
root_module_direct_dev_deps
|
Dize dizisi; veya dize; veya None ;
varsayılan değer None Uzantı tarafından kök modülün doğrudan geliştirici bağımlılıkları olarak kabul edilen depoların adları. Kök modül use_extension(..., dev_dependency = True) ile oluşturulan bir uzantı proxy'sinde use_repo aracılığıyla ek depolar içe aktarırsa veya bu depoların tümünü içe aktarmazsa Bazel, uzantı değerlendirilirken bir uyarı ve düzeltme komutu yazdırır.
|
dosya
None
module_ctx.file(path, content='', executable=True, legacy_utf8=True)
Depo dizininde, sağlanan içerikle 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 olarak boş olacak şekilde oluşturulacak dosyanın içeriğidir. |
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. Gelecekteki sürümlerde varsayılan ayar değiştirilecek ve bu parametre kaldırılacaktır. |
is_dev_dependency
bool module_ctx.is_dev_dependency(tag)Belirtilen etiketin
devDependency = True
ile bir use_extension çağrısının sonucunda belirtilip belirtilmeyeceğini döndürür.
Parametreler
Parametre | Açıklama |
---|---|
tag
|
bazel_module_tag;
required bazel_module.tags adresinden alınan bir etiket. |
modüllerin
list module_ctx.modulesHarici bağımlılık grafiğinde bu modül uzantısını kullanan tüm Bazel modüllerinin listesi. Bu modüllerin her biri, bu uzantı için belirttiği tüm etiketleri gösteren bir bazel_module nesnesi şeklindedir. Bu sözlüğün iterasyon sırasının, kök modülden başlayarak geniş kapsamlı aramayla aynı olacağı garanti edilir.
os
repository_os module_ctx.osSistemdeki bilgilere erişmek için kullanılan bir yapı.
yol
path module_ctx.path(path)Bir dize, etiket veya yoldan 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 module_ctx.read(path)Dosya sistemindeki bir dosyanın içeriğini okur.
Parametreler
Parametre | Açıklama |
---|---|
path
|
dize; veya Etiket; veya yol;
zorunlu Okunacak dosyanın yolu. |
report_progress
None
module_ctx.report_progress(status='')
Bu depo veya modül uzantısının getirilmesiyle ilgili ilerleme durumunu günceller
Parametreler
Parametre | Açıklama |
---|---|
status
|
string;
varsayılan değer '' getirme işleminin mevcut durumunu açıklayan dize |
root_module_has_non_dev_dependency
bool module_ctx.root_module_has_non_dev_dependencyKök modülün bu uzantıyı geliştirici dışı bir bağımlılık olarak kullanıp kullanmadığı.
hangi
path module_ctx.which(program)İlgili programın yolunu döndürür veya yolda böyle bir program yoksa None değerini döndürür.
Parametreler
Parametre | Açıklama |
---|---|
program
|
gerekli Yolda bulunacak programı kullanın. |
None
değerini döndürebilir.