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

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",
)

शायद

maybe(repo_rule, name, kwargs)

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

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

पैरामीटर

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 कमांड, एक बार में एक कमांड 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 आवश्यक.

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