ऐप सेंटर का उपयोग करके सीआई/सीडी के साथ रिएक्ट नेटिव ऐप्स को स्वचालित करने के लिए आपको जो कुछ भी चाहिए।

Feb 09 2022
1. पूर्वापेक्षाएँ।

1. पूर्वापेक्षाएँ

  • आप उन उपकरणों को लक्षित कर रहे हैं जो Android संस्करण 5.0/API स्तर 21 या बाद के संस्करण, या iOS संस्करण 9.0 या बाद के संस्करण पर चल रहे हैं।
  • आप रिएक्ट नेटिव प्रोजेक्ट का उपयोग कर रहे हैं जो रिएक्ट नेटिव 0.34 या बाद का संस्करण चलाता है।
  • सुनिश्चित करें कि आप आईओएस पर क्रैश रिपोर्टिंग कार्यक्षमता प्रदान करने वाली किसी अन्य लाइब्रेरी का उपयोग नहीं कर रहे हैं।
  • IOS के लिए, SDK का उपयोग करने के लिए डिफ़ॉल्ट तरीके से CocoaPods की आवश्यकता होती है । (यदि आपने CocoaPods स्थापित नहीं किया है, तो CocoaPods को शुरू करने का पालन करें)। फिर भी, एसडीके को मैन्युअल रूप से लिंक करना संभव है।
  • appcenter.ms पर जाएं।
  • साइन अप करें या लॉग इन करें और पोर्टल के ऊपरी दाएं कोने पर नीले बटन को हिट करें जो कहता है कि नया जोड़ें और ड्रॉपडाउन मेनू से एक नया ऐप जोड़ें का चयन करता है।
  • अपने ऐप के लिए एक नाम और एक वैकल्पिक विवरण दर्ज करें।
  • उपयुक्त ओएस (एंड्रॉइड या आईओएस) का चयन करें और प्लेटफॉर्म के रूप में रिएक्ट नेटिव का चयन करें।
  • नीचे दाईं ओर स्थित बटन दबाएं जो कहता है कि नया ऐप जोड़ें
  • यदि आपके पास पहले से ही एक आवेदन है और आप एक ऐसी कंपनी में काम कर रहे हैं जिसका एक निजी ऐप है, तो कृपया अपने व्यवस्थापक या स्टैक-धारक से आपको अनुमति देने के लिए कहें।
  • सबसे पहले, आपको 3 शाखाएँ बनानी होंगी, Develop , stage और Master।
  • डेवलप मीन्स, डिबग एनवी, स्टेज का अर्थ है यूएटी एनवी, और मास्टर का अर्थ है प्रोडक्शन एनवी।
  • प्रत्येक शाखा को हम शेल स्क्रिप्ट फ़ाइल से कॉन्फ़िगर करेंगे और बाद में ऐप सेंटर में रिमोट कॉन्फिगरेशन जोड़ेंगे।
  • कोई भी स्वचालित बिल्ड बनाने से पहले आपको ऐप सेंटर कॉन्फ़िगरेशन को प्री-इंस्टॉल करने के लिए एक शेल स्क्रिप्ट जोड़नी होगी।
  • अपनी रूट डायरेक्टरी में एक फ़ाइल बनाएँ, इसे appcenter-post-clone.sh नाम दें । , या जो भी नामकरण परंपरा आप चाहते हैं, लेकिन विस्तार एक शेल स्क्रिप्ट में होना चाहिए।
  • इस कोड को नीचे की फाइल में जोड़ें:
  • # This checks the pwd and in case that there is no BUILD_FLAVOR provided and the preinstall runs inside the runner, It should supply the BUILD_FLAVOR with value: dev
    # Sure that this will only run on the PR checks.
    
    
    if [[ "$PWD" == *"/runner/work/"* ]] && [ -z "$BUILD_FLAVOR" ]; then
      echo "exporting BUILD_FLAVOR with the value of `dev`"
      export BUILD_FLAVOR=dev
    fi
    
    if [[ $BUILD_FLAVOR ]]; then
      echo "APPLYING PRE INSTALL SCRIPTS 🤖 🤖 🤖"
    
      echo "Step 1: Get the pwd"
      pwd
    
      echo "Step 2: Change the file's permission"
      sudo chmod 600 $PWD/mobile.github.2022
    
      echo "Step 3: Run the ssh command"
      ssh-add $PWD/mobile.github.2022
    
      echo "Step 4: Update the ssh-agent"
      eval "$(ssh-agent -s)"
    
      echo "Step 5: Write the environment appConfig.ts"
      echo "import { devConfig, stageConfig } from './config-values';" >> ./src/config/index.ts
      case $BUILD_FLAVOR in
        "dev") echo "export const appConfig = devConfig();" >> ./src/config/index.ts
        ;;
        "stage") echo "export const appConfig = stageConfig();" >> ./src/config/index.ts
        ;;
        "production") echo "export const appConfig = liveConfig();" >> ./src/config/index.ts
        ;;
      esac
      echo "Step 6: The appConfig.ts is now: "
      cat ./src/config/index.ts
    else
        echo "SKIPPING PREINSTALL SCRIPTS 💃 💃 💃"
    fi
    

  • एक बार जब आप उपरोक्त सभी आवश्यकताओं को पूरा कर लेते हैं तो आपको ऐप सेंटर में लॉग इन करना होगा
  • आप अपने ऐप (एंड्रॉइड / आईओएस) की सूची देखेंगे जो आपके ऐप के साथ हस्ताक्षरित हैं।
  • अपना एंड्रॉइड प्लेटफॉर्म ऐप चुनें फिर आप बाएं बैनर में कुछ आइटम जैसे अवलोकन, बिल्ड, टेस्ट और डिस्ट्रीब्यूट… आदि देखेंगे।
  • बिल्ड में क्लिक करें और अपनी शाखा खोजें।
  • अपनी शाखा प्राप्त करने के बाद, आप सबसे बाएं बटन में देखेंगे जिसमें 3 बिंदु हैं यदि आप पहली बार कॉन्फ़िगर करने का प्रयास कर रहे हैं, यदि आपने पहले से ही कॉन्फ़िगरेशन किया है तो आपको नीचे दी गई छवि की तरह एक कुंजी आइकन दिखाई देगा:
  • एंड्रॉइड ट्रिगर
  • इस कुंजी को दबाएं फिर आपको उस मोडल जैसा एक मोडल दिखाई देगा
  • कॉन्फ़िगरेशन बनाएं
  • मान लीजिए कि आप मास्टर से अपनी शाखा बना रहे हैं
  • ऐप बनाएं: बिल्ड वेरिएंट में आप ऐप जारी करने और ऐप डीबग करने के बीच चयन कर सकते हैं, आप अपना नोड जेएस संस्करण भी चुन सकते हैं, स्वचालित रूप से वृद्धि संस्करण कोड दबाएं, फिर आप अपना बिल्ड नंबर प्रारूप बिल्ड आईडी या टाइमस्टैम्प चुन सकते हैं, आमतौर पर, हम बिल्ड आईडी का उपयोग कर रहे हैं ।
  • पर्यावरण चर: BUILD_FLAVOR के रूप में नाम जोड़ें और आपकी शाखा के आधार पर मूल्य, यदि आप मास्टर में काम कर रहे हैं तो आपको उत्पाद को मूल्य के रूप में जोड़ना होगा, शाखा को मूल्य के रूप में देव जोड़ें , चरण शाखा मूल्य के रूप में चरण जोड़ें ।
  • साइन बिल्ड: इसमें दबाएं और आपको एक चेकबॉक्स दिखाई देगा जिसमें लिखा होगा कि माई ग्रैडल सेटिंग स्वचालित रूप से साइनिंग को संभालने के लिए पूरी तरह से सेट है, बस इसे चालू करें।
  • डिस्ट्रीब्यूट बिल्ड: इस पर स्विच करें समूह चुनें और अपना गंतव्य चुनें।
  • सहेजने और बनाने के लिए क्लिक करें और Android Build के साथ आनंद लें।
  • आपके पहले निर्माण से पहले, रिएक्ट नेटिव प्रोजेक्ट को कॉन्फ़िगर करने की आवश्यकता है।
  • अपने प्रोजेक्ट का package.json चुनें। ऐप सेंटर स्वचालित रूप से संबंधित एक्सकोड प्रोजेक्ट/कार्यक्षेत्र का पता लगाएगा।
  • ड्रॉपडाउन सूची से बिल्ड को चलाने के लिए Xcode संस्करण का चयन करें। यदि टॉगल "लीगेसी बिल्ड सिस्टम का उपयोग करें" चालू है, तो लीगेसी बिल्ड सिस्टम का उपयोग किया जाएगा जो भी प्रोजेक्ट या वर्कस्पेस सेटिंग्स है। यदि टॉगल "लीगेसी बिल्ड सिस्टम का उपयोग करें" बंद है, तो प्रोजेक्ट या वर्कस्पेस सेटिंग्स से बिल्ड सिस्टम कॉन्फ़िगरेशन का उपयोग किया जाएगा।
  • ट्रिगर बनाएँ : डिफ़ॉल्ट रूप से, हर बार जब कोई डेवलपर किसी कॉन्फ़िगर की गई शाखा में धकेलता है तो एक नया निर्माण शुरू हो जाता है। यदि आप मैन्युअल रूप से एक नया निर्माण ट्रिगर करना पसंद करते हैं, तो आप इस सेटिंग को कॉन्फ़िगरेशन फलक में बदल सकते हैं।
  • इंक्रीमेंट बिल्ड नंबर: सक्षम होने पर, आपके ऐप के प्रोजेक्ट की Info.plist में CFBundleVersion स्वचालित रूप से प्रत्येक बिल्ड के लिए इंक्रीमेंट करता है। परिवर्तन पूर्व-निर्माण होता है और आपके भंडार के लिए प्रतिबद्ध नहीं होगा।
  • कोड साइनिंग: एक सफल बिल्ड एक .ipa फ़ाइल बनाता है। किसी डिवाइस पर बिल्ड को स्थापित करने के लिए, बिल्ड को एक मान्य प्रोविज़निंग प्रोफ़ाइल और प्रमाणपत्र के साथ हस्ताक्षरित होना चाहिए। किसी शाखा से निर्मित बिल्ड पर हस्ताक्षर करने के लिए, कॉन्फ़िगरेशन फलक में कोड साइनिंग सक्षम करें और प्रमाणपत्र के लिए पासवर्ड के साथ एक प्रोविज़निंग प्रोफ़ाइल ( .mobileprovision फ़ाइल) और एक मान्य प्रमाणपत्र (.p12) अपलोड करें।
  • आपके Xcode प्रोजेक्ट की सेटिंग्स आपके द्वारा अपलोड की जा रही फ़ाइलों के अनुकूल होनी चाहिए। ऐप सेंटर के आईओएस कोड साइनिंग और ऐप्पल डेवलपर दस्तावेज़ीकरण के बारे में और पढ़ें ।
  • वितरण समूह को वितरित करें : शाखा से प्रत्येक सफल बिल्ड को पहले बनाए गए वितरण समूह में वितरित करने के लिए कॉन्फ़िगर करें। वितरण अनुभाग के भीतर से एक नया वितरण समूह जोड़ें। हमेशा "सहयोगी" नामक एक डिफ़ॉल्ट वितरण समूह होता है जिसमें वे सभी उपयोगकर्ता शामिल होते हैं जिनके पास ऐप तक पहुंच होती है।
  • एक बार जब आप कॉन्फ़िगरेशन सहेज लेते हैं, तो एक नया निर्माण स्वचालित रूप से प्रारंभ हो जाएगा।
  • बिल्ड निम्न में से किसी एक राज्य में हो सकते हैं:
  • कतारबद्ध - उपलब्ध संसाधनों की प्रतीक्षा में निर्माण कतारबद्ध है
  • भवन - निर्माण चल रहा है और पूर्वनिर्धारित कार्यों को क्रियान्वित कर रहा है
  • सफल हुआ - निर्माण सफलतापूर्वक पूरा हुआ
  • विफल - निर्माण असफल रूप से पूरा हुआ; बिल्ड लॉग को डाउनलोड करके और उसका निरीक्षण करके जो गलत हुआ उसका निवारण करें
  • रद्द - उपयोगकर्ता कार्रवाई के माध्यम से निर्माण रद्द कर दिया गया था या समय समाप्त हो गया था
  • अंत में, अपने रेपो में एक नई प्रतिबद्धता को आगे बढ़ाने का प्रयास करें, ऐप सेंटर एक परीक्षण चलाएगा और आपके कॉन्फ़िगरेशन के अनुसार एक नया संस्करण तैयार करेगा, फिर यह आपके उपयोगकर्ताओं को आपके ऐप के नए बनाए गए संस्करण को डाउनलोड करने के लिए सूचित करेगा।
  • खैर, यह सब ऐप सेंटर के साथ सीआई/सीडी स्थापित करने के बारे में था। हालाँकि ऐप सेंटर में एनालिटिक्स, टेस्ट रन, डायग्नोस्टिक्स, पुश नोटिफिकेशन, क्रैश रिपोर्टिंग और सबसे महत्वपूर्ण कोडपश जैसी कई बेहतरीन विशेषताएं हैं जो ऐप वितरण के लिए गेम-चेंजर है।
  • उम्मीद है, अब आपको CI/CD की बेहतर समझ है और आप ऐप सेंटर के साथ अपना बिल्ड सेट अप करने में सक्षम थे।