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

इन फ़ंक्शन को @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 ज़रूरी है.

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