इन फ़ंक्शन को @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)
यूटिलिटी फ़ंक्शन सिर्फ़ तब जोड़ा जाता है, जब डेटा स्टोर करने की जगह पहले से मौजूद न हो.
इसे लागू करने के लिए, सुरक्षित repositories.bzl मैक्रो को लागू करना है. यह मैक्रो, https://bazel.build/rules/deploying#dependencies में दिया गया है.
पैरामीटर
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 होता है
पैचिंग के लिए चलाए जाने वाले PowerSशेल कमांड, एक बार में एक को PowerPoint /c पर पास कर दिए जाते हैं. स्ट्रिंग की सूची. अगर इस पैरामीटर की बूलियन वैल्यू गलत है, तो Pat_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 |
ज़रूरी है.
इस यूटिलिटी फ़ंक्शन को कॉल करने वाले रिपॉज़िटरी नियम का रिपॉज़िटरी का संदर्भ. |