implementation
işlevinin bağımsız değişkeni olarak bir modül_ctx nesnesi alırsınız.
Üyeler
- indir
- download_and_extract
- execute
- extension_metadata
- dosya
- is_dev_dependency
- modüller
- os
- path
- oku
- report_progress
- root_module_has_non_dev_dependency
- kimin
indirme
struct module_ctx.download(url, output='', sha256='', executable=False, allow_fail=False, canonical_id='', auth={}, *, integrity='')Sağlanan URL'nin çıkış yoluna bir dosya indirir ve
success
öğesini içeren bir struct döndürür. İndirme işlemi başarıyla tamamlanırsa true
işareti ve başarılı olursa sha256
ve integrity
alanlarına sahip dosya karması döndürülür.
Parametreler
Parametre | Açıklama |
---|---|
url
|
string; or Iterable of strings ;
zorunluAynı dosyaya referans veren yansıtma URL'lerinin listesi. |
output
|
string; or Label; or path ;
default = ''depo dizinine göreli olarak çıkış dosyasının yolu. |
sha256
|
default = '' İndirilen dosyanın beklenen SHA-256 karması. Bu değer, indirilen dosyanın SHA-256 karmasıyla eşleşmelidir. Uzak dosyalar değişebileceğinden SHA-256'yı atlamak güvenlik açısından bir risktir. En iyi durumda, bu alanı atlamak, derlemenizi hermetik olmayacak hale getirir. Geliştirmeyi kolaylaştırmak için isteğe bağlıdır ancak gönderim öncesinde ayarlanmalıdır. |
executable
|
varsayılan = False (Yanlış) Oluşturulan dosyada yürütülebilir işareti varsayılan olarak false (yanlış) değerini ayarlar. |
allow_fail
|
default = False Ayarlanırsa başarısız olan indirme işlemleri için hata oluşturmak yerine döndürülen değerde hatayı belirtin |
canonical_id
|
default = '' Ayarlanırsa önbellek isabetlerini, dosyanın aynı standart kimlikle önbelleğe eklendiği durumlarla kısıtlar |
auth
|
default = {} Bazı URL'ler için kimlik doğrulama bilgilerini belirten isteğe bağlı bir komut. |
integrity
|
default = '' İndirilen dosyanın, Alt Kaynak 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ği için sağlama toplamını atlamak bir güvenlik riskidir. En iyi durumda, bu alanı atlamak, derlemenizi hermetik olmayacak hale getirir. Geliştirmeyi kolaylaştırmak için isteğe bağlıdır ancak gönderim öncesinde 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={})Sağlanan URL'nin çıkış yoluna bir dosya indirir, dosyayı ayıklar ve şunu içeren bir struct döndürür.
success
, indirme işlemi başarıyla tamamlanırsa true
işaretini, sha256
ve integrity
alanlarını içeren dosya karmasını döndürür.
Parametreler
Parametre | Açıklama |
---|---|
url
|
string; or Iterable of strings ;
zorunluAynı dosyaya referans veren yansıtma URL'lerinin listesi. |
output
|
string; or Label; or path ;
default = ''depo dizinine göre, arşivin açılacağı dizine giden yol. |
sha256
|
default = '' İndirilen dosyanın beklenen SHA-256 karması. Bu değer, indirilen dosyanın SHA-256 karmasıyla eşleşmelidir. Uzak dosyalar değişebileceğinden SHA-256'yı atlamak güvenlik açısından bir risktir. En iyi durumda, bu alanı atlamak, derlemenizi hermetik olmayacak hale getirir. Geliştirmeyi kolaylaştırmak için isteğe bağlıdır ancak gönderim öncesinde ayarlanmalıdır. Değer sağlanırsa önce ilgili karmaya sahip dosya için depo önbelleği kontrol edilir. İndirme işlemi yalnızca dosya önbellekte bulunamadığında denenir. İndirme işlemi başarılı olduktan sonra dosya önbelleğe eklenir. |
type
|
default = '' 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, burada açıkça "zip", "jar", "war", "aar", "tar", "tar.gz", "tgz", "tar.xz", "txz", ".tar.zst", ".tzst", "tar.bz2", ".ar" veya ".deb" seçeneklerinden birini açık bir şekilde belirtebilirsiniz. |
stripPrefix
|
default = '' Ayıklanan dosyalardan çıkarılacak bir dizin öneki. Birçok arşiv, arşivdeki tüm dosyaları içeren üst düzey bir dizin içerir. Bu alan, bu ön eki build_file içinde tekrar tekrar belirtmek zorunda kalmak yerine, çıkarılan dosyalardan çıkarmak için kullanılabilir.
|
allow_fail
|
default = False Ayarlanırsa başarısız olan indirme işlemleri için hata oluşturmak yerine döndürülen değerde hatayı belirtin |
canonical_id
|
default = '' Ayarlanırsa önbellek isabetlerini, dosyanın aynı standart kimlikle önbelleğe eklendiği durumlarla kısıtlar |
auth
|
default = {} Bazı URL'ler için kimlik doğrulama bilgilerini belirten isteğe bağlı bir komut. |
integrity
|
default = '' İndirilen dosyanın, Alt Kaynak 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ği için sağlama toplamını atlamak bir güvenlik riskidir. En iyi durumda, bu alanı atlamak, derlemenizi hermetik olmayacak hale getirir. Geliştirmeyi kolaylaştırmak için isteğe bağlıdır ancak gönderim öncesinde ayarlanmalıdır. |
rename_files
|
default = {} Ayıklama sırasında yeniden adlandırılacak dosyaları belirten isteğe bağlı bir dikte. Adları bir anahtarla tam olarak eşleşen arşiv girişleri, herhangi bir dizin öneki düzenlemesinden önce değer olarak yeniden adlandırılır. Bu, Unicode olmayan dosya adları veya büyük/küçük harfe duyarlı olmayan dosya sistemlerinde aynı yola çıkarılacak 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 listesinin verdiği komutu yürütür. Komutun yürütülme süresi
timeout
ile sınırlıdır (saniye cinsinden, varsayılan olarak 600 saniye). Bu yöntem, komutun çıkışını içeren bir exec_result
yapısı döndürür. environment
eşlemesi, işleme geçirilecek 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 listesinde yer alıyorsa ilk öğe, programın yürütülecek yolu olmalıdır. |
timeout
|
varsayılan = 600 komutun saniye cinsinden maksimum süresi (varsayılan olarak 600 saniyedir). |
environment
|
default = {} Bazı ortam değişkenlerinin, sürece geçirilmek üzere ayarlanmasını zorunlu kılar. |
quiet
|
default = True Terminale stdout ve stderr yazdırılması gerekiyorsa. |
working_directory
|
default = "" Komut yürütme için çalışma dizini. Depo kökü veya mutlak ile göreli olabilir. |
extension_metadata
extension_metadata module_ctx.extension_metadata(root_module_direct_deps=None, root_module_direct_dev_deps=None)Bazel'a uzantı 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ülebilen opak bir nesne oluşturur.
Parametreler
Parametre | Açıklama |
---|---|
root_module_direct_deps
|
sequence of strings; or string; or None ;
default = NoneUzantının kök modülün doğrudan bağımlılığı olarak kabul ettiği depoların adları. Kök modül ek kod depolarını içe aktarırsa veya use_repo aracılığıyla bu kod depolarının tümünü içe aktarmazsa, uzantı değerlendirildiğinde Bazel bir uyarı ve bir düzeltme komutu yazdırır.
|
root_module_direct_dev_deps
|
sequence of strings; or string; or None ;
default = YokUzantının, kök modülün doğrudan geliştirme bağımlılığı olarak kabul ettiği depoların adları. Kök modül ek depoları içe aktarırsa veya use_extension(..., dev_dependency = True) ile oluşturulan bir uzantı proxy'sinde use_repo aracılığıyla bu kod depolarının tümünü içe aktarmazsa, uzantı değerlendirildiğinde Bazel bir uyarı ve bir düzeltme komutu yazdırır.
|
file
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
|
string; or Label; or path ;
oluşturulacakdosyanın depo dizinine göreli yolu. |
content
|
default = '' Oluşturulacak dosyanın içeriği varsayılan olarak boştur. |
executable
|
default = True (Doğru) Oluşturulan dosyada yürütülebilir işareti varsayılan olarak "true" değerine ayarlar. |
legacy_utf8
|
default = True Dosya içeriğini varsayılan olarak UTF-8 olarak kodlar. Gelecekteki sürümler varsayılanı değiştirecek ve bu parametreyi kaldıracaktır. |
is_dev_dependency
bool module_ctx.is_dev_dependency(tag)Belirtilen etiketin
devDependency = True
ile yapılan bir use_extension çağrısının sonucunda belirtilip belirtilmediğini döndürür.
Parametreler
Parametre | Açıklama |
---|---|
tag
|
bazel_module_tag ;
zorunlubazel_module.tags'dan alınan bir etiket. |
modules
list module_ctx.modulesBu modül uzantısını kullanan harici bağımlılık grafiğinde bulunan tüm Bazel modüllerinin listesi. Bunların her biri, bu uzantı için belirttiği tüm etiketleri gösteren bir bazel_module nesnesidir. Bu sözlüğün yineleme sırasının, kök modülden başlayan kapsamlı öncelikli aramayla aynı olacağı garanti edilir.
os
repository_os module_ctx.osSistemden bilgilere erişmek için kullanılan bir struct.
yol
path module_ctx.path(path)Bir dize, etiket veya yoldan yol döndürür. Yol göreliyse, kod deposu dizinine göre çözümlenir. Yol bir etiketse ilgili dosyanın yolu olarak çözümlenir. Uzak kod depolarının analiz aşamasında yürütüldüğünü ve bu nedenle hedef sonuca bağlı olamayacağını unutmayın (etiket, oluşturulmamış bir dosyayı işaret etmelidir). Yol bir yolsa yolu olduğu gibi döndürür.
Parametreler
Parametre | Açıklama |
---|---|
path
|
string; or Label; or path ;
zorunludize, etiket veya içinden yol oluşturulacağı yol |
okuma
string module_ctx.read(path)Dosya sistemindeki bir dosyanın içeriğini okur.
Parametreler
Parametre | Açıklama |
---|---|
path
|
string; or Label; or path ;
zorunluokunacak 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 ;
default = ''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 olmayan bir bağımlılık olarak kullanıp kullanmadığı.
hangi
path module_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
|
gerekli Yolda bulunacak program. |
None
iade edilebilir.