DevOps बूटकैंप · पाठ

वातावरण चर और गुप्त जानकारी

GitHub Actions के भीतर संवेदनशील जानकारी और वातावरण-विशिष्ट कॉन्फ़िगरेशन को सुरक्षित रूप से प्रबंधित करना सीखिए।

पाठ 3, कुल 4 में से12 चरण

वातावरण चर और गुप्त जानकारी, CoddyKit पर DevOps बूटकैंप का एक निःशुल्क पाठ है। यह 4 में से 3वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह DevOps बूटकैंप सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। DevOps बूटकैंप पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

पर्यावरण चर और गोपनीय मान: मूल बातें

पाठ 3 में आपका स्वागत है! सीआई/सीडी में आपको अक्सर अपने कार्यप्रवाहों को गतिशील मानों या संवेदनशील जानकारी से विन्यस्त करना पड़ता है।

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

सीआई/सीडी में इनका उपयोग क्यों करें

कल्पना करें कि आप अलग-अलग परिवेशों (विकास, स्टेजिंग और उत्पादन) में परिनियोजन कर रहे हैं या एपीआई कुंजियों के माध्यम से बाहरी सेवाओं से जुड़ रहे हैं।

  • लचीलापन: पर्यावरण चर आपको कार्यप्रवाह फ़ाइल में बदलाव किए बिना व्यवहार बदलने देते हैं।
  • सुरक्षा: गोपनीय मान पासवर्ड और एपीआई टोकन जैसी संवेदनशील जानकारी को उजागर होने से बचाते हैं।
  • पुनः उपयोग: विन्यास को एक बार परिभाषित करें और उसे कई कार्यों या चरणों में इस्तेमाल करें।

कार्रवाइयों में पर्यावरण चर

पर्यावरण चर गतिशील नाम वाला ऐसा मान है जो चल रही प्रक्रियाओं के व्यवहार को प्रभावित कर सकता है। GitHub की कार्रवाइयों में ये आपके कार्यप्रवाहों को विन्यास योग्य बनाने के लिए महत्वपूर्ण हैं।

आप अपने पर्यावरण चर परिभाषित कर सकते हैं या GitHub की कार्रवाइयों द्वारा उपलब्ध कराए गए अनेक अंतर्निर्मित चरों का उपयोग कर सकते हैं।

अंतर्निर्मित GitHub कार्रवाई पर्यावरण चर

GitHub की कार्रवाइयाँ अनेक उपयोगी और पूर्वनिर्धारित पर्यावरण चर स्वचालित रूप से उपलब्ध कराती हैं। इनसे आपको कोड-भंडार, कार्यप्रवाह के संचालन और अन्य चीज़ों के बारे में संदर्भ मिलता है।

उदाहरण के लिए, GITHUB_SHA कमिट का हैश है और GITHUB_REF वह शाखा या टैग नाम है जिसने कार्यप्रवाह को सक्रिय किया।

आप अभिव्यक्तियों में github संदर्भ ऑब्जेक्ट का उपयोग करके या उन्हें env में मैप किए जाने पर सीधे शेल चरों के रूप में इन तक पहुँचते हैं।

name: Print Context Variables
on: [push]
jobs:
  display_info:
    runs-on: ubuntu-latest
    steps:
      - name: Show commit SHA
        run: echo "Commit SHA: ${{ github.sha }}"
      - name: Show branch/tag ref
        run: echo "Ref: ${{ github.ref }}"

कस्टम पर्यावरण चर: कार्यप्रवाह का दायरा

आप अपने पर्यावरण चर को कार्यप्रवाह या कार्य स्तर पर परिभाषित कर सकते हैं। कार्यप्रवाह स्तर पर परिभाषित चर उस कार्यप्रवाह के सभी कार्यों और चरणों में उपलब्ध होते हैं।

उन्हें निर्धारित करने के लिए अपनी कार्यप्रवाह फ़ाइल के शीर्ष स्तर पर env कीवर्ड का उपयोग करें।

name: Workflow-level Env Var
on: [push]
env:
  GREETING_MESSAGE: "Hello from Workflow!"
jobs:
  my_job:
    runs-on: ubuntu-latest
    steps:
      - name: Access workflow variable
        run: echo "${{ env.GREETING_MESSAGE }}" # Access via env context
      - name: Access workflow variable (shell)
        env:
          MY_VAR_IN_SHELL: ${{ env.GREETING_MESSAGE }}
        run: echo "$MY_VAR_IN_SHELL" # Access as shell variable

कस्टम पर्यावरण चर: कार्य और चरण का दायरा

अधिक विशिष्ट आवश्यकताओं के लिए पर्यावरण चर को कार्य या चरण स्तर पर परिभाषित करें। किसी कार्य के लिए परिभाषित चर उसके सभी चरणों में उपलब्ध होता है, जबकि चरण-स्तरीय चर केवल उसी एक चरण में उपलब्ध होता है।

इससे आप अपने विन्यास पर सूक्ष्म नियंत्रण रख सकते हैं।

name: Job & Step-level Env Vars
on: [push]
jobs:
  my_job:
    runs-on: ubuntu-latest
    env:
      JOB_VAR: "Value for this job"
    steps:
      - name: Access Job-level variable
        run: echo "Job Var: ${{ env.JOB_VAR }}"
      - name: Step-specific variable
        env:
          STEP_VAR: "Value for this step"
        run: echo "Step Var: ${{ env.STEP_VAR }}"
      - name: Try to access step var in another step
        run: echo "Trying to access: ${{ env.STEP_VAR }}" || true # Will be empty

GitHub के गोपनीय मानों का परिचय

पर्यावरण चर गैर-संवेदनशील डेटा के लिए उपयोगी हैं, लेकिन एपीआई कुंजियों, डेटाबेस पासवर्ड या निजी टोकन जैसी गोपनीय जानकारी का क्या करें?

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

  • कूटबद्ध: GitHub द्वारा सुरक्षित रूप से संग्रहीत।
  • छिपाए गए: कार्यप्रवाह के कार्यविवरण से स्वचालित रूप से छिपा दिए जाते हैं।
  • नियंत्रित पहुँच: केवल विशिष्ट कार्यप्रवाहों के लिए उपलब्ध।

GitHub के गोपनीय मान बनाना

गोपनीय मान सीधे आपकी कार्यप्रवाह फ़ाइलों में नहीं, बल्कि GitHub पर आपके कोड-भंडार या संगठन की सेटिंग्स के माध्यम से बनाए और प्रबंधित किए जाते हैं।

  1. अपने कोड-भंडार की सेटिंग्स पर जाएँ।
  2. गोपनीय मान और चर > क्रियाएँ पर जाएँ।
  3. नया कोड-भंडार गोपनीय मान पर क्लिक करें (व्यापक दायरे के लिए संगठन का गोपनीय मान चुनें)।
  4. नाम दें (जैसे MY_API_KEY) और मान चिपकाएँ।

सहेजने के बाद आप किसी गोपनीय मान का मान फिर से नहीं देख सकते, केवल उसे अद्यतन या हटा सकते हैं।

कार्यप्रवाहों में गोपनीय मानों का उपयोग

किसी गोपनीय मान का उपयोग करने के लिए, अपने कार्यप्रवाह में secrets संदर्भ ऑब्जेक्ट के माध्यम से उसका संदर्भ लें, ठीक वैसे ही जैसे पर्यावरण चर के लिए आप env का उपयोग करते हैं।

GitHub गोपनीय मानों को कार्यविवरण से स्वचालित रूप से छिपा देता है और उनके मानों की जगह *** रखता है, ताकि वे अनजाने में उजागर न हों।

name: Use a Secret Demo
on: [push]
jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - name: Display a secret (redacted)
        run: echo "My secret key is: ${{ secrets.MY_API_KEY }}"
        # GitHub Actions automatically redacts the value in logs.
      - name: Pass secret to an environment variable
        env:
          API_KEY_ENV: ${{ secrets.MY_API_KEY }}
        run: echo "API Key in env: $API_KEY_ENV"

गोपनीय मानों की सुरक्षा की सर्वोत्तम कार्यप्रणालियाँ

अपने सीआई/सीडी कार्यप्रवाह की अखंडता के लिए गोपनीय मानों का सुरक्षित प्रबंधन अत्यंत महत्वपूर्ण है। हमेशा इन दिशानिर्देशों का पालन करें:

  • न्यूनतम विशेषाधिकार: गोपनीय मानों तक पहुँच केवल वहीं दें जहाँ इसकी बिल्कुल आवश्यकता हो।
  • सीधे न लिखें: गोपनीय मानों को अपनी कार्यप्रवाह फ़ाइलों या किसी भी कोड-भंडार कोड में सीधे शामिल न करें।
  • कार्यविवरण दर्ज करने से बचें: GitHub उन्हें छिपा देता है, फिर भी ऐसे कस्टम echo आदेशों से बचें जो अनजाने में गोपनीय मानों के कुछ अंश उजागर कर सकते हैं।
  • नियमित रूप से बदलें: समझौता होने का जोखिम कम करने के लिए अपने गोपनीय मान समय-समय पर बदलें।
  • परिवेश-विशिष्ट: विकास, स्टेजिंग और उत्पादन परिवेशों के लिए अलग-अलग गोपनीय मानों का उपयोग करें।

त्वरित जाँच: पर्यावरण चर बनाम गोपनीय मान

कौन-सा कथन GitHub Actions के पर्यावरण चर और गोपनीय जानकारियों के बीच किसी मुख्य अंतर या विशेषता का सही वर्णन करता है?

पुनरावलोकन: सुरक्षित विन्यास

बहुत बढ़िया! आपने GitHub Actions के कार्यप्रवाहों में विन्यास प्रबंधित करने का तरीका सफलतापूर्वक सीख लिया है।

  • पर्यावरण चर आपके कार्यप्रवाह में गैर-संवेदनशील, गतिशील डेटा शामिल करने में सहायता करते हैं और इन्हें कार्यप्रवाह, कार्य या चरण के स्तर पर अनुकूलित किया जा सकता है।
  • गोपनीय जानकारियाँ API कुंजियों जैसी संवेदनशील जानकारी को सुरक्षित रूप से संभालने के लिए महत्वपूर्ण हैं और यह सुनिश्चित करती हैं कि वे आपके सार्वजनिक कोड से बाहर एन्क्रिप्टेड रहें।
  • गोपनीय जानकारियों के साथ काम करते समय हमेशा सुरक्षा की सर्वोत्तम प्रक्रियाओं का पालन करें, ताकि आपके परिनियोजनों को कमज़ोरियों से सुरक्षित रखा जा सके।

इन अवधारणाओं में महारत हासिल करने से यह सुनिश्चित होता है कि आपके सतत एकीकरण/सतत परिनियोजन कार्यप्रवाह लचीले और सुरक्षित रहें!

शुरुआत निःशुल्क

एआई शिक्षक के साथ DevOps बूटकैंप सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
142
पाठ
568

अक्सर पूछे जाने वाले प्रश्न

क्या “वातावरण चर और गुप्त जानकारी” पाठ निःशुल्क है?

हाँ — DevOps बूटकैंप अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “वातावरण चर और गुप्त जानकारी” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। DevOps बूटकैंप पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“वातावरण चर और गुप्त जानकारी” में मैं क्या सीखूँगा?

GitHub Actions के भीतर संवेदनशील जानकारी और वातावरण-विशिष्ट कॉन्फ़िगरेशन को सुरक्षित रूप से प्रबंधित करना सीखिए। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ DevOps बूटकैंप का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या DevOps बूटकैंप शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर DevOps बूटकैंप शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 3वाँ पाठ है।

“वातावरण चर और गुप्त जानकारी” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस DevOps बूटकैंप पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर DevOps बूटकैंप पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. सतत परिनियोजन का परिचय
  2. स्टेजिंग वातावरण में परिनियोजन
  3. वातावरण चर और गुप्त जानकारी
  4. Approval gate के साथ production deployment
← DevOps बूटकैंप पर वापस जाएँ