रिपॉज़िटरी_टैब

समस्या की शिकायत करें सोर्स देखें Nightly · 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

रिपॉज़िटरी नियम का कॉन्टेक्स्ट, जिसमें सहायक फ़ंक्शन और एट्रिब्यूट के बारे में जानकारी शामिल होती है. रिपॉज़िटरी का नियम बनाते समय, आपको implementation फ़ंक्शन के लिए, आर्ग्युमेंट के तौर पर repository_ctx ऑब्जेक्ट मिलता है.

सदस्य

attr

struct repository_ctx.attr

एट्रिब्यूट की वैल्यू ऐक्सेस करने के लिए स्ट्रक्चर. वैल्यू, उपयोगकर्ता से मिलती हैं. अगर वैल्यू नहीं दी जाती हैं, तो डिफ़ॉल्ट वैल्यू का इस्तेमाल किया जाता है.

मिटाएं

bool repository_ctx.delete(path)

किसी फ़ाइल या डायरेक्ट्री को मिटाता है. यह एक बूल वैल्यू दिखाता है, जिससे पता चलता है कि इस कॉल से फ़ाइल या डायरेक्ट्री असल में मिटाई गई थी या नहीं.

पैरामीटर

पैरामीटर ब्यौरा
path स्ट्रिंग या पाथ; ज़रूरी है
रिपॉज़िटरी डायरेक्ट्री के हिसाब से या ऐब्सलूट, मिटाए जाने वाली फ़ाइल का पाथ. यह कोई पाथ या स्ट्रिंग हो सकती है.

डाउनलोड करें

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 स्ट्रिंग या स्ट्रिंग की Iterable वैल्यू; ज़रूरी है
एक ही फ़ाइल का रेफ़रंस देने वाले मिरर यूआरएल की सूची.
output स्ट्रिंग; या लेबल; या पाथ; डिफ़ॉल्ट रूप से ''
होता है रिपॉज़िटरी डायरेक्ट्री के हिसाब से, आउटपुट फ़ाइल का पाथ.
sha256 डिफ़ॉल्ट तौर पर ''
होता है यह डाउनलोड की गई फ़ाइल का अनुमानित SHA-256 हैश होता है. यह डाउनलोड की गई फ़ाइल के SHA-256 हैश से मेल खाना चाहिए. SHA-256 को हटाना सुरक्षा के लिहाज़ से जोखिम भरा है, क्योंकि रिमोट फ़ाइलों में बदलाव हो सकता है. इस फ़ील्ड को छोड़ने से आपका बिल्ड नॉन-हर्मेटिक हो जाएगा. डेवलपमेंट को आसान बनाने के लिए, इसे सेट करना ज़रूरी नहीं है. हालांकि, इसे शिपिंग से पहले सेट करना चाहिए. अगर हैश दिया गया है, तो पहले रिपॉज़िटरी कैश में उस हैश वाली फ़ाइल की जांच की जाएगी. अगर फ़ाइल कैश में नहीं मिली, तो ही उसे डाउनलोड करने की कोशिश की जाएगी. डाउनलोड होने के बाद, फ़ाइल को कैश मेमोरी में जोड़ दिया जाएगा.
executable डिफ़ॉल्ट रूप से False
बनाई गई फ़ाइल पर, 'चलाया जा सकता है' फ़्लैग सेट करें. यह डिफ़ॉल्ट रूप से गलत पर सेट होता है.
allow_fail डिफ़ॉल्ट तौर पर, इसकी वैल्यू False
होती है अगर इसकी वैल्यू सेट की जाती है, तो डाउनलोड न हो पाने की गड़बड़ी दिखाने के बजाय, रिटर्न वैल्यू में गड़बड़ी की जानकारी दी जाती है.
canonical_id डिफ़ॉल्ट तौर पर ''
है अगर यह सेट है, तो कैश मेमोरी में हिट होने की संख्या को उन मामलों तक सीमित करें जहां फ़ाइल को कैश मेमोरी में एक ही कैननिकल आईडी के साथ जोड़ा गया था. डिफ़ॉल्ट रूप से, कैश मेमोरी में डेटा सेव करने के लिए चेकसम (sha256 या integrity) का इस्तेमाल किया जाता है.
auth डिफ़ॉल्ट {}
है यह एक वैकल्पिक डिक्शनरी है, जिसमें कुछ यूआरएल के लिए पुष्टि करने की जानकारी दी गई है.
headers {} डिफ़ॉल्ट है
सभी यूआरएल के लिए एचटीटीपी हेडर तय करने वाला एक वैकल्पिक लिखवाने की सुविधा.
integrity डिफ़ॉल्ट रूप से ''
सब-सोर्स इंटिग्रिटी फ़ॉर्मैट में, डाउनलोड की गई फ़ाइल का अनुमानित चेकसम. यह डाउनलोड की गई फ़ाइल के चेकसम से मेल खाना चाहिए. चेकसम को हटाना सुरक्षा के लिहाज़ से जोखिम भरा है, क्योंकि रिमोट फ़ाइलों में बदलाव हो सकता है. इस फ़ील्ड को हटाने पर, आपका बिल्ड पूरी तरह से सुरक्षित नहीं रहेगा. डेवलपमेंट को आसान बनाना ज़रूरी नहीं है. हालांकि, इसे शिपिंग से पहले सेट किया जाना चाहिए. अगर चेकसम दिया गया है, तो रिपॉज़िटरी के कैश मेमोरी में, दिए गए चेकसम वाली फ़ाइल की जांच की जाएगी. अगर कैश मेमोरी में फ़ाइल नहीं मिली, तो ही उसे डाउनलोड करने की कोशिश की जाएगी. डाउनलोड हो जाने के बाद, फ़ाइल को कैश मेमोरी में जोड़ दिया जाएगा.
block डिफ़ॉल्ट तौर पर, यह True
पर सेट होता है अगर इसे false पर सेट किया जाता है, तो कॉल तुरंत रिटर्न हो जाता है. साथ ही, सामान्य रिटर्न वैल्यू के बजाय, यह एक ही तरीके, wait() के साथ एक टोकन दिखाता है. यह टोकन, डाउनलोड पूरा होने तक ब्लॉक करता है और सामान्य रिटर्न वैल्यू दिखाता है या सामान्य तौर पर थ्रो करता है.

download_and_extract

struct repository_ctx.download_and_extract(url, output='', sha256='', type='', stripPrefix='', allow_fail=False, canonical_id='', auth={}, headers={}, *, integrity='', rename_files={})

यह फ़ंक्शन, दिए गए यूआरएल की फ़ाइल को आउटपुट पाथ में डाउनलोड करता है, उसे निकालता है, और success वाला स्ट्रक्चर दिखाता है. यह एक फ़्लैग होता है, जो true होता है, अगर डाउनलोड पूरा हो जाता है. अगर डाउनलोड पूरा हो जाता है, तो sha256 और integrity फ़ील्ड के साथ फ़ाइल का हैश दिखाया जाता है. जब sha256 या integrity उपयोगकर्ता के तौर पर सेट हो, तो आपको साफ़ तौर पर canonical_id सेट करने का सुझाव दिया जाता है. उदाहरण के लिए, get_default_canonical_id

पैरामीटर

पैरामीटर ब्यौरा
url string; या string में बदलाव करने की सुविधा हो; ज़रूरी है
एक ही फ़ाइल का रेफ़रंस देने वाले डुप्लीकेट यूआरएल की सूची.
output string; या Label; या path; डिफ़ॉल्ट ''
उस डायरेक्ट्री का पाथ होता है जिसमें डेटा स्टोर करने की डायरेक्ट्री के मुकाबले, संग्रह को पैक नहीं किया जाएगा.
sha256 डिफ़ॉल्ट तौर पर ''
होता है यह डाउनलोड की गई फ़ाइल का अनुमानित SHA-256 हैश होता है. यह डाउनलोड की गई फ़ाइल के SHA-256 हैश से मेल खाना चाहिए. SHA-256 को हटाना सुरक्षा के लिहाज़ से जोखिम भरा है, क्योंकि रिमोट फ़ाइलों में बदलाव हो सकता है. इस फ़ील्ड को छोड़ने से आपका बिल्ड नॉन-हर्मेटिक हो जाएगा. डेवलपमेंट को आसान बनाने के लिए, इसे सेट करना ज़रूरी नहीं है. हालांकि, इसे शिपिंग से पहले सेट करना चाहिए. अगर यह दिया जाता है, तो सबसे पहले दिए गए हैश वाली फ़ाइल के लिए रिपॉज़िटरी कैश मेमोरी की जांच की जाएगी. कैश मेमोरी में फ़ाइल न मिलने पर ही डाउनलोड की कोशिश की जाएगी. डाउनलोड होने के बाद, फ़ाइल को कैश मेमोरी में जोड़ दिया जाएगा.
type डिफ़ॉल्ट रूप से ''
होता है यह डाउनलोड की गई फ़ाइल का संग्रह टाइप होता है. डिफ़ॉल्ट रूप से, संग्रह का टाइप, यूआरएल के फ़ाइल एक्सटेंशन से तय होता है. अगर फ़ाइल का कोई एक्सटेंशन नहीं है, तो यहां "zip", "jar", "war", "aar", "nupkg", "tar", "tar.gz", "tgz", "tar.xz", "txz", ".tar.zst", ".tzst", "tar.bz2", ".tbz", ".ar" या ".deb" में से कोई एक एक्सटेंशन डालें.
stripPrefix डिफ़ॉल्ट तौर पर ''
होता है निकाली गई फ़ाइलों से हटाने के लिए डायरेक्ट्री प्रीफ़िक्स. कई संग्रहों में एक टॉप-लेवल डायरेक्ट्री होती है, जिसमें संग्रह की सभी फ़ाइलें होती हैं. build_file में इस प्रीफ़िक्स को बार-बार बताने के बजाय, इस फ़ील्ड का इस्तेमाल करके, निकाली गई फ़ाइलों से इसे हटाया जा सकता है.
allow_fail डिफ़ॉल्ट तौर पर, इसकी वैल्यू False
होती है अगर इसकी वैल्यू सेट की जाती है, तो डाउनलोड न हो पाने की गड़बड़ी दिखाने के बजाय, रिटर्न वैल्यू में गड़बड़ी की जानकारी दी जाती है.
canonical_id डिफ़ॉल्ट तौर पर ''
है अगर यह सेट है, तो कैश मेमोरी में हिट होने की संख्या को उन मामलों तक सीमित करें जहां फ़ाइल को कैश मेमोरी में एक ही कैननिकल आईडी के साथ जोड़ा गया था. डिफ़ॉल्ट रूप से, कैश मेमोरी में डेटा सेव करने के लिए चेकसम का इस्तेमाल किया जाता है" (sha256 या integrity).
auth {} डिफ़ॉल्ट है
कुछ यूआरएल के लिए पुष्टि करने की जानकारी बताने वाला यह लिखवाने की सुविधा ज़रूरी नहीं है.
headers {} डिफ़ॉल्ट है
सभी यूआरएल के लिए एचटीटीपी हेडर तय करने वाला एक वैकल्पिक लिखवाने की सुविधा.
integrity डिफ़ॉल्ट रूप से ''
सब-सोर्स इंटिग्रिटी फ़ॉर्मैट में, डाउनलोड की गई फ़ाइल का अनुमानित चेकसम. यह डाउनलोड की गई फ़ाइल के चेकसम से मेल खाना चाहिए. चेकसम को हटाने से सुरक्षा जोखिम हो सकता है, क्योंकि रिमोट फ़ाइलें बदल सकती हैं. इस फ़ील्ड को हटाने पर, आपका बिल्ड पूरी तरह से सुरक्षित नहीं रहेगा. डेवलपमेंट को आसान बनाने के लिए, इसे सेट करना ज़रूरी नहीं है. हालांकि, इसे शिपिंग से पहले सेट करना चाहिए. अगर चेकसम दिया गया है, तो रिपॉज़िटरी के कैश मेमोरी में, दिए गए चेकसम वाली फ़ाइल की जांच की जाएगी. अगर कैश मेमोरी में फ़ाइल नहीं मिली, तो ही उसे डाउनलोड करने की कोशिश की जाएगी. डाउनलोड होने के बाद, फ़ाइल को कैश मेमोरी में जोड़ दिया जाएगा.
rename_files यह डिफ़ॉल्ट रूप से {} पर सेट होता है
डेटा निकालने के दौरान फ़ाइलों का नाम बदलने के लिए, यह लिखवाने की सुविधा ज़रूरी नहीं है. किसी कीवर्ड से पूरी तरह मेल खाने वाले नाम वाली संग्रहित एंट्री का नाम, डायरेक्ट्री के प्रीफ़िक्स में बदलाव करने से पहले, वैल्यू पर बदल दिया जाएगा. इसका इस्तेमाल उन संग्रहों को निकालने के लिए किया जा सकता है जिनमें यूनिकोड फ़ाइल नाम नहीं हैं या जिनमें ऐसी फ़ाइलें हैं जो केस-इनसेंसिटिव फ़ाइल सिस्टम पर एक ही पाथ में निकाली जाएंगी.

लागू करना

exec_result repository_ctx.execute(arguments, timeout=600, environment={}, quiet=True, working_directory="")

आर्ग्युमेंट की सूची में दिए गए कमांड को लागू करता है. कमांड को लागू करने में timeout सेकंड लग सकते हैं. डिफ़ॉल्ट रूप से, यह समय 600 सेकंड होता है. यह तरीका, exec_result स्ट्रक्चर दिखाता है, जिसमें निर्देश का आउटपुट होता है. environment मैप का इस्तेमाल, प्रोसेस में पास किए जाने वाले कुछ एनवायरमेंट वैरिएबल को बदलने के लिए किया जा सकता है.

पैरामीटर

पैरामीटर ब्यौरा
arguments ज़रूरी है
आर्ग्युमेंट की सूची, पहला एलिमेंट, प्रोग्राम का पाथ होना चाहिए.
timeout डिफ़ॉल्ट रूप से 600
सेकंड में, कमांड की ज़्यादा से ज़्यादा अवधि (डिफ़ॉल्ट रूप से 600 सेकंड).
environment डिफ़ॉल्ट रूप से {}
होता है प्रोसेस में पास करने के लिए, कुछ एनवायरमेंट वैरिएबल को सेट करने के लिए मजबूर करें.
quiet डिफ़ॉल्ट तौर पर, यह True
होता है अगर टर्मिनल पर stdout और stderr को प्रिंट करना है.
working_directory डिफ़ॉल्ट तौर पर, ""
निर्देश लागू करने के लिए वर्किंग डायरेक्ट्री है. यह रिपॉज़िटरी रूट के हिसाब से या एब्सोलूट हो सकता है. डिफ़ॉल्ट रूप से, यह रिपॉज़िटरी का रूट होता है.

एक्सट्रैक्ट

None repository_ctx.extract(archive, output='', stripPrefix='', *, rename_files={}, watch_archive='auto')

संग्रह को डेटा स्टोर करने की जगह की डायरेक्ट्री में निकालें.

पैरामीटर

पैरामीटर ब्यौरा
archive स्ट्रिंग; या लेबल; या पाथ; ज़रूरी है
उस संग्रह का पाथ जिसे अनपैक किया जाएगा. यह पाथ, रिपॉज़िटरी डायरेक्ट्री से जुड़ा होना चाहिए.
output string; या Label; या path; डिफ़ॉल्ट रूप से, उस डायरेक्ट्री का ''
पाथ होता है जिसमें डेटा स्टोर करने की डायरेक्ट्री के हिसाब से, संग्रह को पैक नहीं किया जाएगा.
stripPrefix डिफ़ॉल्ट रूप से, ''
होता है यह डायरेक्ट्री का प्रीफ़िक्स होता है, जिसे निकाली गई फ़ाइलों से हटाना होता है. कई संग्रहों में एक टॉप-लेवल डायरेक्ट्री होती है, जिसमें संग्रह की सभी फ़ाइलें होती हैं. build_file में इस प्रीफ़िक्स को बार-बार बताने के बजाय, इस फ़ील्ड का इस्तेमाल करके, निकाली गई फ़ाइलों से इसे हटाया जा सकता है.
rename_files यह डिफ़ॉल्ट रूप से {} पर सेट होता है
डेटा निकालने के दौरान फ़ाइलों का नाम बदलने के लिए, यह लिखवाने की सुविधा ज़रूरी नहीं है. किसी कुंजी से पूरी तरह मेल खाने वाले नामों वाली संग्रह एंट्री का नाम बदलकर, वैल्यू के तौर पर सेट कर दिया जाएगा. ऐसा, डायरेक्ट्री प्रीफ़िक्स अडजस्टमेंट से पहले किया जाएगा. इसका इस्तेमाल ऐसे संग्रह को एक्सट्रैक्ट करने के लिए किया जा सकता है जिनमें गैर-यूनिकोड फ़ाइल नाम होते हैं या जिनमें ऐसी फ़ाइलें होती हैं जो केस-इनसेंसिटिव फ़ाइल सिस्टम के उसी पाथ पर ले जाती हैं.
watch_archive डिफ़ॉल्ट रूप से 'auto'
यह तय किया जा सकता है कि संग्रहित की गई फ़ाइल को देखना है या नहीं. यह 'yes', 'no' या 'auto' स्ट्रिंग हो सकती है. 'हां' पास करना watch() विधि को तुरंत शुरू करने के समान है; 'नहीं' में पास करना फ़ाइल को देखने का प्रयास नहीं करता; 'ऑटो' पास करना फ़ाइल को देखने का केवल तभी प्रयास करेगा, जब ऐसा करना कानूनी हो (ज़्यादा जानकारी के लिए watch() दस्तावेज़ देखें.

फ़ाइल

None repository_ctx.file(path, content='', executable=True, legacy_utf8=True)

दिए गए कॉन्टेंट के साथ, रिपॉज़िटरी डायरेक्ट्री में फ़ाइल जनरेट करता है.

पैरामीटर

पैरामीटर ब्यौरा
path string; या Label; या path; ज़रूरी
रिपॉज़िटरी डायरेक्ट्री के मुताबिक बनाई जाने वाली फ़ाइल का पाथ.
content डिफ़ॉल्ट तौर पर ''
होता है यह फ़ाइल में मौजूद कॉन्टेंट होता है. यह डिफ़ॉल्ट रूप से खाली होता है.
executable डिफ़ॉल्ट तौर पर True
होता है बनाई गई फ़ाइल पर, 'एक्सीक्यूटेबल' फ़्लैग सेट करें. यह डिफ़ॉल्ट रूप से 'सही' पर सेट होता है.
legacy_utf8 यह डिफ़ॉल्ट रूप से True पर सेट होता है
फ़ाइल के कॉन्टेंट को UTF-8 में एन्कोड करें. यह डिफ़ॉल्ट रूप से 'सही' होता है. आने वाले वर्शन में, डिफ़ॉल्ट पैरामीटर बदल जाएगा और यह पैरामीटर हट जाएगा.

getenv

string repository_ctx.getenv(name, default=None)

अगर एनवायरमेंट वैरिएबल name मौजूद है, तो उसकी वैल्यू को स्ट्रिंग के तौर पर दिखाता है. अगर वैरिएबल मौजूद नहीं है, तो default दिखाता है.

धीरे-धीरे डेटा इकट्ठा करते समय, name नाम वाले वैरिएबल की वैल्यू में कोई बदलाव करने पर, इस रिपॉज़िटरी को फिर से फ़ेच किया जाएगा.

पैरामीटर

पैरामीटर ब्यौरा
name string; ज़रूरी है
ज़रूरी एनवायरमेंट वैरिएबल का नाम.
default string या None; डिफ़ॉल्ट रूप से None
होती है अगर name नहीं मिलता है, तो डिफ़ॉल्ट वैल्यू दिखाने के लिए.
None को वापस किया जा सकता है.

नाम

string repository_ctx.name

इस नियम से बनाए गए बाहरी रिपॉज़िटरी का नाम.

ओएस

repository_os repository_ctx.os

सिस्टम से जानकारी ऐक्सेस करने के लिए स्ट्रक्चर.

पैच

None repository_ctx.patch(patch_file, strip=0, *, watch_patch='auto')

बाहरी रिपॉज़िटरी की रूट डायरेक्ट्री में पैच फ़ाइल लागू करें. पैच फ़ाइल, स्टैंडर्ड यूनिफ़ाइड डिफ़ फ़ॉर्मैट वाली फ़ाइल होनी चाहिए. Bazel-नेटिव पैच लागू करने की सुविधा, पैच कमांड-लाइन टूल की तरह फ़ज़ मैच और बाइनरी पैच के साथ काम नहीं करती.

पैरामीटर

पैरामीटर ब्यौरा
patch_file स्ट्रिंग; या लेबल; या पाथ; ज़रूरी है
लागू करने के लिए पैच फ़ाइल, यह लेबल, रिलेटिव पाथ या ऐब्सलूट पाथ हो सकती है. अगर यह रिलेटिव पाथ है, तो यह रिपॉज़िटरी डायरेक्ट्री का इस्तेमाल करेगा.
strip डिफ़ॉल्ट रूप से 0
फ़ाइल के नामों से, तय की गई संख्या के लीडिंग कॉम्पोनेंट हटाएं.
watch_patch डिफ़ॉल्ट रूप से 'auto'
पैच फ़ाइल को देखना है या नहीं. यह 'yes', 'no' या 'auto' स्ट्रिंग हो सकती है. 'yes' का इस्तेमाल करने का मतलब है कि watch() का तरीका तुरंत लागू हो जाएगा. 'no' का इस्तेमाल करने पर, फ़ाइल को देखने की कोशिश नहीं की जाएगी. 'auto' का इस्तेमाल करने पर, फ़ाइल को सिर्फ़ तब देखा जाएगा, जब ऐसा करना कानूनी हो. ज़्यादा जानकारी के लिए, watch() दस्तावेज़ देखें.

पाथ

path repository_ctx.path(path)

किसी स्ट्रिंग, लेबल या पाथ से पाथ दिखाता है. अगर पाथ रिलेटिव है, तो इसे रिपॉज़िटरी डायरेक्ट्री के हिसाब से हल किया जाएगा. अगर पाथ कोई लेबल है, तो उससे जुड़ी फ़ाइल के पाथ पर ले जाया जाएगा. ध्यान दें कि रिमोट रिपॉज़िटरी, विश्लेषण के दौरान लागू किए जाते हैं. इसलिए, ये किसी टारगेट नतीजे पर निर्भर नहीं हो सकते. लेबल, जनरेट नहीं की गई फ़ाइल पर ले जाना चाहिए. अगर पाथ कोई पाथ है, तो वह उस पाथ को वैसा ही दिखाएगा.

पैरामीटर

पैरामीटर ब्यौरा
path स्ट्रिंग; या लेबल; या पाथ; ज़रूरी है
string, Label या path, जिससे पाथ बनाया जा सकता है.

पढ़ा गया

string repository_ctx.read(path, *, watch='auto')

फ़ाइल सिस्टम में मौजूद किसी फ़ाइल का कॉन्टेंट पढ़ता है.

पैरामीटर

पैरामीटर ब्यौरा
path string; या Label; या path; ज़रूरी
फ़ाइल का पाथ, जिससे पढ़ना है.
watch यह डिफ़ॉल्ट पर सेट है: 'auto'
फ़ाइल देखना है या नहीं. यह 'yes', 'no' या 'auto' स्ट्रिंग हो सकती है. 'yes' का इस्तेमाल करने का मतलब है कि watch() का तरीका तुरंत लागू हो जाएगा. 'no' का इस्तेमाल करने पर, फ़ाइल को देखने की कोशिश नहीं की जाएगी. 'auto' का इस्तेमाल करने पर, फ़ाइल को सिर्फ़ तब देखा जाएगा, जब ऐसा करना कानूनी हो. ज़्यादा जानकारी के लिए, watch() दस्तावेज़ देखें.

report_progress

None repository_ctx.report_progress(status='')

इस रिपॉज़िटरी या मॉड्यूल एक्सटेंशन को फ़ेच करने की प्रोग्रेस स्टेटस को अपडेट करता है.

पैरामीटर

पैरामीटर ब्यौरा
status स्ट्रिंग; डिफ़ॉल्ट रूप से ''
string, फ़ेच की प्रोग्रेस की मौजूदा स्थिति के बारे में बताता है.

None repository_ctx.symlink(target, link_name)

फ़ाइल सिस्टम पर सिमलिंक बनाता है.

पैरामीटर

पैरामीटर ब्यौरा
target स्ट्रिंग; या लेबल; या पाथ; ज़रूरी है
वह पाथ जिस पर सिमलंक को ले जाना चाहिए.
स्ट्रिंग; या लेबल; या पाथ; ज़रूरी है
बनाने के लिए सिर्फ़ लिंक का पाथ.

टेंप्लेट

None repository_ctx.template(path, template, substitutions={}, executable=True, *, watch_template='auto')

template का इस्तेमाल करके नई फ़ाइल जनरेट करता है. template में substitutions की किसी कुंजी की हर बार आने पर, उसे उससे जुड़ी वैल्यू से बदल दिया जाएगा. यह नतीजा path में लिखा गया है. executable आर्ग्युमेंट (डिफ़ॉल्ट रूप से 'सही') को सेट करके, एक्सीक्यूटेबल बिट को चालू या बंद किया जा सकता है. हालांकि, यह आर्ग्युमेंट देना ज़रूरी नहीं है.

पैरामीटर

पैरामीटर ब्यौरा
path स्ट्रिंग; या लेबल; या पाथ; ज़रूरी है
रिपॉज़िटरी डायरेक्ट्री के हिसाब से, बनाई जाने वाली फ़ाइल का पाथ.
template स्ट्रिंग; या लेबल; या पाथ; ज़रूरी है
टेंप्लेट फ़ाइल का पाथ.
substitutions डिफ़ॉल्ट रूप से, {}
टेंप्लेट को बड़ा करते समय किए जाने वाले बदलाव.
executable डिफ़ॉल्ट तौर पर True
होता है बनाई गई फ़ाइल पर, 'एक्सीक्यूटेबल' फ़्लैग सेट करें. यह डिफ़ॉल्ट रूप से 'सही' पर सेट होता है.
watch_template डिफ़ॉल्ट रूप से 'auto'
टेंप्लेट फ़ाइल को देखना है या नहीं. यह स्ट्रिंग 'हां', 'नहीं' या 'ऑटो' स्ट्रिंग हो सकती है. 'हां' पास करना watch() विधि को तुरंत शुरू करने के समान है; 'नहीं' पास करने से फ़ाइल देखने का प्रयास नहीं होता; 'अपने आप' पास करना फ़ाइल को देखने का केवल तभी प्रयास करेगा जब ऐसा करना कानूनी हो (ज़्यादा जानकारी के लिए watch() दस्तावेज़ देखें.

देखें

None repository_ctx.watch(path)

Bazel को दिए गए पाथ में हुए बदलावों को देखने के लिए कहता है. भले ही, वह पाथ मौजूद हो या नहीं या वह फ़ाइल हो या डायरेक्ट्री. फ़ाइल या डायरेक्ट्री में कोई भी बदलाव करने पर, इस रिपॉज़िटरी या मॉड्यूल एक्सटेंशन को अमान्य कर दिया जाएगा. साथ ही, अगली बार इसे फिर से फ़ेच किया जाएगा या इसका फिर से आकलन किया जाएगा.

"बदलाव" में, फ़ाइल के कॉन्टेंट में किए गए बदलाव शामिल हैं. ऐसा तब होता है, जब पाथ कोई फ़ाइल हो. अगर पाथ पहले फ़ाइल था और अब डायरेक्ट्री है या इसके उलट, तो भी "बदलाव" में शामिल किया जाता है. साथ ही, अगर पाथ मौजूद है या नहीं, तो भी "बदलाव" में शामिल किया जाता है. ध्यान दें कि अगर पाथ कोई डायरेक्ट्री है, तो इसमें डायरेक्ट्री में मौजूद किसी भी फ़ाइल में किए गए बदलाव शामिल नहीं होते. इसके लिए, path.readdir() का इस्तेमाल करें.

ध्यान दें कि फ़ेच किए जा रहे मौजूदा रिपॉज़िटरी या मौजूदा मॉड्यूल एक्सटेंशन की वर्किंग डायरेक्ट्री में मौजूद पाथ देखने की कोशिश करने पर, गड़बड़ी का मैसेज दिखेगा. मौजूदा Baज़ल फ़ाइल फ़ोल्डर के बाहर, पाथ देखने की कोशिश करने वाले मॉड्यूल एक्सटेंशन की वजह से भी गड़बड़ी हो सकती है.

पैरामीटर

पैरामीटर ब्यौरा
path स्ट्रिंग; या लेबल; या पाथ; ज़रूरी है
वीडियो देखने के लिए, फ़ाइल का पाथ.

watch_tree

None repository_ctx.watch_tree(path)

Bazel को बताता है कि दिए गए पाथ में मौजूद किसी भी फ़ाइल या डायरेक्ट्री में होने वाले बदलावों को ट्रांज़िशन के तौर पर देखें. फ़ाइलों के कॉन्टेंट, फ़ाइलों या डायरेक्ट्री के मौजूद होने, फ़ाइल के नामों या डायरेक्ट्री के नामों में कोई भी बदलाव होने पर, डेटा स्टोर करने की इस जगह को फिर से फ़ेच किया जाएगा.

ध्यान दें कि फ़ेच किए जा रहे मौजूदा रिपॉज़िटरी में मौजूद पाथ देखने की कोशिश करने पर, गड़बड़ी का मैसेज दिखेगा.

पैरामीटर

पैरामीटर ब्यौरा
path स्ट्रिंग; या लेबल; या पाथ; ज़रूरी है
व्यू के लिए डायरेक्ट्री ट्री का पाथ.

कौनसा

path repository_ctx.which(program)

यह फ़ंक्शन, इससे जुड़े प्रोग्राम का path दिखाता है या अगर पाथ में ऐसा कोई प्रोग्राम नहीं है, तो None दिखाता है.

पैरामीटर

पैरामीटर ब्यौरा
program ज़रूरी है
पाथ में खोजने के लिए प्रोग्राम.
None को वापस किया जा सकता है.

workspace_root

path repository_ctx.workspace_root

bazel को शुरू करने के लिए इस्तेमाल किए गए रूट वर्कस्पेस का पाथ.