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

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

ये फ़ंक्शन, @bazel_tools//tools/build_defs/repo:utils.bzl से लोड किए जा सकते हैं.

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

सेटअप

इन उपयोगिताओं का इस्तेमाल, डेटा स्टोर करने की जगह के अन्य नियमों के लिए किया जा सकता है. इन्हें इस तरह लोड किया जा सकता है.

load(
    "@bazel_tools//tools/build_defs/repo:utils.bzl",
    "workspace_and_buildfile",
    "patch",
    "update_attrs",
)

get_auth

get_auth(ctx, urls)

.netrc फ़ाइल से यूआरएल की सूची के लिए, सही पुष्टि करने वाला डायक्शन पाने के लिए यूटिलिटी फ़ंक्शन.

अगर उपलब्ध हो, तो वैकल्पिक netrc और auth_patterns एट्रिब्यूट का इस्तेमाल करें.

पैरामीटर

ctx ज़रूरी है.

इस यूटिलिटी फ़ंक्शन को कॉल करने वाले डेटा स्टोरेज के नियम का डेटा स्टोरेज कॉन्टेक्स्ट.

urls आवश्यक.

पढ़ने के लिए यूआरएल की सूची

रिटर्न

अधिकार के बारे में बताने वाला दस्तावेज़, जिसे रिपॉज़िटरी_ctx.download में भेजा जा सकता है

शायद

maybe(repo_rule, name, kwargs)

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

यह, https://bazel.build/rules/deploying#dependencies में दस्तावेज़ किए गए सुरक्षित repositories.bzl मैक्रो को लागू करने के लिए है.

पैरामीटर

repo_rule ज़रूरी है.

रिपॉज़िटरी नियम फ़ंक्शन.

name ज़रूरी है.

बनाए जाने वाले रिपॉज़िटरी का नाम.

kwargs ज़रूरी नहीं है.

repo_rule फ़ंक्शन में पास किए गए बाकी आर्ग्युमेंट.

रिटर्न

जब ज़रूरत पड़ती है, तब साइड-इफ़ेक्ट के तौर पर रिपॉज़िटरी तय करता है.

parse_netrc

parse_netrc(contents, filename)

उपयोगिता फ़ंक्शन, जो कम से कम एक बुनियादी .netrc फ़ाइल को पार्स करता है.

पैरामीटर

contents ज़रूरी है.

पार्सर के लिए इनपुट.

filename ज़रूरी नहीं. डिफ़ॉल्ट None है

फ़ाइल नाम का इस्तेमाल किया जा सकता है.

रिटर्न

मशीन के नामों को, उनके बारे में दी गई जानकारी वाले डिक्शनरी में मैप करने वाला डिक्शनरी

पैच

patch(ctx, patches, patch_cmds, patch_cmds_win, patch_tool, patch_args, auth)

पहले से निकाली गई रिपॉज़िटरी में पैच लागू करना.

इस नियम का इस्तेमाल, डेटा स्टोर करने के नियम को लागू करने के लिए किया जाना चाहिए. अगर पैरामीटर patches, patch_tool, patch_args, patch_cmds, और patch_cmds_win तय नहीं किए जाते हैं, तो उन्हें ctx.attr से लिया जाता है.

पैरामीटर

ctx ज़रूरी है.

इस यूटिलिटी फ़ंक्शन को कॉल करने वाले डेटा स्टोरेज के नियम का डेटा स्टोरेज कॉन्टेक्स्ट.

patches ज़रूरी नहीं. डिफ़ॉल्ट None है

लागू करने के लिए पैच फ़ाइलें. स्ट्रिंग, लेबल या पाथ की सूची.

patch_cmds ज़रूरी नहीं. डिफ़ॉल्ट None है

पैच करने के लिए चलाए जाने वाले Bash कमांड, जिन्हें एक बार में एक करके bash -c में पास किया जाता है. स्ट्रिंग की सूची

patch_cmds_win ज़रूरी नहीं. डिफ़ॉल्ट None है

पैचिंग के लिए चलाने के लिए Powershell आदेश, पावरशेल /c को एक बार में एक पास किया जाता है. स्ट्रिंग की सूची. अगर इस पैरामीटर की बूलियन वैल्यू गलत है, तो patch_cmds का इस्तेमाल किया जाएगा और इस पैरामीटर को अनदेखा कर दिया जाएगा.

patch_tool ज़रूरी नहीं. डिफ़ॉल्ट None है

पैच लागू करने के लिए, पैच टूल का पाथ. स्ट्रिंग.

patch_args ज़रूरी नहीं. डिफ़ॉल्ट None है

पैच टूल को पास करने के लिए आर्ग्युमेंट. स्ट्रिंग की सूची.

auth ज़रूरी नहीं. यह डिफ़ॉल्ट तौर पर None पर सेट होता है

कुछ यूआरएल के लिए पुष्टि करने की जानकारी देने वाला वैकल्पिक डिक्शनरी.

read_netrc

read_netrc(ctx, filename)

कम से कम बुनियादी .netrc फ़ाइल को पार्स करने के लिए, यूटिलिटी फ़ंक्शन.

पैरामीटर

ctx ज़रूरी है.

इस यूटिलिटी फ़ंक्शन को कॉल करने वाले डेटा स्टोरेज के नियम का डेटा स्टोरेज कॉन्टेक्स्ट.

filename आवश्यक.

पढ़ने के लिए .netrc फ़ाइल का नाम

रिटर्न

मशीन के नामों को, उनके बारे में दी गई जानकारी वाले डिक्शनरी में मैप करने वाला डिक्शनरी

read_user_netrc

read_user_netrc(ctx)

उपयोगकर्ता की डिफ़ॉल्ट netrc फ़ाइल पढ़ें.

पैरामीटर

ctx ज़रूरी है.

इस यूटिलिटी फ़ंक्शन को कॉल करने वाले रिपॉज़िटरी नियम का रिपॉज़िटरी कॉन्टेक्स्ट.

रिटर्न

मशीन के नामों को उनके बारे में दी गई जानकारी वाले डिक्शनरी से मैप करने वाला डिक्शनरी.

update_attrs

update_attrs(orig, keys, override)

किसी खास रिपॉज़िटरी नियम के आह्वान में, तय किए गए एट्रिब्यूट में बदलाव करने और उन्हें जोड़ने के लिए यूटिलिटी फ़ंक्शन.

इसका इस्तेमाल इसलिए किया जाता है, ताकि किसी नियम को दोबारा जनरेट किया जा सके.

पैरामीटर

orig ज़रूरी है.

किसी खास नियम के लागू होने पर, साफ़ तौर पर या किसी और तरीके से सेट किए गए एट्रिब्यूट का डायक्शन

keys ज़रूरी है.

इस नियम के लिए तय किए गए एट्रिब्यूट का पूरा सेट

override आवश्यक.

ऑरिग में जोड़ने या बदलने के लिए एट्रिब्यूट का उच्चारण

रिटर्न

एट्रिब्यूट का डिक्शनरी, जिसमें ओवरराइड की गई वैल्यू की कुंजियां शामिल हैं

use_netrc

use_netrc(netrc, urls, patterns)

पार्स की गई netrc फ़ाइल और यूआरएल की सूची से, कोई ऑथेंटिकेशन प्रोसेस करें.

पैरामीटर

netrc आवश्यक.

netrc फ़ाइल, पहले से ही किसी डायक्शनरी में पार्स की गई हो. उदाहरण के लिए, read_netrc से मिली फ़ाइल

urls आवश्यक.

सेट अप कर सकते हैं.

patterns ज़रूरी है.

ऑथराइज़ेशन पैटर्न के लिए, यूआरएल का वैकल्पिक उच्चारण

रिटर्न

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

workspace_and_buildfile

workspace_and_buildfile(ctx)

WORKSPACE और अनुरोध किए जाने पर, BUILD फ़ाइल लिखने के लिए यूटिलिटी फ़ंक्शन.

इस नियम का इस्तेमाल, रिपॉज़िटरी नियम के लागू करने वाले फ़ंक्शन में किया जाता है. यह मानता है कि ctx.attr में पैरामीटर name, build_file, build_file_content, workspace_file, और workspace_file_content मौजूद हैं. हो सकता है कि आखिरी चार पैरामीटर की वैल्यू None हो.

पैरामीटर

ctx ज़रूरी है.

इस यूटिलिटी फ़ंक्शन को कॉल करने वाले डेटा स्टोरेज के नियम का डेटा स्टोरेज कॉन्टेक्स्ट.