C# (.NET) प्रोजेक्ट्स के लिए GitHub Actions के साथ CI/CD: चरण-दर-चरण मार्गदर्शिका

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें
```html

परिचय: C# (.NET) परियोजनाओं के लिए CI/CD क्यों महत्वपूर्ण है



आधुनिक सॉफ्टवेयर विकास स्वचालन के बिना संभव नहीं है। बिल्ड, परीक्षण और डिप्लॉयमेंट की मैन्युअल प्रक्रियाएँ न केवल धीमी हैं, बल्कि त्रुटियों से भरी होती हैं। .NET इकोसिस्टम के साथ काम करने वाले C# डेवलपर्स के लिए, CI/CD (Continuous Integration / Continuous Deployment) प्रथाओं को लागू करना उद्योग का मानक बन गया है।



GitHub Actions वर्कफ़्लो को स्वचालित करने के लिए एक शक्तिशाली और लचीला उपकरण है, जो सीधे GitHub में बनाया गया है। यह आपको पाइपलाइन (workflows) बनाने की अनुमति देता है जो रिपॉजिटरी में घटनाओं पर प्रतिक्रिया करती हैं: पुश, Pull Request बनाना, रिलीज़ और बहुत कुछ। इस लेख में, हम GitHub Actions का उपयोग करके .NET पर आधारित C# प्रोजेक्ट के लिए एक पूर्ण CI/CD पाइपलाइन सेट अप करने का तरीका समझेंगे।



आप सीखेंगे कि कैसे:

  • प्रोजेक्ट की स्वचालित बिल्ड सेट अप करें।
  • यूनिट टेस्ट (जैसे, xUnit या NUnit) चलाएँ।
  • बिल्ड आर्टिफैक्ट प्रकाशित करें।
  • एप्लिकेशन को स्वचालित रूप से डिप्लॉय करें (जैसे, Azure, Docker Hub या सर्वर पर)।


1. GitHub Actions की मूल बातें: Workflow, Jobs और Steps



कोड लिखने से पहले, आइए GitHub Actions की बुनियादी अवधारणाओं को समझें।



  • Workflow (कार्य प्रवाह): यह एक स्वचालित प्रक्रिया है जिसे आप .github/workflows फ़ोल्डर में YAML फ़ाइल में परिभाषित करते हैं। Workflow एक ट्रिगर (जैसे, main ब्रांच में push) पर शुरू होता है।
  • Job (कार्य): Steps का एक सेट जो एक ही रनर (वर्चुअल मशीन) पर निष्पादित होता है। Jobs क्रमिक रूप से या समानांतर में चल सकती हैं।
  • Step (चरण): एक व्यक्तिगत कमांड या एक्शन। यह एक स्क्रिप्ट चलाना, निर्भरताएँ स्थापित करना या मार्केटप्लेस से तैयार एक्शन का उपयोग करना हो सकता है।
  • Runner (रनर): सर्वर जो आपके workflow को निष्पादित करता है। GitHub मुफ्त रनर (Ubuntu, Windows, macOS) प्रदान करता है, या आप अपना स्वयं का रनर चला सकते हैं।


.NET प्रोजेक्ट्स के लिए, हम तैयार actions का उपयोग करेंगे, जैसे actions/checkout (रिपॉजिटरी को क्लोन करने के लिए) और actions/setup-dotnet (.NET SDK स्थापित करने के लिए)।



2. बेसिक CI पाइपलाइन सेट अप करना: बिल्ड और परीक्षण



आइए अपना पहला workflow बनाएँ। इसके लिए, रिपॉजिटरी के रूट में .github/workflows फ़ोल्डर बनाएँ और उसके अंदर dotnet-build.yml फ़ाइल बनाएँ।



C# प्रोजेक्ट की बिल्ड और परीक्षण के लिए न्यूनतम YAML फ़ाइल यहाँ दी गई है:



name: .NET Build and Test

on: push: branches: [ main, develop ] pull_request: branches: [ main ]

jobs: build-and-test: runs-on: ubuntu-latest

steps: - name: Checkout repository uses: actions/checkout@v4

- name: Setup .NET uses: actions/setup-dotnet@v4 with: dotnet-version: '8.0.x' # अपना .NET वर्शन निर्दिष्ट करें

- name: Restore dependencies run: dotnet restore

- name: Build run: dotnet build --no-restore --configuration Release

- name: Run tests run: dotnet test --no-build --configuration Release --verbosity normal


कोड को समझें:

  • name: workflow का नाम, जो GitHub में प्रदर्शित होगा।
  • on: ट्रिगर को परिभाषित करता है। हमारे मामले में, main और develop ब्रांच में push और pull request।
  • jobs: इसमें एक कार्य build-and-test शामिल है, जो ubuntu-latest पर चलता है।
  • steps: क्रियाओं का क्रम: कोड क्लोन करना, .NET 8.0 स्थापित करना, NuGet पैकेज पुनर्स्थापित करना, Release कॉन्फ़िगरेशन में बिल्ड करना और परीक्षण चलाना।


इस फ़ाइल को रिपॉजिटरी में push करने के बाद, GitHub Actions स्वचालित रूप से workflow चलाएगा। आपको हरे रंग का टिक या लाल क्रॉस दिखाई देगा।

```

ब्लॉग

पुस्तक अनुशंसाएँ