implementation फ़ंक्शन के लिए repository_ctx ऑब्जेक्ट मिलता है.
सदस्य
- attr
- मिटाएं
- download
- download_and_extract
- execute
- extract
- फ़ाइल
- getenv
- name
- original_name
- os
- पैच
- पाथ
- पढ़ें
- rename
- report_progress
- symlink
- template
- watch
- watch_tree
- कौनसा
- workspace_root
attr
struct repository_ctx.attr
मिटाएं
bool repository_ctx.delete(path)
पैरामीटर
| पैरामीटर | ब्यौरा |
|---|---|
path
|
string; या path;
required मिटाई जाने वाली फ़ाइल का पाथ. यह रिपॉज़िटरी डायरेक्ट्री के हिसाब से रेलेटिव या ऐब्सलूट हो सकता है. यह पाथ या स्ट्रिंग हो सकता है. |
डाउनलोड करें
unknown repository_ctx.download(url, output='', sha256='', executable=False, allow_fail=False, canonical_id='', auth={}, headers={}, *, integrity='', block=True)success शामिल होता है. यह एक फ़्लैग है. अगर डाउनलोड पूरा हो जाता है, तो इसकी वैल्यू true होती है. अगर डाउनलोड पूरा हो जाता है, तो इसमें फ़ाइल का हैश भी शामिल होता है. इसमें sha256 और integrity फ़ील्ड होते हैं. जब उपयोगकर्ता sha256 या integrity की वैल्यू तय करता है, तब canonical_id की वैल्यू साफ़ तौर पर सेट करने का सुझाव दिया जाता है. उदाहरण के लिए, get_default_canonical_id
पैरामीटर
| पैरामीटर | ब्यौरा |
|---|---|
url
|
स्ट्रिंग; या स्ट्रिंग का इटरेबल;
ज़रूरी है एक ही फ़ाइल का रेफ़रंस देने वाले मिरर यूआरएल की सूची. |
output
|
string; या Label; या path;
डिफ़ॉल्ट वैल्यू ''है रिपॉज़िटरी डायरेक्ट्री के हिसाब से आउटपुट फ़ाइल का पाथ. |
sha256
|
string;
डिफ़ॉल्ट वैल्यू ''है डाउनलोड की गई फ़ाइल का SHA-256 हैश. यह डाउनलोड की गई फ़ाइल के SHA-256 हैश से मेल खाना चाहिए. SHA-256 को शामिल न करने से सुरक्षा से जुड़ी समस्या हो सकती है, क्योंकि रिमोट फ़ाइलें बदल सकती हैं. इस फ़ील्ड को शामिल न करने से, आपका बिल्ड नॉन-हर्मेटिक हो जाएगा. इससे डेवलपमेंट को आसान बनाने में मदद मिलती है. हालांकि, शिपिंग से पहले इसे सेट करना ज़रूरी है. अगर हैश दिया गया है, तो रिपॉज़िटरी की कैश मेमोरी में दिए गए हैश वाली फ़ाइल की जांच की जाएगी. फ़ाइल को सिर्फ़ तब डाउनलोड करने की कोशिश की जाएगी, जब वह कैश मेमोरी में न मिले. डाउनलोड हो जाने के बाद, फ़ाइल को कैश मेमोरी में जोड़ दिया जाएगा. |
executable
|
bool;
डिफ़ॉल्ट तौर पर Falseहै यह बनाई गई फ़ाइल पर एक्ज़ीक्यूटेबल फ़्लैग सेट करता है. डिफ़ॉल्ट रूप से, यह फ़्लैग 'गलत' पर सेट होता है. |
allow_fail
|
bool;
डिफ़ॉल्ट वैल्यू Falseहै अगर यह विकल्प सेट किया जाता है, तो डाउनलोड फ़ेल होने पर गड़बड़ी की सूचना देने के बजाय, रिटर्न वैल्यू में गड़बड़ी की जानकारी दी जाती है. |
canonical_id
|
string;
डिफ़ॉल्ट वैल्यू ''है अगर यह विकल्प सेट किया जाता है, तो कैश मेमोरी से फ़ाइलें सिर्फ़ उन मामलों में मिलेंगी जहां फ़ाइल को एक ही कैननिकल आईडी के साथ कैश मेमोरी में जोड़ा गया था. डिफ़ॉल्ट रूप से, कैश मेमोरी में सेव करने के लिए चेकसम ( sha256 या integrity) का इस्तेमाल किया जाता है.
|
auth
|
dict;
डिफ़ॉल्ट तौर पर {}होता है यह एक वैकल्पिक डिक्शनरी है. इसमें कुछ यूआरएल के लिए पुष्टि करने की जानकारी दी जाती है. |
headers
|
dict;
डिफ़ॉल्ट तौर पर {}होता है यह एक ऐसी डिक्शनरी है जिसमें सभी यूआरएल के लिए एचटीटीपी हेडर की जानकारी दी जाती है. हालांकि, इसे शामिल करना ज़रूरी नहीं है. |
integrity
|
string;
डिफ़ॉल्ट ''होता है डाउनलोड की गई फ़ाइल का, सबरिसॉर्स इंटिग्रिटी फ़ॉर्मैट में अनुमानित चेकसम. यह डाउनलोड की गई फ़ाइल के चेकसम से मेल खाना चाहिए. चेकसम को शामिल न करने से सुरक्षा से जुड़ी समस्या हो सकती है, क्योंकि रिमोट फ़ाइलें बदल सकती हैं. इस फ़ील्ड को शामिल न करने से, आपका बिल्ड नॉन-हर्मेटिक हो जाएगा. इससे डेवलपमेंट को आसान बनाने में मदद मिलती है. हालांकि, शिपिंग से पहले इसे सेट करना ज़रूरी है. अगर चेकसम दिया गया है, तो रिपॉज़िटरी कैश में दिए गए चेकसम वाली फ़ाइल की जांच की जाएगी. फ़ाइल को सिर्फ़ तब डाउनलोड करने की कोशिश की जाएगी, जब वह कैश में न मिले. डाउनलोड हो जाने के बाद, फ़ाइल को कैश मेमोरी में जोड़ दिया जाएगा. |
block
|
bool;
default is TrueIf set to false, the call returns immediately and instead of the regular return value, it returns a token with one single method, wait(), which blocks until the download is finished and returns the usual return value or throws as usual. |
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 शामिल होता है. यह एक फ़्लैग है. अगर डाउनलोड पूरा हो जाता है, तो इसकी वैल्यू true होती है. अगर डाउनलोड पूरा हो जाता है, तो यह फ़ाइल का हैश दिखाता है. इसमें sha256 और integrity फ़ील्ड होते हैं. जब उपयोगकर्ता sha256 या integrity की वैल्यू तय करता है, तब canonical_id की वैल्यू साफ़ तौर पर सेट करने का सुझाव दिया जाता है. उदाहरण के लिए, get_default_canonical_id
पैरामीटर
| पैरामीटर | ब्यौरा |
|---|---|
url
|
स्ट्रिंग; या स्ट्रिंग का इटरेबल;
ज़रूरी है एक ही फ़ाइल का रेफ़रंस देने वाले मिरर यूआरएल की सूची. |
output
|
string; या Label; या path;
डिफ़ॉल्ट तौर पर ''होता है यह उस डायरेक्ट्री का पाथ होता है जहां संग्रह को अनपैक किया जाएगा. यह पाथ, डेटाबेस डायरेक्ट्री के हिसाब से होता है. |
sha256
|
string;
डिफ़ॉल्ट वैल्यू ''है डाउनलोड की गई फ़ाइल का SHA-256 हैश. यह डाउनलोड की गई फ़ाइल के SHA-256 हैश से मेल खाना चाहिए. SHA-256 को शामिल न करने से सुरक्षा से जुड़ी समस्या हो सकती है, क्योंकि रिमोट फ़ाइलें बदल सकती हैं. इस फ़ील्ड को शामिल न करने से, आपका बिल्ड नॉन-हर्मेटिक हो जाएगा. इससे डेवलपमेंट को आसान बनाने में मदद मिलती है. हालांकि, शिपिंग से पहले इसे सेट करना ज़रूरी है. अगर हैश दिया गया है, तो रिपॉज़िटरी की कैश मेमोरी में दिए गए हैश वाली फ़ाइल की जांच की जाएगी. फ़ाइल को सिर्फ़ तब डाउनलोड करने की कोशिश की जाएगी, जब वह कैश मेमोरी में न मिले. डाउनलोड हो जाने के बाद, फ़ाइल को कैश मेमोरी में जोड़ दिया जाएगा. |
type
|
string;
डिफ़ॉल्ट तौर पर ''होता है डाउनलोड की गई फ़ाइल का संग्रह टाइप. डिफ़ॉल्ट रूप से, संग्रह के टाइप का पता यूआरएल के फ़ाइल एक्सटेंशन से चलता है. अगर फ़ाइल का कोई एक्सटेंशन नहीं है, तो यहां "zip", "jar", "war", "aar", "nupkg", "tar", "tar.gz", "tgz", "tar.xz", "txz", ".tar.zst", ".tzst", "tar.bz2", ".tbz", ".ar" या ".deb" में से कोई एक एक्सटेंशन साफ़ तौर पर बताया जा सकता है. |
strip_prefix
|
string;
डिफ़ॉल्ट वैल्यू ''है यह डायरेक्ट्री का ऐसा प्रीफ़िक्स होता है जिसे निकाली गई फ़ाइलों से हटा दिया जाता है. कई संग्रहों में टॉप-लेवल डायरेक्ट्री होती है. इसमें संग्रह की सभी फ़ाइलें होती हैं. build_file में इस प्रीफ़िक्स को बार-बार डालने के बजाय, इस फ़ील्ड का इस्तेमाल करके इसे निकाली गई फ़ाइलों से हटाया जा सकता है.
यह पैरामीटर, बंद किए गए नाम |
allow_fail
|
bool;
डिफ़ॉल्ट वैल्यू Falseहै अगर यह विकल्प सेट किया जाता है, तो डाउनलोड फ़ेल होने पर गड़बड़ी की सूचना देने के बजाय, रिटर्न वैल्यू में गड़बड़ी की जानकारी दी जाती है. |
canonical_id
|
string;
डिफ़ॉल्ट वैल्यू ''है अगर यह विकल्प सेट किया जाता है, तो कैश मेमोरी से फ़ाइलें सिर्फ़ उन मामलों में मिलेंगी जहां फ़ाइल को एक ही कैननिकल आईडी के साथ कैश मेमोरी में जोड़ा गया था. डिफ़ॉल्ट रूप से, कैश मेमोरी में सेव करने के लिए चेकसम" ( sha256 या integrity) का इस्तेमाल किया जाता है.
|
auth
|
dict;
डिफ़ॉल्ट तौर पर {}होता है यह एक वैकल्पिक डिक्शनरी है. इसमें कुछ यूआरएल के लिए पुष्टि करने की जानकारी दी जाती है. |
headers
|
dict;
डिफ़ॉल्ट तौर पर {}होता है यह एक ऐसी डिक्शनरी है जिसमें सभी यूआरएल के लिए एचटीटीपी हेडर की जानकारी दी जाती है. हालांकि, इसे शामिल करना ज़रूरी नहीं है. |
integrity
|
string;
डिफ़ॉल्ट ''होता है डाउनलोड की गई फ़ाइल का, सबरिसॉर्स इंटिग्रिटी फ़ॉर्मैट में अनुमानित चेकसम. यह डाउनलोड की गई फ़ाइल के चेकसम से मेल खाना चाहिए. चेकसम को शामिल न करने से सुरक्षा से जुड़ी समस्या हो सकती है, क्योंकि रिमोट फ़ाइलें बदल सकती हैं. इस फ़ील्ड को शामिल न करने से, आपका बिल्ड नॉन-हर्मेटिक हो जाएगा. इससे डेवलपमेंट को आसान बनाने में मदद मिलती है. हालांकि, शिपिंग से पहले इसे सेट करना ज़रूरी है. अगर चेकसम दिया गया है, तो रिपॉज़िटरी कैश में दिए गए चेकसम वाली फ़ाइल की जांच की जाएगी. फ़ाइल को सिर्फ़ तब डाउनलोड करने की कोशिश की जाएगी, जब वह कैश में न मिले. डाउनलोड हो जाने के बाद, फ़ाइल को कैश मेमोरी में जोड़ दिया जाएगा. |
rename_files
|
dict;
डिफ़ॉल्ट रूप से {}होता है यह एक वैकल्पिक डिक्शनरी है. इसमें उन फ़ाइलों के बारे में बताया जाता है जिनका नाम एक्सट्रैक्शन के दौरान बदलना है. जिन एंट्री के नाम किसी कुंजी से पूरी तरह मेल खाते हैं उन्हें वैल्यू के तौर पर फिर से नाम दिया जाएगा. ऐसा डायरेक्ट्री के प्रीफ़िक्स में किसी भी तरह के बदलाव से पहले किया जाएगा. इसका इस्तेमाल उन संग्रहों को निकालने के लिए किया जा सकता है जिनमें नॉन-यूनिकोड फ़ाइलनाम होते हैं या जिनमें ऐसी फ़ाइलें होती हैं जिन्हें केस-इनसेंसिटिव फ़ाइल सिस्टम पर एक ही पाथ पर निकाला जाता है. |
लागू करना
exec_result repository_ctx.execute(arguments, timeout=600, environment={}, quiet=True, working_directory="")
timeout सेकंड से ज़्यादा नहीं होना चाहिए. डिफ़ॉल्ट रूप से यह 600 सेकंड होता है. यह तरीका, exec_result स्ट्रक्चर दिखाता है. इसमें कमांड का आउटपुट होता है. environment मैप का इस्तेमाल, प्रोसेस में पास किए जाने वाले कुछ एनवायरमेंट वैरिएबल को बदलने के लिए किया जा सकता है.
पैरामीटर
| पैरामीटर | ब्यौरा |
|---|---|
arguments
|
sequence;
ज़रूरी है आर्ग्युमेंट की सूची. पहला एलिमेंट, एक्ज़ीक्यूट किए जाने वाले प्रोग्राम का पाथ होना चाहिए. |
timeout
|
int;
default is 600कमांड की ज़्यादा से ज़्यादा अवधि, सेकंड में (डिफ़ॉल्ट रूप से 600 सेकंड). |
environment
|
dict;
डिफ़ॉल्ट रूप से {}होता है कुछ एनवायरमेंट वैरिएबल को प्रोसेस में पास करने के लिए सेट करें. एनवायरमेंट वैरिएबल हटाने के लिए, वैल्यू को None पर सेट किया जा सकता है.
|
quiet
|
bool;
डिफ़ॉल्ट रूप से Trueहोता है अगर stdout और stderr को टर्मिनल पर प्रिंट किया जाना चाहिए. |
working_directory
|
string;
डिफ़ॉल्ट वैल्यू ""है कमांड को लागू करने के लिए वर्किंग डायरेक्ट्री. यह रिपॉज़िटरी के रूट के हिसाब से या पूरी तरह से तय किया जा सकता है. डिफ़ॉल्ट रूप से, यह रिपॉज़िटरी का रूट होता है. |
एक्सट्रैक्ट करें
None repository_ctx.extract(archive, output='', strip_prefix='', *, rename_files={}, watch_archive='auto')पैरामीटर
| पैरामीटर | ब्यौरा |
|---|---|
archive
|
string; या Label; या path;
required यह उस संग्रह का पाथ होता है जिसे अनपैक किया जाएगा. यह पाथ, डेटाबेस डायरेक्ट्री के हिसाब से होता है. |
output
|
string; या Label; या path;
डिफ़ॉल्ट वैल्यू ''है यह उस डायरेक्ट्री का पाथ है जहां संग्रह को अनपैक किया जाएगा. यह पाथ, डेटाबेस डायरेक्ट्री के हिसाब से होता है. |
strip_prefix
|
string;
डिफ़ॉल्ट वैल्यू ''है यह डायरेक्ट्री का ऐसा प्रीफ़िक्स होता है जिसे निकाली गई फ़ाइलों से हटा दिया जाता है. कई संग्रहों में टॉप-लेवल डायरेक्ट्री होती है. इसमें संग्रह की सभी फ़ाइलें होती हैं. build_file में इस प्रीफ़िक्स को बार-बार तय करने के बजाय, इस फ़ील्ड का इस्तेमाल करके इसे निकाली गई फ़ाइलों से हटाया जा सकता है.
यह पैरामीटर, बंद किए गए नाम |
rename_files
|
dict;
डिफ़ॉल्ट रूप से {}होता है यह एक वैकल्पिक डिक्शनरी है. इसमें उन फ़ाइलों के बारे में बताया जाता है जिनका नाम एक्सट्रैक्शन के दौरान बदलना है. जिन एंट्री के नाम किसी कुंजी से पूरी तरह मेल खाते हैं उन्हें वैल्यू के तौर पर फिर से नाम दिया जाएगा. ऐसा डायरेक्ट्री के प्रीफ़िक्स में किसी भी तरह के बदलाव से पहले किया जाएगा. इसका इस्तेमाल उन संग्रहों को निकालने के लिए किया जा सकता है जिनमें नॉन-यूनिकोड फ़ाइलनाम होते हैं या जिनमें ऐसी फ़ाइलें होती हैं जिन्हें केस-इनसेंसिटिव फ़ाइल सिस्टम पर एक ही पाथ पर निकाला जाता है. |
watch_archive
|
string;
डिफ़ॉल्ट वैल्यू 'auto'है यह तय करता है कि संग्रह की गई फ़ाइल को देखा जाए या नहीं. यह स्ट्रिंग 'yes', 'no' या 'auto' हो सकती है. 'yes' पास करने का मतलब है कि watch() तरीके को तुरंत लागू करना; 'no' पास करने का मतलब है कि फ़ाइल को देखने की कोशिश नहीं की जाएगी; 'auto' पास करने का मतलब है कि फ़ाइल को सिर्फ़ तब देखने की कोशिश की जाएगी, जब ऐसा करना कानूनी हो (ज़्यादा जानकारी के लिए, watch() दस्तावेज़ देखें.
|
फ़ाइल
None repository_ctx.file(path, content='', executable=True, legacy_utf8=False)पैरामीटर
| पैरामीटर | ब्यौरा |
|---|---|
path
|
string; या Label; या path;
required रिपॉज़िटरी डायरेक्ट्री के हिसाब से, बनाई जाने वाली फ़ाइल का पाथ. |
content
|
string;
डिफ़ॉल्ट वैल्यू ''है बनाई जाने वाली फ़ाइल का कॉन्टेंट. डिफ़ॉल्ट रूप से यह खाली होता है. |
executable
|
bool;
डिफ़ॉल्ट तौर पर Trueहै बनाई गई फ़ाइल पर एक्ज़ीक्यूटेबल फ़्लैग सेट करें. यह डिफ़ॉल्ट रूप से 'सही' पर सेट होता है. |
legacy_utf8
|
bool;
डिफ़ॉल्ट रूप से Falseहोता है कोई कार्रवाई नहीं. यह पैरामीटर अब काम नहीं करता. इसे Bazel के आने वाले वर्शन में हटा दिया जाएगा. |
getenv
string repository_ctx.getenv(name, default=None)
name मौजूद है, तो यह फ़ंक्शन उसकी वैल्यू को स्ट्रिंग के तौर पर दिखाता है. अगर यह मौजूद नहीं है, तो default दिखाता है. इंक्रीमेंटल बिल्ड के दौरान, name नाम वाले वैरिएबल की वैल्यू में कोई भी बदलाव होने पर, इस डेटाबेस को फिर से फ़ेच किया जाएगा.
पैरामीटर
| पैरामीटर | ब्यौरा |
|---|---|
name
|
string;
ज़रूरी है ज़रूरत के हिसाब से एनवायरमेंट वैरिएबल का नाम. |
default
|
string; या None;
डिफ़ॉल्ट वैल्यू Noneहै अगर name नहीं मिलता है, तो डिफ़ॉल्ट वैल्यू दिखाई जाती है.
|
None मिल सकता है.
नाम
string repository_ctx.name
original_name का इस्तेमाल करके, वह नाम पाएं जिसे इस रिपॉज़िटरी के नियम को इंस्टैंटिएट करते समय, मूल रूप से name के तौर पर तय किया गया था.
original_name
string repository_ctx.original_name
name एट्रिब्यूट के तौर पर तय किया गया था. यह ज़रूरी नहीं है कि बाहरी डेटाबेस में यह नाम यूनीक हो. बाहरी रिपॉज़िटरी का कैननिकल नाम पाने के लिए, name का इस्तेमाल करें.
os
repository_os repository_ctx.os
पैच
None repository_ctx.patch(patch_file, strip=0, *, watch_patch='auto')पैरामीटर
| पैरामीटर | ब्यौरा |
|---|---|
patch_file
|
स्ट्रिंग; या लेबल; या पाथ;
ज़रूरी है लागू करने के लिए पैच फ़ाइल. यह लेबल, रिलेटिव पाथ या ऐब्सलूट पाथ हो सकता है. अगर यह रिलेटिव पाथ है, तो यह डेटाबेस डायरेक्ट्री में बदल जाएगा. |
strip
|
int;
डिफ़ॉल्ट रूप से 0होता है फ़ाइल के नामों से, शुरू के कॉम्पोनेंट की तय की गई संख्या को हटाता है. |
watch_patch
|
string;
डिफ़ॉल्ट वैल्यू 'auto'है पैच फ़ाइल को वॉच करना है या नहीं. यह स्ट्रिंग 'yes', 'no' या 'auto' हो सकती है. 'yes' पास करने का मतलब है कि watch() तरीके को तुरंत लागू करना; 'no' पास करने का मतलब है कि फ़ाइल को देखने की कोशिश नहीं की जाएगी; 'auto' पास करने का मतलब है कि फ़ाइल को सिर्फ़ तब देखने की कोशिश की जाएगी, जब ऐसा करना कानूनी हो (ज़्यादा जानकारी के लिए, watch() दस्तावेज़ देखें.
|
पाथ
path repository_ctx.path(path)
पैरामीटर
| पैरामीटर | ब्यौरा |
|---|---|
path
|
string; या Label; या path;
ज़रूरी हैstring, Label या path, जिससे पाथ बनाना है.
|
पढ़ा गया
string repository_ctx.read(path, *, watch='auto')
पैरामीटर
| पैरामीटर | ब्यौरा |
|---|---|
path
|
string; या Label; या path;
ज़रूरी है उस फ़ाइल का पाथ जिससे डेटा पढ़ना है. |
watch
|
string;
डिफ़ॉल्ट वैल्यू 'auto'है फ़ाइल को वॉच करना है या नहीं. यह स्ट्रिंग 'yes', 'no' या 'auto' हो सकती है. 'yes' पास करने का मतलब है कि watch() तरीके को तुरंत लागू करना; 'no' पास करने का मतलब है कि फ़ाइल को देखने की कोशिश नहीं की जाएगी; 'auto' पास करने का मतलब है कि फ़ाइल को सिर्फ़ तब देखने की कोशिश की जाएगी, जब ऐसा करना कानूनी हो (ज़्यादा जानकारी के लिए, watch() दस्तावेज़ देखें.
|
नाम बदलें
None repository_ctx.rename(src, dst)src से बदलकर dst कर देता है. ज़रूरत के हिसाब से पैरंट डायरेक्ट्री बनाई जाती हैं. अगर डेस्टिनेशन पाथ पहले से मौजूद है, तो यह फ़ेल हो जाता है. दोनों पाथ, रिपॉज़िटरी में मौजूद होने चाहिए.
पैरामीटर
| पैरामीटर | ब्यौरा |
|---|---|
src
|
string; या Label; या path;
ज़रूरी है यह रिपॉज़िटरी डायरेक्ट्री के हिसाब से, नाम बदलने के लिए मौजूदा फ़ाइल या डायरेक्ट्री का पाथ होता है. |
dst
|
string; या Label; या path;
required फ़ाइल या डायरेक्ट्री का नया नाम, जिसे रिपॉज़िटरी डायरेक्ट्री के हिसाब से बदला जाएगा. |
report_progress
None repository_ctx.report_progress(status='')पैरामीटर
| पैरामीटर | ब्यौरा |
|---|---|
status
|
string;
डिफ़ॉल्ट वैल्यू ''है string फ़ेच करने की प्रोसेस के मौजूदा स्टेटस के बारे में बताता है.
|
सिमलिंक
None repository_ctx.symlink(target, link_name)पैरामीटर
| पैरामीटर | ब्यौरा |
|---|---|
target
|
string; या Label; या path;
ज़रूरी है वह पाथ जिस पर सिमलंक को पॉइंट करना चाहिए. |
link_name
|
string; या Label; या path;
required सिमलिंक बनाने का पाथ. |
टेंप्लेट
None repository_ctx.template(path, template, substitutions={}, executable=True, *, watch_template='auto')template का इस्तेमाल करके, नई फ़ाइल जनरेट करता है. template में मौजूद substitutions की हर कुंजी को उसकी वैल्यू से बदल दिया जाएगा. नतीजा path में लिखा गया है. executable आर्ग्युमेंट (डिफ़ॉल्ट रूप से सही पर सेट होता है) को सेट करके, एक्ज़ीक्यूटेबल बिट को चालू या बंद किया जा सकता है.
पैरामीटर
| पैरामीटर | ब्यौरा |
|---|---|
path
|
string; या Label; या path;
required रिपॉज़िटरी डायरेक्ट्री के हिसाब से, बनाई जाने वाली फ़ाइल का पाथ. |
template
|
string; या Label; या path;
ज़रूरी है टेंप्लेट फ़ाइल का पाथ. |
substitutions
|
dict;
डिफ़ॉल्ट रूप से {}होता है टेंप्लेट को बड़ा करते समय किए जाने वाले बदलाव. |
executable
|
bool;
डिफ़ॉल्ट तौर पर Trueहै बनाई गई फ़ाइल पर एक्ज़ीक्यूटेबल फ़्लैग सेट करें. यह डिफ़ॉल्ट रूप से 'सही' पर सेट होता है. |
watch_template
|
string;
डिफ़ॉल्ट वैल्यू 'auto'है टेंप्लेट फ़ाइल को वॉच करना है या नहीं. यह स्ट्रिंग 'yes', 'no' या 'auto' हो सकती है. 'yes' पास करने का मतलब है कि watch() तरीके को तुरंत लागू करना; 'no' पास करने का मतलब है कि फ़ाइल को देखने की कोशिश नहीं की जाएगी; 'auto' पास करने का मतलब है कि फ़ाइल को सिर्फ़ तब देखने की कोशिश की जाएगी, जब ऐसा करना कानूनी हो (ज़्यादा जानकारी के लिए, watch() दस्तावेज़ देखें.
|
देखें
None repository_ctx.watch(path)"बदलाव" में ये बदलाव शामिल हैं: फ़ाइल के कॉन्टेंट में बदलाव (अगर पाथ कोई फ़ाइल है); अगर पाथ पहले कोई फ़ाइल था, लेकिन अब कोई डायरेक्ट्री है या इसके उलट; और अगर पाथ मौजूद है या मौजूद नहीं है. खास तौर पर, अगर पाथ कोई डायरेक्ट्री है, तो इसमें डायरेक्ट्री में मौजूद किसी भी फ़ाइल में किए गए बदलाव शामिल नहीं होते. इसके लिए, path.readdir() का इस्तेमाल करें.
ध्यान दें कि फ़िलहाल फ़ेच की जा रही रिपो या मौजूदा मॉड्यूल एक्सटेंशन की वर्किंग डायरेक्ट्री में पाथ देखने की कोशिश करने पर, गड़बड़ी होगी. अगर कोई मॉड्यूल एक्सटेंशन, Bazel के मौजूदा फ़ाइल फ़ोल्डर से बाहर के किसी पाथ को मॉनिटर करने की कोशिश करता है, तो भी गड़बड़ी होगी.
पैरामीटर
| पैरामीटर | ब्यौरा |
|---|---|
path
|
string; या Label; या path;
ज़रूरी है उस फ़ाइल का पाथ जिसे मॉनिटर करना है. |
watch_tree
None repository_ctx.watch_tree(path)ध्यान दें कि फ़िलहाल फ़ेच की जा रही रेपो के अंदर पाथ देखने की कोशिश करने पर, गड़बड़ी होगी.
पैरामीटर
| पैरामीटर | ब्यौरा |
|---|---|
path
|
string; या Label; या path;
ज़रूरी है निगरानी के लिए डायरेक्ट्री ट्री का पाथ. |
कौनसा
path repository_ctx.which(program)
path दिखाता है. अगर पाथ में ऐसा कोई प्रोग्राम मौजूद नहीं है, तो यह None दिखाता है.
पैरामीटर
| पैरामीटर | ब्यौरा |
|---|---|
program
|
string;
required पाथ में ढूंढने के लिए प्रोग्राम. |
None मिल सकता है.
workspace_root
path repository_ctx.workspace_root