Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Bash प्रोग्रामिंग

बैश के साथ ब्रांच-विशिष्ट Netlify कॉन्फिगरेशन को स्वचालित करें - चरण-दर-चरण मार्गदर्शिका

बैश के साथ ब्रांच-विशिष्ट Netlify कॉन्फिगरेशन को स्वचालित करें - चरण-दर-चरण मार्गदर्शिका

जब आप कई वातावरणों वाली परियोजना पर काम कर रहे होते हैं - जैसे आपके बैकएंड API और फ्रंटएंड डिप्लॉयमेंट के लिए स्टेजिंग और प्रोडक्शन - तो आप यह सुनिश्चित करना चाहेंगे कि आपके रिपॉजिटरी में प्रत्येक ब्रांच के लिए सही कॉन्फिगरेशन और कमांड हों।

यह उन स्थितियों में कठिन हो सकता है जहां कई डेवलपर सक्रिय रूप से कोडबेस पर काम कर रहे हों, अलग-अलग ब्रांच में बदलाव कर रहे हों, या कई ब्रांच-विशिष्ट कॉन्फिगरेशन प्रबंधित कर रहे हों।

हर पुल रिक्वेस्ट या ब्रांच में पुश किए गए बदलाव के साथ, आपको मर्ज करने या न करने का निर्णय लेने से पहले बदली, जोड़ी या हटाई गई कोड की हर लाइन की समीक्षा करनी होगी। कोडबेस में कॉन्फिगरेशन फाइलें इससे मुक्त नहीं हैं, जिससे वे त्रुटियों की संभावना रखती हैं, क्योंकि एक साधारण बदलाव आपके पूरे Continuous Integration सेटअप को प्रभावित कर सकता है।

जब स्टेजिंग या प्रोडक्शन ब्रांच में बदलाव किए जाते हैं और बिल्ड ट्रिगर होता है, तो आप यह सुनिश्चित करना चाहेंगे कि ब्रांच से जुड़े सही संसाधन बने रहें। कुछ मामलों में, आपको प्रत्येक संबंधित क्लाइंट के लिए अलग-अलग रीडायरेक्ट नियम, कस्टम बिल्ड कमांड, या प्रत्येक ब्रांच के लिए अन्य सेटिंग्स परिभाषित करने की आवश्यकता हो सकती है।

इस लेख में, मैं एक साधारण बैश स्क्रिप्ट का उपयोग करके रीडायरेक्ट सहित ब्रांच-विशिष्ट कॉन्फिगरेशन को कई ब्रांच के लिए स्वचालित रूप से प्रबंधित करने का तरीका बताऊंगा। मैं यह भी दिखाऊंगा कि Netlify पर अपने स्टेजिंग और प्रोडक्शन ब्रांच के लिए संदर्भ-विशिष्ट नियमों को सुरक्षित रूप से कैसे मर्ज किया जाए।

हम क्या कवर करेंगे:

  • प्रोजेक्ट संरचना और परिदृश्य

  • रीडायरेक्ट/रीराइट क्या हैं?

  • Netlify रीडायरेक्ट को कैसे प्रोसेस करता है

    • _redirects फ़ाइल सिंटैक्स का उपयोग करना

    • netlify.toml कॉन्फिगरेशन फ़ाइल सिंटैक्स का उपयोग करना

  • समस्या: विभिन्न ब्रांच के लिए एकाधिक netlify.toml फ़ाइलों का प्रबंधन

  • अपनी कॉन्फिगरेशन फ़ाइल(ओं) को स्वचालित रूप से बनाने के लिए स्क्रिप्ट कैसे लिखें

    • नमूना Netlify.toml फ़ाइल

    • चरण 1: स्क्रिप्ट फ़ोल्डर बनाएं और स्क्रिप्ट फ़ाइल जोड़ें

    • चरण 2: स्क्रिप्ट कमांड को शामिल करने के लिए package.json संशोधित करें

  • अपने क्लाइंट को Netlify पर कैसे डिप्लॉय करें

    • अपनी परियोजना का Netlify पर पहला डिप्लॉयमेंट

    • बाद के डिप्लॉयमेंट / ब्रांच डिप्लॉयमेंट कैसे सेट करें

      • चरण 1: प्रत्येक ब्रांच संदर्भ के लिए Netlify में एनवायरनमेंट वेरिएबल सेट करें - प्रोडक्शन, स्टेजिंग, आदि

      • चरण 2: एक नया डिप्लॉयमेंट ट्रिगर करें

  • अपने डिप्लॉयमेंट का निरीक्षण करें

  • निष्कर्ष

प्रोजेक्ट संरचना और परिदृश्य

एक ऐसी स्थिति पर विचार करें जहां किसी प्रोजेक्ट के लिए दो अलग-अलग सर्वर तैनात हैं: एक स्टेजिंग वातावरण (Render पर तैनात) के अनुरोधों को पूरा करने के लिए, और दूसरा प्रोडक्शन वातावरण (Google Cloud Run पर तैनात) के लिए।

आपके पास Netlify पर दो अलग-अलग क्लाइंट डिप्लॉयमेंट भी हैं, प्रत्येक अपने संबंधित API_BASE_URL के साथ, जो उनके संबंधित सर्वरों द्वारा सेवा प्रदान करते हैं जैसा कि नीचे दिखाया गया है:

बैश के साथ ब्रांच-विशिष्ट Netlify कॉन्फिगरेशन को स्वचालित करें - चरण-दर-चरण मार्गदर्शिका

नीचे दी गई छवि एक sample-project रिपॉजिटरी है, जिसमें api और client फ़ोल्डर/डायरेक्टरी हैं। यह ऊपर उल्लिखित प्रत्येक ब्रांच में संरचना का अवलोकन है। प्रत्येक डायरेक्टरी में अपना package.json फ़ाइल होता है, जिसे एक स्वतंत्र घटक के रूप में माना जाता है, और इसे दो अलग-अलग सेवाओं पर तैनात किया जा सकता है।

बैश के साथ ब्रांच-विशिष्ट Netlify कॉन्फिगरेशन को स्वचालित करें - चरण-दर-चरण मार्गदर्शिका

आपके प्रत्येक क्लाइंट के फ्रंटएंड डिप्लॉयमेंट में, /api/v1/ से शुरू होने वाले एंडपॉइंट्स पर किए गए सभी अनुरोध सर्वर पर रूट किए जाते हैं। अन्य रूट फ्रंटएंड के भीतर रहते हैं ताकि आपको क्लाइंट के भीतर पेजों पर निर्देशित किया जा सके। इसलिए आपको अपने क्लाइंट को यह मार्गदर्शन करने के लिए सही नियम लिखने की आवश्यकता है कि इन अनुरोधों को कैसे प्रोसेस किया जाए। इन्हें रीडायरेक्ट नियम या रीराइट कहा जाता है।

रीडायरेक्ट/रीराइट क्या हैं?

रीडायरेक्ट, या रीराइट, ऐसे नियम हैं जिन्हें आप बना सकते हैं ताकि कुछ URL स्वचालित रूप से इंटरनेट पर कहीं भी एक नए स्थान पर चले जाएं (स्रोत: WPengine)। इन्हें आमतौर पर URL फ़ॉरवर्डिंग के रूप में भी जाना जाता है और आप इनका उपयोग कहीं भी कर सकते हैं - पूरी वेबसाइटों, वेबसाइट के अनुभागों, या संपूर्ण वेब एप्लिकेशन में।

वेब एप्लिकेशन में, रीडायरेक्ट का उपयोग अक्सर यह निर्धारित करने के लिए किया जाता है कि अनुरोधों को कैसे प्रोसेस किया जाए। Netlify और Vercel जैसे वेब होस्टिंग प्लेटफ़ॉर्म भी इनका उपयोग करते हैं, जिससे डेवलपर्स को यह विकल्प मिलता है कि उनके वेब एप्लिकेशन अनुरोधों को कैसे प्रोसेस करें।

Netlify रीडायरेक्ट को कैसे प्रोसेस करता है

Netlify के पास रीडायरेक्ट नियम निर्दिष्ट करने के दो संभावित तरीके हैं। आप इसे _redirects फ़ाइल सिंटैक्स या netlify.toml कॉन्फिगरेशन फ़ाइल सिंटैक्स का उपयोग करके कर सकते हैं। वे एक ही लक्ष्य प्राप्त करते हैं, लेकिन netlify.toml सिंटैक्स आपको अधिक विकल्प और क्षमताएं देता है।

_redirects फ़ाइल सिंटैक्स का उपयोग करना

यदि आप रीडायरेक्ट सिंटैक्स का उपयोग करना चुनते हैं, तो आपको बस अपने क्लाइंट ऐप के पब्लिक फ़ोल्डर में एक _redirects फ़ाइल बनानी होगी, और उसके भीतर रीडायरेक्ट नियम निर्दिष्ट करने होंगे। यह उतना ही आसान है। नीचे फ़ाइल के भीतर एक रीडायरेक्ट नियम का उदाहरण दिया गया है:

बैश के साथ ब्रांच-विशिष्ट Netlify कॉन्फिगरेशन को स्वचालित करें - चरण-दर-चरण मार्गदर्शिका

उपरोक्त नियम की व्याख्या इस प्रकार की जा सकती है:

  1. मेरे सभी अनुरोध जो /api/v1 से मेल खाते हैं, उन्हें निर्दिष्ट API URL पर भेजें, और 200 सफलता स्टेटस कोड वापस करें। /api/v1/ के बाद एस्टेरिस्क (*) जैसा कि /api/v1/* में देखा गया है, मूल URL के किसी भी अन्य एक्सटेंशन को बताए गए API URL में जोड़ने का निर्देश देता है। उदाहरण के लिए, यदि आपके फ्रंटएंड में /api/v1/users रूट है, तो वह अनुरोध https://your-api-base-url.com/api/v1/users पर रीडायरेक्ट हो जाएगा। API URL में देखा गया :splat केवल एक प्लेसहोल्डर है।

  2. अन्य सभी डिफ़ॉल्ट रूट को index.html फ़ोल्डर के माध्यम से सेवा दें। यह सुनिश्चित करने के लिए आवश्यक है कि जब आप अन्य पेजों पर नेविगेट करते हैं और "बैक" बटन का उपयोग करके पिछले पेज पर जाने का प्रयास करते हैं तो आपको टूटे हुए पेज का सामना न करना पड़े।

netlify.toml कॉन्फिगरेशन फ़ाइल सिंटैक्स का उपयोग करना

netlify.toml कॉन्फिगरेशन फ़ाइल आपको रीडायरेक्ट नियम निर्दिष्ट करते समय बहुत अधिक लचीलापन देती है, जिसमें मूल अनुरोध रूट का मिलान, आवश्यक गंतव्य, पसंदीदा स्टेटस कोड प्रतिक्रिया, हेडर नियम, हस्ताक्षर, देश प्रतिबंध, भूमिकाएं और बहुत कुछ शामिल हैं, लेकिन इन्हीं तक सीमित नहीं।

यह Netlify के दस्तावेज़ीकरण से लिया गया एक नमूना netlify.toml फ़ाइल है:

बैश के साथ ब्रांच-विशिष्ट Netlify कॉन्फिगरेशन को स्वचालित करें - चरण-दर-चरण मार्गदर्शिका

त्वरित नोट: हमारे API पर कुछ अनुरोधों को रीडायरेक्ट करने के लिए रीडायरेक्ट फ़ाइल का उपयोग करना पूरी तरह से ठीक है। लेकिन यदि API_BASE_URL निजी माना जाता है, तो इसे प्लेन टेक्स्ट में रीडायरेक्ट्स फ़ाइल में जोड़ना सुरक्षा जोखिम माना जा सकता है। ऐसा इसलिए है क्योंकि पब्लिक फ़ोल्डर में कोई भी फ़ाइल वही है जो वह लगता है - पब्लिक - और कोई भी इसे एक्सेस कर सकता है।

यदि आप अपने ऐप में सीधे स्थान सार्वजनिक URL चाहते हैं, तो बेझिझक _redirects फ़ाइल सिंटैक्स का उपयोग करें। लेकिन यदि आप निजी URL पसंद करते हैं, तो एनवायरनमेंट वेरिएबल के संयोजन में netlify.toml कॉन्फिगरेशन फ़ाइल का उपयोग करना आमतौर पर बेहतर विचार है।

समस्या: विभिन्न ब्रांच के लिए एकाधिक netlify.toml फ़ाइलों का प्रबंधन

जब आप अपने बिल्ड कमांड और एनवायरनमेंट-विशिष्ट सेटिंग्स को परिभाषित करने के लिए netlify.toml फ़ाइल का उपयोग करते हैं, और आप बदलाव करते हैं जो आपके रिपॉजिटरी में पुश किए जाते हैं और पुल रिक्वेस्ट खोलते हैं, तो आपको प्रत्येक ब्रांच में प्रत्येक netlify.toml को मैन्युअल रूप से अनदेखा या संपादित करना होगा। यह अंततः बहुत तनावपूर्ण और त्रुटियों की संभावना वाला बन जाता है।

इसके अलावा, हम सुरक्षा कारणों से अपने API URL को अपने प्रोजेक्ट कोडबेस के भीतर या तो _redirects या netlify.toml फ़ाइल में हार्डकोड करने से बचना चाहते हैं। हम प्रोडक्शन और स्टेजिंग संदर्भों के लिए Netlify UI में प्रदान किए गए एनवायरनमेंट वेरिएबल का उपयोग करेंगे।

उपरोक्त समस्याओं से बचने के लिए, हम अपने कोडबेस में एक छोटी स्क्रिप्ट का उपयोग करके प्रत्येक ब्रांच के लिए सही netlify.toml फ़ाइलों को डायनामिक रूप से जनरेट करेंगे। यह दृष्टिकोण टकराव को समाप्त करता है और ब्रांच के बीच स्विच करते समय या पुल रिक्वेस्ट को संभालते समय मैन्युअल हस्तक्षेप की आवश्यकता को हटा देता है।

अपनी कॉन्फिगरेशन फ़ाइल(ओं) को स्वचालित रूप से बनाने के लिए स्क्रिप्ट कैसे लिखें

नमूना Netlify.toml फ़ाइल

नीचे प्रत्येक बिल्ड के लिए हम जिस नमूना netlify.toml फ़ाइल को प्राप्त करने का प्रयास कर रहे हैं उसका स्क्रीनशॉट है। आप देख सकते हैं कि हमारे कोडबेस में api/v1/ से मेल खाने वाले हमारे सभी अनुरोध हमारे API पर रूट किए जाएंगे।

आपके API एंडपॉइंट अनुरोध अलग ढंग से संरचित हो सकते हैं, उदाहरण के लिए /api/your-endpoint - बस स्क्रिप्ट को तदनुसार समायोजित करना सुनिश्चित करें। इस नमूना प्रोजेक्ट में, हम अपनी संरचना के रूप में api/v1/your-endpoint का उपयोग करते हैं।

बैश के साथ ब्रांच-विशिष्ट Netlify कॉन्फिगरेशन को स्वचालित करें - चरण-दर-चरण मार्गदर्शिका

चरण 1: स्क्रिप्ट फ़ोल्डर बनाएं और स्क्रिप्ट फ़ाइल जोड़ें

client डायरेक्टरी में, एक scripts/ डायरेक्टरी और एक configure-netlify.sh स्क्रिप्ट फ़ाइल बनाएं। आपको अपने रिपॉजिटरी में प्रत्येक ब्रांच के लिए यह करना आवश्यक है। सामग्री वही रहती है।

configure-netlify.sh स्क्रिप्ट फ़ाइल खोलें और निम्नलिखित सामग्री इसमें पेस्ट करें:

#!/bin/bash # सुनिश्चित करें कि API_BASE_URL सेट है if [ -z "$API_BASE_URL" ]; then echo "Error: API_BASE_URL environment variable is not set." exit 1 # स्क्रिप्ट से बाहर निकलें ताकि डिप्लॉयमेंट रुक जाए fi echo "Using API endpoint: $API_BASE_URL" # वांछित Netlify कॉन्फिगरेशन परिभाषित करें NETLIFY_CONFIG=" [build] command = \"npm install && npm run build\" base = \"client\" publish = \"dist\" [[redirects]] from = \"/api/v1/*\" to = \"$API_BASE_URL/:splat\" status = 200 force = true [[redirects]] from = \"/*\" to = \"/index.html\" status = 200 " # netlify.toml फ़ाइल बनाएं या अपडेट करें if [ ! -f "netlify.toml" ]; then echo "Creating netlify.toml file..." else echo "Updating existing netlify.toml file..." fi echo "$NETLIFY_CONFIG" > netlify.toml # सफल कॉन्फिगरेशन की पुष्टि करें echo "netlify.toml file has been configured successfully!" 

स्क्रिप्ट निम्नलिखित कार्य करती है:

  1. यह एनवायरनमेंट वेरिएबल की जांच करती है ताकि यह सुनिश्चित हो सके कि API_BASE_URL सेट है। यदि यह सेट नहीं है, तो यह बिल्ड से बाहर निकल जाती है और इसे विफल कर देती है। हमने यह सुनिश्चित करने के लिए किया ताकि आप गलती से एक सफल डिप्लॉयमेंट न बना लें लेकिन प्रोडक्शन में अमान्य URL के साथ।

  2. यह फिर ऊपर दिखाए गए नमूने के अनुसार netlify.toml फ़ाइल की सामग्री बनाता है। यदि आपके API एंडपॉइंट api/v1/your-endpoint से अलग संरचना का उपयोग करते हैं, तो आप स्क्रिप्ट को अपनी वांछित संरचना में फिट करने के लिए समायोजित कर सकते हैं।

  3. यह जांचता है कि क्या पहले से कोई netlify.toml फ़ाइल मौजूद है। यदि यह मौजूद नहीं है, तो यह एक बनाता है और उसमें सामग्री लिखता है। यदि यह मौजूद है, तो एनवायरनमेंट वेरिएबल में सेट API_BASE_URL का उपयोग करके बिल्ड के दौरान इसे सही सामग्री के साथ अपडेट करता है।

चरण 2: स्क्रिप्ट कमांड को शामिल करने के लिए package.json संशोधित करें

इस स्क्रिप्ट को अपनी बिल्ड प्रक्रिया के साथ एकीकृत करने के लिए, हम package.json फ़ाइल में एक स्क्रिप्ट कमांड जोड़ेंगे जो वास्तविक बिल्ड चलाने से पहले इस स्क्रिप्ट को कॉल करेगा।

अपने package.json फ़ाइल में स्क्रिप्ट में configure-netlify कमांड को इस प्रकार जोड़ें: "configure-netlify": "bash scripts/configure-netlify.sh"।

अपने बिल्ड कमांड को अपडेट करें ताकि वास्तविक बिल्ड चलाने से पहले स्क्रिप्ट चले: "build": "npm run configure-netlify && vite build"।

बैश के साथ ब्रांच-विशिष्ट Netlify कॉन्फिगरेशन को स्वचालित करें - चरण-दर-चरण मार्गदर्शिका

इन परिवर्तनों को सहेजना न भूलें और उन्हें अपने रिमोट रिपॉजिटरी में पुश करें।

अपने क्लाइंट को Netlify पर कैसे डिप्लॉय करें

जब हम अपने क्लाइंट को Netlify पर डिप्लॉय करते हैं, तो हमें तीन विकल्प दिए जाते हैं:

  1. एक मौजूदा प्रोजेक्ट आयात करना (यानी, एक प्रोजेक्ट जो GitHub और GitLab जैसी गिट रिपॉजिटरी सेवा पर मौजूद है),

  2. टेम्पलेट से आयात करना, या

  3. Netlify ड्रॉप (ड्रैग एंड ड्रॉप) इंटरफ़ेस का उपयोग करके मैन्युअल रूप से एक स्टैटिक साइट डिप्लॉय करना।

हमारे रिपॉजिटरी में कॉन्फिगरेशन के लिए हमारी बिल्ड प्रक्रिया के दौरान अपेक्षा के अनुरूप काम करने के लिए, आपको मौजूदा प्रोजेक्ट जैसे GitHub से आयात करने वाले विकल्प का उपयोग करना होगा। ड्रैग-एंड-ड्रॉप इंटरफ़ेस का उपयोग करने से काम नहीं चलेगा। यदि आपको इसका उपयोग करना ही है, तो अपने रीडायरेक्ट को परिभाषित करने के लिए _redirects फ़ाइल सिंटैक्स विकल्प चुनें।

Netlify पर अपनी परियोजना का पहला डिप्लॉयमेंट

जब आप पहली बार अपनी परियोजना डिप्लॉय करते हैं, तो आपको शुरू में केवल एक ब्रांच डिप्लॉय करने का विकल्प दिया जाता है। आप बाद के डिप्लॉयमेंट में अन्य विकल्प, जैसे अन्य ब्रांच, जोड़ और निर्दिष्ट कर सकते हैं।

अपनी परियोजना को डिप्लॉय करने के लिए, निम्नलिखित चरण लें:

  1. Netlify पर साइन इन करें > netlify.com

  2. "Add new site" > "Import an existing project" > "Deploy with GitHub" पर क्लिक करें

  3. "Configure Netlify on GitHub" > अपने रिपॉजिटरी को खोजें > इसे चुनें

  4. अपनी परियोजना के लिए एक अद्वितीय साइट नाम दर्ज करें

  5. डिप्लॉय सेटिंग्स कॉन्फिगर करें। यहां आपको डिप्लॉय करने के लिए पसंदीदा ब्रांच चुनना आवश्यक है। प्रारंभिक डिप्लॉयमेंट के लिए, हम main ब्रांच को डिप्लॉय करेंगे जिसका उपयोग हम प्रोडक्शन ब्रांच के रूप में करते हैं।

    • ब्रांच: main/master

    • बिल्ड कमांड: npm run build

    • पब्लिश डायरेक्टरी: dist (वह डायरेक्टरी चुनें जहां आपकी स्टैटिक फ़ाइल रहती है। इस नमूना प्रोजेक्ट में, इसे dist डायरेक्टरी में एक्सपोर्ट किया जाता है। कुछ टूल build में एक्सपोर्ट करते हैं)

  6. अपनी परियोजना के लिए एनवायरनमेंट वेरिएबल दर्ज करें। अपने सर्वर से API_BASE_URL दर्ज करना न भूलें। यह बैश स्क्रिप्ट के अनुसार एक आवश्यक आवश्यकता है।

  7. "Deploy site" पर क्लिक करें

बैश के साथ ब्रांच-विशिष्ट Netlify कॉन्फिगरेशन को स्वचालित करें - चरण-दर-चरण मार्गदर्शिका

आपकी परियोजना सही ढंग से डिप्लॉय होनी चाहिए, और आप सफल डिप्लॉयमेंट पेज के नीचे डिप्लॉयमेंट विवरण का निरीक्षण करके स्क्रिप्ट द्वारा जनरेट netlify.toml कॉन्फिगरेशन देख पाएंगे।

आप इस फ़ाइल को अपनी स्थानीय मशीन पर डाउनलोड करके जनरेटेड कॉन्फिगरेशन देख सकते हैं। यह ऊपर दिखाए गए नमूना netlify.toml फ़ाइल से मेल खाना चाहिए। आप अपनी जनरेटेड साइट लिंक का उपयोग करके यह भी टेस्ट कर सकते हैं कि यह काम करता है।

बैश के साथ ब्रांच-विशिष्ट Netlify कॉन्फिगरेशन को स्वचालित करें - चरण-दर-चरण मार्गदर्शिका

बाद के डिप्लॉयमेंट / ब्रांच डिप्लॉयमेंट कैसे सेट करें

चरण 1: प्रत्येक ब्रांच संदर्भ के लिए Netlify में एनवायरनमेंट वेरिएबल सेट करें - प्रोडक्शन, स्टेजिंग, आदि

जब आपकी परियोजना सफलतापूर्वक डिप्लॉय हो गई है, तो आप अपने स्टेजिंग ब्रांच के लिए डिप्लॉयमेंट सेट कर सकते हैं। कॉन्फिगरेशन संपादित करने के लिए, आपको:

  1. अपनी साइटों की सूची पर जाएं

  2. अपनी सफलतापूर्वक डिप्लॉय की गई साइट चुनें

  3. बाएं मेनू पर "साइट कॉन्फिगरेशन" पर क्लिक करें

  4. "एनवायरनमेंट वेरिएबल" चुनें > "एक वेरिएबल जोड़ें" बटन पर क्लिक करें।

बैश के साथ ब्रांच-विशिष्ट Netlify कॉन्फिगरेशन को स्वचालित करें - चरण-दर-चरण मार्गदर्शिका

आपको वेरिएबल को व्यक्तिगत रूप से जोड़ने या संपूर्ण .env फ़ाइल आयात करने का विकल्प दिया जाएगा। आप कोई भी विकल्प चुन सकते हैं। नीचे दी गई छवि में, मैंने ".env फ़ाइल से आयात करें" चुना है।

बैश के साथ ब्रांच-विशिष्ट Netlify कॉन्फिगरेशन को स्वचालित करें - चरण-दर-चरण मार्गदर्शिका

चूंकि हमारा प्रोडक्शन साइट, main ब्रांच से डिप्लॉय किया गया (प्रोडक्शन एनवायरनमेंट वेरिएबल के साथ), पहले ही डिप्लॉय हो चुका है, आपको:

  1. प्रोडक्शन ब्रांच को अनचेक करें (प्रारंभिक रूप से डिप्लॉय की गई main ब्रांच को बदलने से रोकने के लिए। अलग-अलग ब्रांच के लिए अपने एनवायरनमेंट वेरिएबल को मिलाने से सावधान रहें)

  2. "ब्रांच डिप्लॉय" चुनें

  3. अपनी .env फ़ाइल की सामग्री को इनपुट सेक्शन में कॉपी और पेस्ट करें

  4. अपने स्टेजिंग वातावरण के लिए API_BASE_URL एनवायरनमेंट वेरिएबल जोड़ना न भूलें

ध्यान दें कि ब्रांच डिप्लॉय चुनने में, यहां आयात किए गए एनवायरनमेंट वेरिएबल प्रोडक्शन ब्रांच के अलावा सभी ब्रांच डिप्लॉय को प्रभावित करेंगे। आप कस्टम ब्रांच चुनकर अपने संदर्भों को आगे कस्टमाइज़ कर सकते हैं, लेकिन यह एक पूरी तरह से अलग दृष्टिकोण है जिसके लिए आपको अपने netlify.toml कॉन्फिगरेशन फ़ाइल या बैश स्क्रिप्ट को आगे कस्टमाइज़ करने की आवश्यकता हो सकती है।

बैश के साथ ब्रांच-विशिष्ट Netlify कॉन्फिगरेशन को स्वचालित करें - चरण-दर-चरण मार्गदर्शिका

यदि आप प्रत्येक एनवायरनमेंट वेरिएबल को व्यक्तिगत रूप से आयात करने का निर्णय लेते हैं, तो आपको नीचे दिखाए अनुसार एक समान विकल्प दिया जाता है। सुनिश्चित करें कि आप प्रत्येक ब्रांच के लिए सही संदर्भ चुनते हैं।

सभी संदर्भों के लिए समान मूल्यों का उपयोग न करें। जैसा कि नीचे दी गई छवि में देखा गया है, "प्रत्येक डिप्लॉय संदर्भ के लिए अलग मूल्य" चुनने से आप प्रत्येक के लिए मूल्यों को परिभाषित कर सकेंगे। इस मामले में, हम ब्रांच डिप्लॉय के लिए मूल्यों को परिभाषित करते हैं। आपका प्रारंभिक प्रोडक्शन वेरिएबल पहले से ही मौजूद होना चाहिए।

बैश के साथ ब्रांच-विशिष्ट Netlify कॉन्फिगरेशन को स्वचालित करें - चरण-दर-चरण मार्गदर्शिका

जब सभी वेरिएबल आयात हो जाते हैं, तो आप प्रत्येक वेरिएबल के दाईं ओर ड्रॉपडाउन चुनकर और उनके मूल्यों का निरीक्षण करके पुष्टि कर सकते हैं कि वे सही ढंग से आयात हुए हैं।

बैश के साथ ब्रांच-विशिष्ट Netlify कॉन्फिगरेशन को स्वचालित करें - चरण-दर-चरण मार्गदर्शिका

चरण 2: एक नया डिप्लॉयमेंट ट्रिगर करें

जब आपके विभिन्न संदर्भों - इस मामले में प्रोडक्शन और स्टेजिंग - के लिए सभी एनवायरनमेंट वेरिएबल आयात हो गए हैं, तो अपनी स्क्रीन के बाएं पैनल पर "डिप्लॉय" पर जाएं। फिर "Trigger deploy" बटन दबाएं, कैश साफ़ करें, और एक नया डिप्लॉयमेंट शुरू करें।

बैश के साथ ब्रांच-विशिष्ट Netlify कॉन्फिगरेशन को स्वचालित करें - चरण-दर-चरण मार्गदर्शिका

अपने डिप्लॉयमेंट का निरीक्षण करें

आप पुष्टि कर सकते हैं कि आपकी स्क्रिप्ट अपेक्षा के अनुरूप काम करती है, किसी भी डिप्लॉयमेंट को चुनकर और "डिप्लॉय लॉग" में "बिल्डिंग" ड्रॉपडाउन को चुनकर। आप कमांड को चलते हुए देखेंगे, साथ ही उस डिप्लॉयमेंट के लिए आपके संदर्भ द्वारा परिभाषित आउटपुट और API URL भी देखेंगे।

बैश के साथ ब्रांच-विशिष्ट Netlify कॉन्फिगरेशन को स्वचालित करें - चरण-दर-चरण मार्गदर्शिका

निष्कर्ष

इस गाइड में दिए गए चरणों का पालन करके, और अपने रिपॉजिटरी में प्रत्येक ब्रांच में अपनी स्क्रिप्ट और अपडेटेड कमांड का उपयोग करके, जब आप बदलाव पुश करेंगे तो Netlify प्रत्येक ब्रांच में netlify.toml फ़ाइल को स्वचालित रूप से जनरेट या अपडेट करेगा। यह सुनिश्चित करता है कि बिल्ड समय पर प्रत्येक वातावरण के लिए सही कॉन्फिगरेशन और एनवायरनमेंट वेरिएबल का उपयोग किया जाता है।

आपकी स्क्रिप्ट सभी ब्रांच में समान रहती है। यह आपको अन्य कोड परिवर्तनों पर ध्यान केंद्रित करने देती है जबकि आपकी स्क्रिप्ट आपके लिए सही कॉन्फिगरेशन को सुरक्षित और आसानी से संभालती है।

किसी भी ब्रांच में बदलाव पुश करके इसे कार्रवाई में देखें।

ट्विटर (@francisihej) या लिंक्डइन पर मुझसे जुड़ने के लिए स्वतंत्र महसूस करें!

मुफ्त में कोड करना सीखें। freeCodeCamp के ओपन सोर्स पाठ्यक्रम ने 40,000 से अधिक लोगों को डेवलपर के रूप में नौकरी पाने में मदद की है। शुरू करें


  1. HTML DOM Style animationName प्रॉपर्टी HTML DOM Style animationName प्रॉपर्टी

    animationName प्रॉपर्टी का उपयोग @keyframes के संदर्भ के लिए एनिमेशन नाम प्राप्त करने या सेट करने के लिए किया जाता है। सिंटैक्स animationName प्रॉपर्टी सेट करने के लिए सिंटैक्स निम्नलिखित है: object.style.animationName = none|keyframename|initial|inherit मान निम्नलिखित मान हैं: क्रमांकमान एवं विव

  1. डाउनट्रेंड प्रदर्शित करने के लिए डेटासेट प्लॉट करें - पायथन पैंडास डाउनट्रेंड प्रदर्शित करने के लिए डेटासेट प्लॉट करें - पायथन पैंडास

    टाइम सीरीज विश्लेषण द्वारा प्रदर्शित नीचे की ओर पैटर्न को डाउनट्रेंड कहा जाता है। मान लीजिए हमारा डेटासेट SalesRecords2.csv है।सबसे पहले, आवश्यक लाइब्रेरी आयात करें:import pandas as pd import matplotlib.pyplot as pltCSV फ़ाइल से डेटा पैंडास DataFrame में लोड करें:dataFrame = pd.read_csv(C:\\Users\\a

  1. HTML DOM Style flexDirection प्रॉपर्टी HTML DOM Style flexDirection प्रॉपर्टी

    परिचय HTML DOM Style flexDirection प्रॉपर्टी का उपयोग फ्लेक्स एलिमेंट्स की दिशा सेट करने या वापस करने के लिए किया जाता है। यह फ्लेक्स कंटेनर में आइटम्स के लेआउट को नियंत्रित करता है। सिंटैक्स object.style.flexDirection = row|row-reverse|column|column-reverse|initial|inherit मान और विवरण मान वि