implementation
फ़ंक्शन में आर्ग्युमेंट के तौर पर एक मॉड्यूल_टैब ऑब्जेक्ट मिलता है.
पैसे चुकाकर बने सदस्य
- डाउनलोड
- download_and_extract
- एक्ज़ीक्यूट करें
- फ़ाइल
- is_dev_dependency
- मॉड्यूल
- ओएस
- पाथ
- पढ़ें
- report_progress
- कौनसा
डाउनलोड करें
struct module_ctx.download(url, output='', sha256='', executable=False, allow_fail=False, canonical_id='', auth={}, *, integrity='')दिए गए यूआरएल के आउटपुट पाथ में कोई फ़ाइल डाउनलोड करता है और
success
वाला फ़्लैग दिखाता है, जो true
वाला एक फ़्लैग होता है. अगर डाउनलोड पूरा हो जाता है, तो फ़ाइल से जुड़ा हैश, और sha256
और integrity
वाले फ़ाइल का हैश हो जाता है.
पैरामीटर
पैरामीटर | जानकारी |
---|---|
url
|
string; or Iterable of strings
ज़रूरी हैएक ही फ़ाइल के बारे में बताने वाले डुप्लीकेट यूआरएल की सूची. |
output
|
string; or Label; or path :
डिफ़ॉल्ट = ''आउटपुट फ़ाइल का पाथ, रिपॉज़िटरी डायरेक्ट्री के हिसाब से. |
sha256
|
डिफ़ॉल्ट = '' डाउनलोड की गई फ़ाइल का अनुमानित SHA-256 हैश. यह डाउनलोड की गई फ़ाइल के SHA-256 हैश से मेल खाना चाहिए. SHA-256 को हटाने से सुरक्षा का जोखिम होता है, क्योंकि रिमोट फ़ाइलें बदल सकती हैं. इस फ़ील्ड को सबसे ज़्यादा मिटाने से यह काम आसान नहीं होता. डेवलपमेंट को आसान बनाना ज़रूरी नहीं है. हालांकि, शिपिंग से पहले इसे सेट किया जाना चाहिए. |
executable
|
डिफ़ॉल्ट = गलत बनाई गई फ़ाइल पर एक्ज़ीक्यूटेबल फ़्लैग सेट करें, डिफ़ॉल्ट रूप से गलत पर सेट करें. |
allow_fail
|
डिफ़ॉल्ट = गलत अगर सेट है, तो फ़ेल हो चुके डाउनलोड के लिए गड़बड़ी दर्ज करने के बजाय, रिटर्न वैल्यू में गड़बड़ी दिखाएं |
canonical_id
|
डिफ़ॉल्ट = '' अगर सेट किया जाता है, तो कैश हिट को उन मामलों में सीमित करें जहां फ़ाइल को एक ही कैननिकल आईडी वाली कैश मेमोरी में जोड़ा गया था |
auth
|
डिफ़ॉल्ट = {} एक वैकल्पिक शब्द है, जो कुछ यूआरएल के लिए पुष्टि करने की जानकारी देता है. |
integrity
|
डिफ़ॉल्ट = '' डाउनलोड की गई फ़ाइल का अपेक्षित चेकसम यह डाउनलोड की गई फ़ाइल के चेकसम से मेल खाना चाहिए. रिमोट फ़ाइलें बदलने के दौरान, चेकसम को छोड़ देना एक सुरक्षा जोखिम है. इस फ़ील्ड को सबसे ज़्यादा मिटाने से यह काम आसान नहीं होता. डेवलपमेंट को आसान बनाना ज़रूरी नहीं है. हालांकि, शिपिंग से पहले इसे सेट किया जाना चाहिए. |
डाउनलोड_और_एक्सट्रैक्ट करें
struct module_ctx.download_and_extract(url, output='', sha256='', type='', stripPrefix='', allow_fail=False, canonical_id='', auth={}, *, integrity='', rename_files={})दिए गए यूआरएल के लिए आउटपुट पाथ में कोई फ़ाइल डाउनलोड करता है, उसे एक्सट्रैक्ट करता है, और
success
वाला फ़्लैग दिखाता है जो true
होने पर डाउनलोड पूरा होता है. अगर यह सफल होता है, तो sha256
और integrity
फ़ील्ड के साथ फ़ाइल का हैश होता है.
पैरामीटर
पैरामीटर | जानकारी |
---|---|
url
|
string; or Iterable of strings
ज़रूरी हैएक ही फ़ाइल के बारे में बताने वाले डुप्लीकेट यूआरएल की सूची. |
output
|
string; or Label; or path , डिफ़ॉल्ट = ''उस डायरेक्ट्री का पाथ जहां संग्रह को अनपैक किया जाएगा. |
sha256
|
डिफ़ॉल्ट = '' डाउनलोड की गई फ़ाइल का अनुमानित SHA-256 हैश. यह डाउनलोड की गई फ़ाइल के SHA-256 हैश से मेल खाना चाहिए. SHA-256 को हटाने से सुरक्षा का जोखिम होता है, क्योंकि रिमोट फ़ाइलें बदल सकती हैं. इस फ़ील्ड को सबसे ज़्यादा मिटाने से यह काम आसान नहीं होता. डेवलपमेंट को आसान बनाना ज़रूरी नहीं है. हालांकि, शिपिंग से पहले इसे सेट किया जाना चाहिए. अगर दिए गए हैश से, डेटा स्टोर करने की जगह की जानकारी दी गई है, तो पहले उसकी जांच की जाएगी. डाउनलोड करने की कोशिश तभी की जाएगी, जब फ़ाइल कैश मेमोरी में मौजूद न हो. डाउनलोड हो जाने के बाद, फ़ाइल को कैश मेमोरी में जोड़ दिया जाएगा. |
type
|
डिफ़ॉल्ट = '' डाउनलोड की गई फ़ाइल का संग्रह टाइप. डिफ़ॉल्ट रूप से, संग्रहित करने का तरीका यूआरएल के फ़ाइल एक्सटेंशन से तय होता है. अगर फ़ाइल में कोई एक्सटेंशन नहीं है, तो "zip", "j अपने", "वार", "ar", "tar"g", "tgz", "tar.xz", "txz", ".tar.zst", ".tzst", "tar.bz2", ".tbz", ".ar" या ".de" को साफ़ तौर पर बताया जा सकता है. |
stripPrefix
|
डिफ़ॉल्ट = '' निकाली गई फ़ाइलों से स्ट्रिप निकालने के लिए डायरेक्ट्री प्रीफ़िक्स. कई संग्रहों में एक टॉप-लेवल की डायरेक्ट्री होती है, जिसमें संग्रह की सभी फ़ाइलें होती हैं. build_file में इस प्रीफ़िक्स को दिखाने की ज़रूरत नहीं होती है. हालांकि, इस फ़ील्ड का इस्तेमाल, निकाली गई फ़ाइलों से बार-बार हटाने के लिए किया जा सकता है.
|
allow_fail
|
डिफ़ॉल्ट = गलत अगर सेट है, तो फ़ेल हो चुके डाउनलोड के लिए गड़बड़ी दर्ज करने के बजाय, रिटर्न वैल्यू में गड़बड़ी दिखाएं |
canonical_id
|
डिफ़ॉल्ट = '' अगर सेट किया जाता है, तो कैश हिट को उन मामलों में सीमित करें जहां फ़ाइल को एक ही कैननिकल आईडी वाली कैश मेमोरी में जोड़ा गया था |
auth
|
डिफ़ॉल्ट = {} एक वैकल्पिक शब्द है, जो कुछ यूआरएल के लिए पुष्टि करने की जानकारी देता है. |
integrity
|
डिफ़ॉल्ट = '' डाउनलोड की गई फ़ाइल का अपेक्षित चेकसम यह डाउनलोड की गई फ़ाइल के चेकसम से मेल खाना चाहिए. रिमोट फ़ाइलें बदलने के दौरान, चेकसम को छोड़ देना एक सुरक्षा जोखिम है. इस फ़ील्ड को सबसे ज़्यादा मिटाने से यह काम आसान नहीं होता. डेवलपमेंट को आसान बनाना ज़रूरी नहीं है. हालांकि, शिपिंग से पहले इसे सेट किया जाना चाहिए. |
rename_files
|
डिफ़ॉल्ट = {} एक वैकल्पिक डिक्शनरी, जिसमें एक्सट्रैक्शन के दौरान फ़ाइलों का नाम बदलना होता है. संग्रहित की गई एंट्री का नाम ऐसी कुंजी से पूरी तरह मैच करना चाहिए जो डायरेक्ट्री की प्रीफ़िक्स अडजस्टमेंट से पहले, वैल्यू में बदल जाएगी. इसका इस्तेमाल उन संग्रहों को निकालने के लिए किया जा सकता है जिनमें गैर-यूनिकोड फ़ाइल नाम शामिल होते हैं या जिनमें ऐसी फ़ाइलें होती हैं जो केस-इनसेंसिटिव फ़ाइल सिस्टम के एक ही पाथ पर ले जाती हैं. |
एक्ज़ीक्यूट करें
exec_result module_ctx.execute(arguments, timeout=600, environment={}, quiet=True, working_directory="")आर्ग्युमेंट की सूची में दिए गए निर्देश का इस्तेमाल करता हो. निर्देश पूरा होने का समय
timeout
(सेकंड में, डिफ़ॉल्ट 600 सेकंड) है. इस तरीके से निर्देश के आउटपुट वाला exec_result
स्ट्रक्चर मिलता है. इस प्रक्रिया में भेजे जाने के लिए, environment
मैप का इस्तेमाल, कुछ एनवायरमेंट वैरिएबल को बदलने के लिए किया जा सकता है.
पैरामीटर
पैरामीटर | जानकारी |
---|---|
arguments
|
ज़रूरी है आर्ग्युमेंट की सूची, पहले एलिमेंट को प्रोग्राम के लिए एक पाथ होना चाहिए. |
timeout
|
डिफ़ॉल्ट = 600 सेकंड में कमांड की ज़्यादा से ज़्यादा अवधि (डिफ़ॉल्ट 600 सेकंड है). |
environment
|
डिफ़ॉल्ट = {} कुछ एनवायरमेंट वैरिएबल को प्रोसेस में भेजे जाने के लिए सेट करता है. |
quiet
|
डिफ़ॉल्ट = सही अगर stdout और stderr को टर्मिनल पर प्रिंट किया जाना चाहिए. |
working_directory
|
डिफ़ॉल्ट = "" कमांड एक्ज़ीक्यूशन के लिए डायरेक्ट्री. डेटा स्टोर करने की जगह के रूट या ऐब्सलूट रेफ़रंस में दिखाया जा सकता है. |
फ़ाइल
None module_ctx.file(path, content='', executable=True, legacy_utf8=True)दिए गए कॉन्टेंट के साथ रिपॉज़िटरी डायरेक्ट्री में एक फ़ाइल जनरेट करता है.
पैरामीटर
पैरामीटर | जानकारी |
---|---|
path
|
string; or Label; or path ;
रिपॉज़िटरी डायरेक्ट्री के हिसाब से, फ़ाइल बनाने के लिए पाथ की ज़रूरत होती है. |
content
|
डिफ़ॉल्ट = '' बनाई जाने वाली फ़ाइल का कॉन्टेंट, डिफ़ॉल्ट रूप से खाली होता है. |
executable
|
डिफ़ॉल्ट = True बनाई गई फ़ाइल पर एक्ज़ीक्यूटेबल फ़्लैग सेट करें, डिफ़ॉल्ट रूप से सही. |
legacy_utf8
|
डिफ़ॉल्ट = True फ़ाइल के कॉन्टेंट को UTF-8 में एन्कोड करें, जो डिफ़ॉल्ट रूप से सही होता है. आने वाले वर्शन डिफ़ॉल्ट तौर पर बदल जाएंगे और इस पैरामीटर को हटा देंगे. |
is_dev_डिपेंडेंसी
bool module_ctx.is_dev_dependency(tag)इससे पता चलता है कि दिया गया टैग,
devDependency = True
के साथ use_extensions कॉल के नतीजे में तय हुआ था या नहीं.
पैरामीटर
पैरामीटर | जानकारी |
---|---|
tag
|
bazel_module_tag
ज़रूरी हैbazel_module.tag से मिला टैग. |
मॉड्यूल
list module_ctx.modulesएक्सटर्नल डिपेंडेंसी ग्राफ़ में मौजूद सभी Bazel मॉड्यूल की सूची. हर मॉड्यूल bazel_module ऑब्जेक्ट है, जो उन सभी टैग को दिखाता है जो इस मॉड्यूल एक्सटेंशन के लिए तय किए गए हैं. इस शब्दकोश के इटरेशन ऑर्डर को रूट मॉड्यूल से शुरू करके, ब्रैथ-फ़र्स्ट सर्च करने की गारंटी दी जाती है.
ओएस
repository_os module_ctx.osसिस्टम से जानकारी ऐक्सेस करने का तरीका.
पाथ
path module_ctx.path(path)किसी स्ट्रिंग, लेबल या पाथ से पाथ दिखाता है. अगर पाथ रिलेटिव है, तो रिपॉज़िटरी डायरेक्ट्री से मिलती-जुलती वैल्यू मिलेगी. अगर पाथ एक लेबल है, तो यह संबंधित फ़ाइल के पाथ में बदल जाएगा. ध्यान दें कि विश्लेषण के चरण के दौरान रिमोट रिपॉज़िटरी चलाए जाते हैं, और इसलिए यह टारगेट नतीजे पर निर्भर नहीं करती. लेबल, जनरेट न की गई फ़ाइल पर ले जाना चाहिए. अगर पाथ एक पाथ है, तो वह पहले जैसा ही रहेगा.
पैरामीटर
पैरामीटर | जानकारी |
---|---|
path
|
string; or Label; or path ,
ज़रूरीस्ट्रिंग, लेबल या पाथ जिससे पाथ बनाना है |
पढ़ना
string module_ctx.read(path)फ़ाइल सिस्टम की फ़ाइल का कॉन्टेंट पढ़ता है.
पैरामीटर
पैरामीटर | जानकारी |
---|---|
path
|
पढ़ने के लिए फ़ाइल का string; or Label; or path
पाथज़रूरी है. |
रिपोर्ट_प्रगति
None module_ctx.report_progress(status='')इस रिपॉज़िटरी या मॉड्यूल एक्सटेंशन को फ़ेच करने की प्रोसेस की स्थिति को अपडेट करता है
पैरामीटर
पैरामीटर | जानकारी |
---|---|
status
|
string :
डिफ़ॉल्ट = ''स्ट्रिंग, फ़ेच करने की स्थिति की मौजूदा स्थिति बताती है |
कौनसा
path module_ctx.which(program)पाथ में कोई प्रोग्राम न होने पर, उससे जुड़े प्रोग्राम का पाथ या 'कोई नहीं' दिखाता है.
पैरामीटर
पैरामीटर | जानकारी |
---|---|
program
|
ज़रूरी है पाथ में ढूंढने के लिए प्रोग्राम. |
None
वापस किया जा सकता है.