Gemini CLI और CI/CD Skills की मदद से ऐप्लिकेशन डिप्लॉय करना

1. परिचय

इस कोडलैब में, आपको Gemini CLI और सीआई/सीडी एक्सटेंशन का इस्तेमाल करके, प्लैटफ़ॉर्म इंजीनियरिंग के "ज़ीरो-टू-हीरो" वर्कफ़्लो के बारे में जानकारी मिलेगी. आपको एक एंटरप्राइज़ डेवलपर की भूमिका निभानी होगी. इस डेवलपर ने कोई ऐप्लिकेशन (जैसे, Spring Petclinic डेमो या Python Flask ऐप्लिकेशन) बनाया है. अब वह इसे Google Cloud पर डिप्लॉय करके शेयर करना चाहता है.

मुश्किल पाइपलाइन को मैन्युअल तरीके से कॉन्फ़िगर करने के बजाय, Gemini को निर्देश देने के लिए नैचुरल लैंग्वेज का इस्तेमाल किया जाएगा. यह एजेंट आपके प्रोजेक्ट का विश्लेषण करेगा. साथ ही, Google Cloud Run जैसे छोटे पैमाने पर टारगेट रनटाइम का सुझाव देगा. इसके अलावा, यह लीक हुए सीक्रेट के लिए सुरक्षा स्कैन करेगा और डिप्लॉयमेंट को मैनेज करेगा. साथ ही, आपको काम करने वाला यूआरएल देगा.

आपको क्या करना होगा

  • किसी रिपॉज़िटरी को क्लोन करें. इसके लिए, अपनी रिपॉज़िटरी या Spring Petclinic जैसे डेमो ऐप्लिकेशन का इस्तेमाल किया जा सकता है.
  • Gemini CLI और CI/CD एक्सटेंशन को इंस्टॉल और कॉन्फ़िगर करें.
  • डप्लॉयमेंट स्किल को ट्रिगर करने के लिए, deploy my application जैसे प्रॉम्प्ट का इस्तेमाल करें.
  • Gemini को प्रोजेक्ट का विश्लेषण करते हुए देखें. साथ ही, Cloud Run का सुझाव देते हुए, सुरक्षा जांच करते हुए, और ऐप्लिकेशन को डिप्लॉय करते हुए देखें.
  • चल रहे ऐप्लिकेशन की पुष्टि करें.

आपको किन चीज़ों की ज़रूरत होगी

  • कोई वेब ब्राउज़र, जैसे कि Chrome.
  • बिलिंग की सुविधा वाला Google Cloud प्रोजेक्ट.

यह कोडलैब, सभी लेवल के डेवलपर के लिए है. इसमें शुरुआती डेवलपर भी शामिल हैं.

2. शुरू करने से पहले

बिलिंग सेट अप

Google Cloud प्रोजेक्ट बनाना या चुनना

Google Cloud प्रोजेक्ट बनाना

  1. Google Cloud Console में, प्रोजेक्ट चुनने वाले पेज पर, Google Cloud प्रोजेक्ट चुनें या बनाएं.
  2. पक्का करें कि आपके Cloud प्रोजेक्ट के लिए बिलिंग चालू हो. किसी प्रोजेक्ट के लिए बिलिंग चालू है या नहीं, यह देखने का तरीका जानें.

Cloud Shell शुरू करना

Cloud Shell, Google Cloud में चलने वाला एक कमांड-लाइन एनवायरमेंट है. इसमें ज़रूरी टूल पहले से लोड होते हैं.

  1. Google Cloud कंसोल में सबसे ऊपर मौजूद, Cloud Shell चालू करें पर क्लिक करें.
  2. Cloud Shell से कनेक्ट होने के बाद, अपने क्रेडेंशियल की पुष्टि करें:
    gcloud auth list
    
  3. पुष्टि करें कि आपका प्रोजेक्ट कॉन्फ़िगर किया गया है:
    gcloud config get project
    
  4. अगर आपका प्रोजेक्ट उम्मीद के मुताबिक सेट नहीं है, तो इसे सेट करें:
    export PROJECT_ID=<YOUR_PROJECT_ID>
    gcloud config set project $PROJECT_ID
    

एपीआई चालू करें

इस लैब के लिए ज़रूरी सभी एपीआई चालू करने के लिए, Cloud Shell में यह निर्देश चलाएं:

gcloud services enable \
  cloudbuild.googleapis.com \
  run.googleapis.com \
  artifactregistry.googleapis.com

3. Gemini CLI को सेट अप करना

इस चरण में, Gemini सीएलआई और CI/CD एक्सटेंशन को इंस्टॉल और कॉन्फ़िगर किया जाएगा.

  1. पक्का करें कि Gemini CLI इंस्टॉल हो. अगर आपने इसे अब तक इंस्टॉल नहीं किया है, तो Gemini CLI का इस्तेमाल शुरू करने के बारे में जानकारी देने वाली गाइड में दिए गए निर्देशों का पालन करें.
  2. साइन इन करें: हमारा सुझाव है कि आप अपने Google खाते से साइन इन करें. ज़्यादा जानकारी के लिए, पुष्टि करने से जुड़ी गाइड देखें.
  3. सीआई/सीडी एक्सटेंशन इंस्टॉल करें: GitHub से एक्सटेंशन इंस्टॉल करने के लिए, यह निर्देश चलाएं:
    gemini extensions install https://github.com/gemini-cli-extensions/cicd
    
    इंस्टॉल किए गए एक्सटेंशन की सूची बनाकर, एक्सटेंशन इंस्टॉल होने की पुष्टि की जा सकती है:
    gemini extensions list
    
  4. ऐप्लिकेशन के डिफ़ॉल्ट क्रेडेंशियल (एडीसी) कॉन्फ़िगर करें: सीआई/सीडी एक्सटेंशन के लिए, एडीसी को कॉन्फ़िगर करना ज़रूरी है. रन:
    gcloud auth login
    gcloud auth application-default login
    
  5. डिफ़ॉल्ट प्रोजेक्ट और क्षेत्र सेट करना: gcloud को डिफ़ॉल्ट प्रोजेक्ट और एडीसी के लिए कोटा प्रोजेक्ट के साथ कॉन्फ़िगर करना ज़रूरी है. को अपनी असल वैल्यू से बदलें. उदाहरण के लिए, my-project:
    gcloud config set project <PROJECT_ID>
    gcloud auth application-default set-quota-project <PROJECT_ID>
    

4. ऐप्लिकेशन डिप्लॉय करना

अब ऐप्लिकेशन को डिप्लॉय करने के लिए, Gemini CLI और CI/CD एक्सटेंशन का इस्तेमाल किया जा सकता है.

रिपॉज़िटरी को क्लोन करना

इस लैब में, हम लोकप्रिय Spring Petclinic सैंपल ऐप्लिकेशन का इस्तेमाल करेंगे. अगर आपके पास कोई ऐसा ऐप्लिकेशन है जो काम करने वाले रनटाइम (जैसे, Python/Flask, Java/Spring Boot वगैरह) का इस्तेमाल करता है, तो उसका भी इस्तेमाल किया जा सकता है.

  1. रिपॉज़िटरी को क्लोन करें और डायरेक्ट्री में जाएं:
    git clone https://github.com/spring-projects/spring-petclinic.git
    cd spring-petclinic
    

Gemini को डिप्लॉय करने के लिए प्रॉम्प्ट देना

  1. प्रोजेक्ट डायरेक्ट्री से Gemini CLI लॉन्च करें:
    gemini
    
  2. Gemini CLI शेल में जाने के बाद, अपने ऐप्लिकेशन को डिप्लॉय करने के लिए CI/CD एक्सटेंशन का इस्तेमाल करें. बोलचाल की आम भाषा में प्रॉम्प्ट का इस्तेमाल किया जा सकता है:
    deploy my application
    

इसके बाद क्या होगा

Gemini, google-cicd-deploy स्किल को चालू करेगा और कई कार्रवाइयां करेगा:

  • प्रोजेक्ट का विश्लेषण करें: इससे ऐप्लिकेशन टाइप (जैसे, Spring Boot) की पहचान की जाएगी.
  • सुझाया गया रनटाइम: यह आपके लिए सही रनटाइम का सुझाव देगा, जैसे कि Google Cloud Run.
  • सुरक्षा स्कैन: यह MCP टूल का इस्तेमाल करके, लीक हुए सीक्रेट को स्कैन करेगा. अगर आपसे कहा जाए, तो टूल को चलाने की अनुमति दें.
  • कॉन्फ़िगरेशन एक्सट्रैक्ट करना: यह आपके मौजूदा प्रोजेक्ट एनवायरमेंट को पढ़ने के लिए, gcloud का इस्तेमाल करेगा.
  • पैरामीटर का सुझाव देना: यह डिप्लॉयमेंट पैरामीटर के लिए, डिफ़ॉल्ट वैल्यू का सुझाव देगा और आपसे पुष्टि करने के लिए कहेगा.

सुझाए गए कॉन्फ़िगरेशन की समीक्षा करें और डिप्लॉयमेंट की पुष्टि करें.

यह प्रोसेस पूरी होने के बाद, Gemini आपको चालू ऐप्लिकेशन का यूआरएल देगा.

5. व्यवस्थित करें

अपने Google Cloud खाते से लगातार शुल्क लिए जाने से बचने के लिए, इस कोडलैब के दौरान बनाई गई संसाधन मिटाएं.

अगर आपने Cloud Run पर डिप्लॉय किया है, तो इस सेवा को मिटाने के लिए यहां दिया गया निर्देश इस्तेमाल करें. को अपने कंप्यूट रीजन से बदलें. उदाहरण के लिए, us-central1:

gcloud run services delete spring-petclinic --region <REGION>

इसके अलावा, अगर आपने इस कोडलैब के लिए कोई प्रोजेक्ट बनाया है, तो आपके पास पूरे प्रोजेक्ट को मिटाने का विकल्प है:

gcloud projects delete <YOUR_PROJECT_ID>

6. बधाई हो

बधाई हो! आपने नैचुरल लैंग्वेज प्रॉम्प्ट का इस्तेमाल करके, Gemini CLI और सीआई/सीडी एक्सटेंशन की मदद से, Google Cloud Run पर ऐप्लिकेशन को डिप्लॉय कर लिया है.

आपको क्या सीखने को मिला

  • Gemini CLI और CI/CD एक्सटेंशन को इंस्टॉल और कॉन्फ़िगर करने का तरीका.
  • डिप्लॉयमेंट फ़्लो को ट्रिगर करने के लिए, आम बोलचाल वाली भाषा का इस्तेमाल करने का तरीका.
  • Gemini, आपके प्रोजेक्ट का विश्लेषण कैसे करता है, सुरक्षा स्कैन को कैसे मैनेज करता है, और रनटाइम के सुझाव कैसे देता है.

अगले चरण

  • CI/CD एक्सटेंशन की मदद से, ज़्यादा ऐडवांस प्रॉम्प्ट एक्सप्लोर करें. जैसे, पूरी पाइपलाइन डिज़ाइन करना या Terraform जनरेट करना.
  • CI/CD एक्सटेंशन देखें.
  • Developer Connect के बारे में ज़्यादा जानें.

रेफ़रंस दस्तावेज़