इस दस्तावेज़ में, Apple प्लैटफ़ॉर्म पर रिलीज़ से पहले की टेस्टिंग के वर्कफ़्लो को CI/CD एनवायरमेंट में बनाए रखने और बार-बार इस्तेमाल करने के लिए, Firebase App Distribution और fastlane का इस्तेमाल करने के सबसे सही तरीकों के बारे में बताया गया है. इस दस्तावेज़ में, fastlane पर फ़ोकस किया गया है. हालांकि, इसमें Firebaseकंसोल, FirebaseCLI, और सार्वजनिक Firebase App Distribution API के ज़रिए उपलब्ध समाधानों के बारे में भी बताया गया है, ताकि आपको ज़्यादा फ़्लेक्सिबिलिटी मिल सके. इसमें रिलीज़ और टेस्टर की सीमाओं के बारे में भी बताया गया है, ताकि आपको सबसे अच्छा अनुभव मिल सके.
अगर Android का भी इस्तेमाल किया जा रहा है, तो CI/CD का इस्तेमाल करके, क्वालिटी अश्योरेंस (क्यूए) टेस्टर को Android ऐप्लिकेशन डिस्ट्रिब्यूट करने के सबसे सही तरीके लेख पढ़ें.
शुरू करने से पहले
इस दस्तावेज़ में बताए गए सबसे सही तरीकों को लागू करने से पहले, पक्का करें कि आपने App Distribution के लिए, Firebase कंसोल में हर ऐप्लिकेशन की सुविधा चालू की हो. अगर आपने App Distribution की सुविधा चालू नहीं की है, तो आपको 404 गड़बड़ी दिखेगी.
App Distribution की सुविधा चालू करने के लिए, यह तरीका अपनाएं:
App Distribution पेज Firebase कंसोल में खोलें.
अपना iOS ऐप्लिकेशन चुनें.
शुरू करें पर क्लिक करें.
CI/CD का इस्तेमाल करके, रिलीज़ से पहले की टेस्टिंग के वर्कफ़्लो को ऑटोमेट करना
अगर आपको अपने टेस्टर के लिए ऐप्लिकेशन बनाने और रिलीज़ करने की प्रोसेस को ऑटोमेट करना है और CI/CD का इस्तेमाल करना है, तो हमारा सुझाव है कि आप fastlane का इस्तेमाल करें. एक और विकल्प है कि Firebase CLI का इस्तेमाल किया जाए. इससे आपको Firebase के कई प्रॉडक्ट ऐक्सेस करने की सुविधा मिलती है.
fastlane का इस्तेमाल करना
अपने CI/CD पाइपलाइन में App Distribution को इंटिग्रेट करने के लिए, fastlane का इस्तेमाल करें. यह एक ओपन सोर्स टूल है, जो iOS और Android ऐप्लिकेशन बनाने और रिलीज़ करने की प्रोसेस को ऑटोमेट करता है. टेस्टिंग के लिए, अपने ऐप्लिकेशन के सबसे नए वर्शन को टेस्टर के साथ अपने-आप डिस्ट्रिब्यूट करने से, यह पक्का किया जा सकता है कि टेस्टर के पास हमेशा आपके ऐप्लिकेशन का सबसे अप-टू-डेट वर्शन हो.
App Distribution को fastlane के साथ इंटिग्रेट करने का तरीका जानने के लिए, fastlane का इस्तेमाल करके, iOS ऐप्लिकेशन को टेस्टर के साथ डिस्ट्रिब्यूट करना लेख पढ़ें. इसके अलावा, कोडलैब देखें. इसमें fastlane को इंटिग्रेट करने की प्रोसेस के बारे में सिलसिलेवार तरीके से बताया गया है.
Firebase CLI का इस्तेमाल करना
App Distribution के ज़रिए उपलब्ध कराए गए Firebase CLI टूल का इस्तेमाल करके, प्रोग्राम के ज़रिए बिल्ड को टेस्टर के साथ डिस्ट्रिब्यूट करें. किसी बिल्ड के लिए, टेस्टर और रिलीज़ नोट तय किए जा सकते हैं.
ऐप्लिकेशन का Firebase App ID तय करके, iOS के सबसे नए बिल्ड test.ipa को डिस्ट्रिब्यूट करें. इसके अलावा, रिलीज़ नोट और टेस्टर के ईमेल वाली फ़ाइल को जोड़ा जा सकता है:
firebase appdistribution:distribute test.ipa \ --app 1:1234567890:ios:0a1b2c3d4e5f67890 \ --release-notes "Bug fixes and improvements" --testers-file testers.txt
बिल्ड को ऑटोमेट करने के लिए, Firebase CLI का इस्तेमाल करने के बारे में ज़्यादा जानने के लिए, Firebase CLI का इस्तेमाल करके, iOS ऐप्लिकेशन को टेस्टर के साथ डिस्ट्रिब्यूट करना लेख पढ़ें.
पुष्टि करने के लिए, सेवा के क्रेडेंशियल का इस्तेमाल करना
App Distribution के App Distribution fastlane प्लग-इन या Firebase CLI का इस्तेमाल, सेवा खातों के साथ करें. ये प्लग-इन और CLI, ऐप्लिकेशन के डिफ़ॉल्ट क्रेडेंशियल का फ़ायदा उठाते हैं और आपको अपने CI को मैनेज करने में मदद करते हैं. सेवा खाता, एक तरह का Google खाता होता है. यह उपयोगकर्ताओं के बजाय, ऐप्लिकेशन के लिए होता है. आपका CI सिस्टम, आपके App Distribution वर्कलोड को चलाने के लिए, सेवा खातों का इस्तेमाल कर सकता है. ज़्यादा जानने के लिए, सेवा खाते से पुष्टि करना लेख पढ़ें.
अगर वर्कलोड आइडेंटिटी फ़ेडरेशन का इस्तेमाल किया जा रहा है, तो सेवा खाते की कुंजी के बजाय, क्रेडेंशियल कॉन्फ़िगरेशन फ़ाइल जनरेट और इस्तेमाल की जा सकती है.
रिलीज़ की सीमाओं के बारे में जानकारी
App Distribution हर ऐप्लिकेशन के लिए ज़्यादा से ज़्यादा 1,000 रिलीज़ को सपोर्ट करता है. इसका मतलब है कि रिलीज़ की सीमा से ज़्यादा होने पर, App Distribution सीमा से ज़्यादा की सबसे पुरानी रिलीज़ को अपने-आप मिटा देता है. रिलीज़ की सीमाओं को मैनेज करने का तरीका जानने के लिए, ऐप्लिकेशन की रिलीज़ कितने समय तक उपलब्ध रहती हैं? लेख पढ़ें.
कई रिलीज़ में, टेस्टर का एक ही सेट जोड़ना
अगर आपको अपनी रिलीज़ में ज़्यादा संख्या में टेस्टर जोड़ने हैं, तो एक साथ कई टेस्टर को मैनेज करने की सुविधा का इस्तेमाल करें.App Distribution
हमारा सुझाव है कि एक ही टेस्टर को कई रिलीज़ में जोड़ने के लिए, ग्रुप का इस्तेमाल करें. ग्रुप, ऐक्सेस कंट्रोल लिस्ट की तरह काम करता है. किसी टेस्टर को ग्रुप से हटाने पर, उसके पास उस ग्रुप में डिस्ट्रिब्यूट की गई सभी रिलीज़ का ऐक्सेस नहीं रहता. ज़्यादा जानने के लिए, किसी ग्रुप में टेस्टर जोड़ना और हटाना लेख पढ़ें.
अगर आपको कई टेस्टर को मैनेज करना है, तो एक साथ कई टेस्टर जोड़े और हटाए जा सकते हैं Firebase कंसोल का इस्तेमाल करके. टेस्टर को जोड़ने और हटाने की प्रोसेस को ऑटोमेट करने के लिए, Firebase CLI, fastlane, या सार्वजनिक Firebase App Distribution API का इस्तेमाल करें.
टेस्टर की सीमाओं के बारे में जानकारी
App Distribution किसी Firebase प्रोजेक्ट या किसी App Distribution ग्रुप में जोड़े जा सकने वाले टेस्टर की संख्या सीमित करता है. इन सीमाओं से ज़्यादा होने पर, अपने ऐप्लिकेशन को ज़्यादा टेस्टर के साथ डिस्ट्रिब्यूट नहीं किया जा सकेगा. टेस्टर की सीमाओं के बारे में ज़्यादा जानने के लिए, क्या मेरे ऐप्लिकेशन में टेस्टर जोड़ने की कोई सीमा है? लेख पढ़ें.
iOS के नए टेस्टर डिवाइसों को मैनेज करना और उन्हें अपने-आप जोड़ना
iOS के ज़्यादा टेस्टर डिवाइस रजिस्टर करने में आपकी मदद करने के लिए, App Distribution आपको Apple Developer Portal में iOS के टेस्टर डिवाइसों को मैनेज करने में मदद करता है. इसके लिए, वह आपको ईमेल या CSV फ़ाइलों का इस्तेमाल करके, iOS के नए टेस्टर डिवाइसों के बारे में जानकारी देता है. ज़्यादा जानने के लिए, CSV फ़ाइलों से टेस्टर इंपोर्ट करना लेख पढ़ें. इसके अलावा, fastlane का इस्तेमाल करके, नए डिवाइसों को प्रोग्राम के ज़रिए एक्सपोर्ट किया जा सकता है .
fastlane ऐक्शन सेट अप करने का तरीका जानने के लिए, iOS के रिलीज़ से पहले वाले वर्शन को App Distribution और fastlane की मदद से तेज़ी से डिस्ट्रिब्यूट करना लेख पढ़ें. इस ऐक्शन की मदद से, यूडीआईडी अपने-आप डाउनलोड हो जाते हैं. इसके बाद, उन्हें Apple Developer Console में जोड़ा जाता है. फिर, ऐप्लिकेशन को फिर से बनाया जाता है और उसे डिस्ट्रिब्यूट किया जाता है.
संभावित टेस्टर को, टेस्टिंग के लिए खुद से रजिस्टर करने की अनुमति देना
हमारा सुझाव है कि अपने ऐप्लिकेशन को ज़्यादा टेस्टर के साथ डिस्ट्रिब्यूट करने के लिए, न्योते के लिंक का इस्तेमाल करें. न्योते का लिंक, एक यूनीक यूआरएल होता है. इसकी मदद से, टेस्टर अपना ईमेल पता डालकर, किसी ऐप्लिकेशन की टेस्टिंग के लिए साइन अप कर सकते हैं. उपयोगकर्ताओं को अपने-आप, ऐप्लिकेशन के टेस्टर की सूची में जोड़ने की अनुमति देने से, इंटरनल टेस्टिंग के लिए ज़्यादा उपयोगकर्ता मिल सकते हैं.
न्योते के लिंक का इस्तेमाल, कंपनी के डॉगफ़ूड प्रोग्राम, क्यूए की बड़ी टीम वाले संगठनों, और डेवलपर ग्रुप के लिए किया जा सकता है. इन ग्रुप के क्लाइंट, टेस्टर के ऐक्सेस को कंट्रोल कर सकते हैं.
हमारा सुझाव है कि किसी ग्रुप के लिए, न्योते का लिंक बनाएं. न्योते के लिंक का इस्तेमाल करके साइन अप करने वाले हर टेस्टर को, बाद की रिलीज़ में अपने-आप जोड़ दिया जाता है.
ज़्यादा जानने के लिए, न्योते के लिंक बनाना और किसी ग्रुप में टेस्टर जोड़ना और हटाना लेख पढ़ें.
पक्का करें कि टेस्टर, आपके चुने हुए वर्शन की टेस्टिंग कर रहे हों
नया वर्शन अपलोड होने पर, आपके टेस्टर को ईमेल से सूचना मिलती है. इस सूचना के अलावा, रिलीज़ लिंक और इन-ऐप्लिकेशन अलर्ट जैसी सुविधाओं का इस्तेमाल किया जा सकता है. इससे यह पक्का किया जा सकता है कि आपके टेस्टर, ऐप्लिकेशन के उस वर्शन की टेस्टिंग कर रहे हों जिसे आपने चुना है:
रिलीज़ लिंक: इस सुविधा का इस्तेमाल तब करें, जब आपको टेस्टर के साथ कोई खास वर्शन शेयर करना हो. रिलीज़ लिंक का इस्तेमाल करने का तरीका जानने के लिए, Firebase कंसोल का इस्तेमाल करके, iOS ऐप्लिकेशन को टेस्टर के साथ डिस्ट्रिब्यूट करना लेख पढ़ेंFirebase लेख पढ़ें. ये लिंक, हमारे Firebase और fastlane कमांड-लाइन (सीएलआई) टूल के साथ भी उपलब्ध हैं. इनका इस्तेमाल, बिल्ड ऑटोमेशन टूल के साथ किया जा सकता है.
इन-ऐप्लिकेशन अलर्ट: इन अलर्ट का इस्तेमाल तब करें, जब आपको यह पक्का करना हो कि आपके टेस्टर, आपके ऐप्लिकेशन के सबसे नए वर्शन की टेस्टिंग कर रहे हों. App Distribution iOS SDK को इंटिग्रेट करके, आपके ऐप्लिकेशन के नए बिल्ड उपलब्ध होने पर, टेस्टर को सीधे ऐप्लिकेशन में अलर्ट दिखाए जा सकते हैं. इन-ऐप्लिकेशन अलर्ट जोड़ने का तरीका जानने के लिए, नए बिल्ड के बारे में टेस्टर को सूचना देना लेख पढ़ें.
कंपनी छोड़ने वाले टेस्टर का ऐक्सेस अपने-आप हटाना
CI/CD की इंटरनल टेस्टिंग का फ़्लो चालू होने के बाद, आपको यह पक्का करना होगा कि कंपनी छोड़ने वाले लोगों के पास, आपके इंटरनल बिल्ड का ऐक्सेस न हो. बिल्ड के लिए टेस्टर के ऐक्सेस को मैनेज करने में आपकी मदद करने के लिए, App Distribution ये विकल्प उपलब्ध कराता है:
fastlane: अपनी Fastfile फ़ाइल का इस्तेमाल करें या सीधे fastlane ऐक्शन चलाएं. टेस्टर को हटाने के लिए, fastlane का इस्तेमाल करने के बारे में ज़्यादा जानने के लिए, fastlane का इस्तेमाल करके, iOS ऐप्लिकेशन को टेस्टर के साथ डिस्ट्रिब्यूट करना लेख पढ़ें.
**सार्वजनिक Firebase App Distribution API: **
testers.batchRemoveएंडपॉइंट का इस्तेमाल करें.