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

कस्टम Actions और Marketplace

पहले से बने Actions के लिए GitHub Actions Marketplace का अध्ययन कीजिए और अपने कस्टम Actions बनाना सीखिए।

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

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

GitHub Actions Marketplace का परिचय

GitHub Actions Marketplace में आपका स्वागत है! यह एक सक्रिय केंद्र है, जहाँ आपको GitHub, ओपन-सोर्स योगदानकर्ताओं और व्यावसायिक साझेदारों द्वारा बनाए गए हज़ारों पहले से निर्मित एक्शन मिल सकते हैं।

इन एक्शन को आपके वर्कफ़्लो में आसानी से एकीकृत किया जा सकता है। सामान्य कार्यों के लिए मौजूदा समाधानों का पुनः उपयोग करके ये आपका समय और प्रयास बचाते हैं।

सही एक्शन ढूँढना

Marketplace में खोज करना आसान है। आप कीवर्ड के आधार पर एक्शन खोज सकते हैं, श्रेणी के अनुसार फ़िल्टर कर सकते हैं, जैसे “CI/CD” या “तैनाती”, और लोकप्रियता के आधार पर क्रमित कर सकते हैं।

  • अधिक स्टार रेटिंग और सक्रिय रखरखाव वाले एक्शन खोजें।
  • उपयोग निर्देशों, इनपुट और आउटपुट के लिए एक्शन का दस्तावेज़ देखें।
  • सामाजिक प्रमाण के लिए देखें कि सार्वजनिक रिपॉज़िटरी में किसी एक्शन का कितनी बार उपयोग किया गया है।

तैयार एक्शन को एकीकृत करना

Marketplace एक्शन का उपयोग करना सरल है। अपने वर्कफ़्लो YAML में uses कीवर्ड का उपयोग करके, उसके बाद एक्शन के owner/repo@version का संदर्भ दें।

एक सामान्य उदाहरण actions/checkout है, जो आपकी रिपॉज़िटरी के कोड को चेक आउट करता है, ताकि आपका वर्कफ़्लो उस तक पहुँच सके।

name: Marketplace Demo
on: [push]
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout repository
        uses: actions/checkout@v4
      - name: Say hello
        run: echo "Hello from workflow!"

एक्शन के इनपुट और आउटपुट

कई एक्शन अपने व्यवहार को अनुकूलित करने के लिए इनपुट स्वीकार करते हैं, जिन्हें with कीवर्ड का उपयोग करके निर्दिष्ट किया जाता है। वे ऐसे आउटपुट भी बना सकते हैं, जिनका उपयोग आपके वर्कफ़्लो के अन्य स्टेप कर सकते हैं।

उदाहरण के लिए, actions/setup-node एक्शन node-version इनपुट ले सकता है।

name: Node Setup Demo
on: [push]
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Setup Node.js 18.x
        uses: actions/setup-node@v3
        with:
          node-version: '18.x'
      - name: Install dependencies
        run: npm install

अपना एक्शन कब बनाएँ

Marketplace में बहुत कुछ उपलब्ध है, फिर भी कभी-कभी आपको किसी विशेष चीज़ की आवश्यकता होती है। ऐसे समय कस्टम एक्शन उपयोगी होते हैं!

आप इन कार्यों के लिए कस्टम एक्शन बना सकते हैं:

  • कंपनी के आंतरिक टूल स्वचालित करना।
  • ऐसे विशिष्ट API के साथ एकीकरण करना, जिसे मौजूदा एक्शन में शामिल नहीं किया गया है।
  • अपने प्रोजेक्ट की निर्माण प्रक्रिया से संबंधित अत्यधिक विशेष कार्य करना।

कस्टम एक्शन के प्रकार

कस्टम एक्शन के दो मुख्य प्रकार बनाए जा सकते हैं:

  • JavaScript एक्शन: ये Node.js का उपयोग करके सीधे रनर मशीन पर चलते हैं। इन्हें विकसित करना अक्सर तेज़ और साझा करना आसान होता है।
  • Docker कंटेनर एक्शन: ये Docker कंटेनर के भीतर चलते हैं। अलग-अलग रनर पर एकसमान निष्पादन सुनिश्चित करते हुए वातावरण और निर्भरताओं को समाहित करने के लिए ये उपयोगी हैं।

सरलता के लिए हम JavaScript एक्शन पर ध्यान देंगे।

`action.yml` फ़ाइल

हर कस्टम एक्शन के लिए action.yml फ़ाइल आवश्यक होती है। यह फ़ाइल एक्शन का मेटाडेटा परिभाषित करती है, जिसमें उसका नाम, विवरण, स्वीकार किए जाने वाले इनपुट, बनाए जाने वाले आउटपुट और उसके चलने का तरीका शामिल है।

यह आपके एक्शन के घोषणापत्र जैसी होती है और GitHub Actions को वह सब बताती है, जो उसे जानना आवश्यक है।

name: 'My Custom Greeting Action'
description: 'Greets a person with a custom message.'
inputs:
  who-to-greet:
    description: 'Who to greet'
    required: true
    default: 'World'
outputs:
  time:
    description: 'The time we greeted you'
runs:
  using: 'node16'
  main: 'index.js'

एक सरल JavaScript एक्शन बनाना

आइए, एक बहुत ही बुनियादी JavaScript एक्शन बनाएँ। आपको action.yml में निर्दिष्ट index.js फ़ाइल और आमतौर पर निर्भरताओं के लिए package.json की आवश्यकता होगी।

@actions/core पैकेज वर्कफ़्लो के साथ इंटरैक्ट करने, जैसे इनपुट प्राप्त करने और आउटपुट सेट करने, के लिए आवश्यक है।

const core = require('@actions/core');

async function run() {
  try {
    const nameToGreet = core.getInput('who-to-greet');
    console.log(`Hello ${nameToGreet}!`);

    const time = (new Date()).toTimeString();
    core.setOutput("time", time);

  } catch (error) {
    core.setFailed(error.message);
  }
}

run();

अपने कस्टम एक्शन को एकीकृत करना

अपने कस्टम एक्शन का उपयोग करने के लिए उसकी फ़ाइलें, जैसे action.yml, index.js आदि, अपनी रिपॉज़िटरी की किसी उपनिर्देशिका में रखें। फिर uses: ./path/to/your/action के साथ सापेक्ष पथ का उपयोग करके अपने वर्कफ़्लो में उसका संदर्भ दें।

इससे आप अपने एक्शन को Marketplace में प्रकाशित करने से पहले स्थानीय रूप से उसका परीक्षण कर सकते हैं।

name: Use Custom Action Demo
on: [push]
jobs:
  greet:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Run my custom action
        uses: ./my-custom-action # Path to action directory
        with:
          who-to-greet: 'CoddyKit User'
      - name: Get the output time
        run: echo "The greeting time was ${{ steps.run-my-custom-action.outputs.time }}"

कस्टम एक्शन के घटक

आपने कस्टम GitHub Actions बनाने और उनका उपयोग करने में शामिल मुख्य तत्वों के बारे में सीख लिया है। आइए, अपनी समझ की जाँच करें!

Marketplace और कस्टम एक्शन का पुनरावलोकन

बहुत अच्छा! आपने GitHub Actions Marketplace और कस्टम एक्शन, दोनों की शक्ति का अध्ययन किया है।

  • Marketplace आपके वर्कफ़्लो को सरल बनाने के लिए उपयोग के लिए तैयार अनेक एक्शन उपलब्ध कराता है।
  • कस्टम एक्शन आपको अपनी विशिष्ट प्रोजेक्ट या संगठनात्मक आवश्यकताओं के अनुसार GitHub Actions का विस्तार करने देते हैं।

इन दोनों को मिलाकर आप अत्यंत शक्तिशाली और अपनी आवश्यकताओं के अनुरूप स्वचालन पाइपलाइन बना सकते हैं!

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

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

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

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

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

क्या “कस्टम Actions और Marketplace” पाठ निःशुल्क है?

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

“कस्टम Actions और Marketplace” में मैं क्या सीखूँगा?

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

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

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

“कस्टम Actions और Marketplace” पाठ पूरा करने में कितना समय लगता है?

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

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

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

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

  1. GitHub Actions का परिचय
  2. CI/CD कार्यप्रवाह बनाना
  3. कस्टम Actions और Marketplace
  4. Actions में सीक्रेट और पर्यावरण चर
← DevOps बूटकैंप पर वापस जाएँ