@bazel_tools//tools/build_defs/repo:utils.bzl
से ये फ़ंक्शन लोड किए जा सकते हैं.
फ़ेच हो जाने के बाद, बाहरी डेटा स्टोर करने की जगहों में बदलाव करने का तरीका.
सेटअप
ये सुविधाएं, डेटा स्टोर करने की जगह के दूसरे नियमों के लिए इस्तेमाल की जाती हैं. इन्हें इस तरह लोड किया जा सकता है.
load(
"@bazel_tools//tools/build_defs/repo:utils.bzl",
"workspace_and_buildfile",
"patch",
"update_attrs",
)
शायद
maybe(repo_rule, name, kwargs)
यूटिलिटी फ़ंक्शन, इसे सिर्फ़ तब जोड़ने के लिए इस्तेमाल करता है, जब रिपॉज़िटरी पहले से मौजूद न हो.
इसका इस्तेमाल, सुरक्षित repositories.bzl मैक्रो को लागू करने के लिए किया गया है. इस मैक्रो का दस्तावेज़, https://bazel.build/rules/deploying#निर्भरता में बताया गया है.
पैरामीटर
repo_rule |
ज़रूरी है.
डेटा स्टोर करने की जगह के नियम का फ़ंक्शन. |
name |
ज़रूरी है.
डेटा स्टोर करने की जगह का नाम. |
kwargs |
ज़रूरी नहीं है.
बचे हुए तर्क, जो repo_role फ़ंक्शन को पास किए जाते हैं. |
रिटर्न
कुछ नहीं, खराब असर के तौर पर ज़रूरत पड़ने पर रिपॉज़िटरी के बारे में बताता है.
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 डिफ़ॉल्ट होता है
पैचिंग के लिए चलाने के लिए बैश कमांड, एक-एक करके एक को पास करने के लिए -c दबाएं. स्ट्रिंग की सूची |
patch_cmds_win |
ज़रूरी नहीं है.
None डिफ़ॉल्ट होता है
पैचिंग के लिए चलाने के लिए Powershel कमांड, एक बार में एक को Powershel /c भेजा. स्ट्रिंग की सूची. अगर इस पैरामीटर की बूलियन वैल्यू गलत है, तोचच_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 फ़ाइल, लॉगिन और पासवर्ड देने वाली सुविधा के लिए संबंधित लॉगिन, पासवर्ड, और अनुमति के वैकल्पिक पैटर्न वाली जानकारी देती है. साथ ही, "टाइप" को "बेसिक" या "पैटर्न" से मैप करता है.
workspace_and_buildfile
workspace_and_buildfile(ctx)
WORKSPACE लिखने के लिए उपयोगिता फ़ंक्शन और, अनुरोध किए जाने पर एक BUILD फ़ाइल.
यह नियम डेटा स्टोर करने की जगह के नियम को लागू करने के फ़ंक्शन में इस्तेमाल किया जाना चाहिए.
इस सिस्टम में name
, build_file
, build_file_content
,
workspace_file
, और workspace_file_content
पैरामीटर को ctx.attr
में
मौजूद होता है. बाद के चार पैरामीटर, हो सकता है कि उनकी वैल्यू कोई भी न हो.
पैरामीटर
ctx |
ज़रूरी है.
रिपॉज़िटरी नियम का रिपॉज़िटरी का कॉन्टेक्स्ट, इस यूटिलिटी फ़ंक्शन को कॉल करता है. |