मोबाइल डेवलपमेंट में Ruby: Fastlane, CI/CD और ऑटोमेशन

लेखक: IT Sectr प्रकाशित: 2026-02-11 पढ़ने का समय: 8 मिनट

Ruby एक गतिशील इंटरप्रेटेड भाषा है जिसमें सुरुचिपूर्ण सिंटैक्स है, जो Ruby on Rails फ्रेमवर्क के लिए प्रसिद्ध है। मोबाइल डेवलपमेंट में, Ruby का उपयोग मुख्य रूप से Fastlane के माध्यम से किया जाता है — जो iOS और Android अनुप्रयोगों के बिल्ड, परीक्षण और डिप्लॉयमेंट को स्वचालित करने का मानक उपकरण है। Fastlane के आधिकारिक दस्तावेज़ के अनुसार, इस उपकरण का उपयोग दुनिया भर में 100,000 से अधिक परियोजनाओं में किया जाता है।

मुख्य बातें

  • Ruby — एक गतिशील भाषा जो बिल्ड ऑटोमेशन के लिए Fastlane के माध्यम से मोबाइल डेवलपमेंट में उपयोग की जाती है
  • Fastlane — iOS और Android डेवलपमेंट में CI/CD के लिए वास्तविक मानक, Ruby में लिखा गया
  • Fastfile — Ruby-जैसी DSL का उपयोग करने वाली एक कॉन्फ़िगरेशन फ़ाइल जो बिल्ड प्रक्रिया का वर्णन करती है
  • Match और Deliver — प्रमाणपत्र प्रबंधन और App Store प्रकाशन के लिए Fastlane एक्शन
  • Ruby Gems — एक पैकेज मैनेजर जो Fastlane को प्लगइन्स के साथ विस्तारित करने की अनुमति देता है

Ruby क्या है?

Ruby युकिहिरो मात्सुमोतो द्वारा 1995 में बनाई गई एक गतिशील इंटरप्रेटेड ओपन-सोर्स भाषा है। Ruby का मूल सिद्धांत "इष्टतम सरलता" (कम से कम आश्चर्य का सिद्धांत) है। यह भाषा ब्लॉक्स (क्लोज़र), शुद्ध ऑब्जेक्ट-ओरिएंटेड दृष्टिकोण (सब कुछ एक ऑब्जेक्ट है, जिसमें संख्याएँ भी शामिल हैं) और एक शक्तिशाली मेटाप्रोग्रामिंग सिस्टम के लिए जानी जाती है।

Ruby YARV (Yet Another Ruby VM) इंटरप्रेटर पर संस्करण 3.1 से JIT संकलन के साथ चलती है। वर्तमान संस्करण Ruby 3.4 (2025) में डेकोरेटर, बेहतर Prism पार्सर और RBS के माध्यम से प्रयोगात्मक टाइप समर्थन शामिल है। RubyGems — पैकेज मैनेजर — में 200,000 से अधिक जेम्स हैं।

Ruby on Rails Ruby में निर्मित सबसे प्रसिद्ध वेब फ्रेमवर्क है, लेकिन मोबाइल डेवलपमेंट में Ruby का उपयोग अलग तरीके से किया जाता है। इसका मुख्य क्षेत्र Fastlane है: कोड साइनिंग से लेकर स्टोर प्रकाशन तक मोबाइल ऐप जीवनचक्र के सभी चरणों को स्वचालित करने के लिए Ruby स्क्रिप्ट्स और जेम्स का एक इकोसिस्टम।

Fastlane के लिए Ruby सिंटैक्स मूल बातें

Fastlane के साथ काम करने के लिए केवल Ruby की बुनियादी समझ आवश्यक है: मेथड्स, do-end ब्लॉक्स, सिंबल (:symbol) और हैश सिंटैक्स { key: value }। Python के विपरीत, Ruby इंडेंटेशन के बजाय ब्लॉक्स को बंद करने के लिए end का उपयोग करती है। मेथड्स को कोष्ठक के बिना बुलाया जा सकता है — इसका सक्रिय रूप से Fastlane DSL में उपयोग किया जाता है।

ruby
# Fastlane में उपयोग किया जाने वाला मूल Ruby सिंटैक्स
def download_assets(version, platform: "ios")
  paths = {
    ios: "ios/Assets.car",
    android: "android/app/src/main/assets"
  }
  url = "https://cdn.example.com/assets/#{version}/#{paths[platform.to_sym]}"
  puts "Downloading from: #{url}"

  unless File.exist?("temp/assets")
    Dir.mkdir("temp/assets")
  end
  result = system("curl -o temp/assets.zip #{url}")
  raise "Download failed" unless result
end

download_assets("1.2.3", platform: "android")

उदाहरण में, download_assets मेथड एक version आर्गुमेंट और एक वैकल्पिक नामित पैरामीटर platform (डिफ़ॉल्ट "ios") लेता है। #{...} के साथ स्ट्रिंग इंटरपोलेशन मानों को सीधे स्ट्रिंग्स में एम्बेड करता है। unless, if के विपरीत है — यह कोड तब निष्पादित करता है जब स्थिति गलत हो।

Fastlane: Ruby के साथ मोबाइल बिल्ड ऑटोमेशन

Fastlane Ruby में लिखा गया एक ओपन-सोर्स टूल है। gem install fastlane के माध्यम से स्थापित, यह मोबाइल डेवलपर के सबसे नियमित कार्यों को स्वचालित करने के लिए कमांड का एक सेट प्रदान करता है: स्क्रीनशॉट बनाना, कोड साइनिंग, TestFlight और Google Play Console में प्रकाशन।

Fastlane में टूल्स शामिल हैं: sigh (प्रमाणपत्र प्रबंधन), match (टीमों में प्रमाणपत्र सिंक्रनाइज़ेशन), gym (iOS बिल्ड), gradle (Android बिल्ड), deliver (iOS प्रकाशन), supply (Android प्रकाशन), snapshot (स्क्रीनशॉट), scan (परीक्षण)। सभी टूल्स एक ही Fastfile से सुलभ हैं।

बड़ी परियोजनाओं में, Fastlane एक ही पाइपलाइन में 50+ एक्शन संभालता है: संस्करण वृद्धि, CDN से एसेट डाउनलोड, बिल्ड, साइनिंग, App Store Connect पर अपलोड, Slack सूचनाएँ भेजना। पूरी पाइपलाइन एक ही कमांड से चलती है: fastlane release।

Fastfile: बिल्ड पाइपलाइन कॉन्फ़िगरेशन

Fastfile एक Ruby-जैसी DSL फ़ाइल है जो एक्शन (लेन) के अनुक्रम का वर्णन करती है। प्रत्येक लेन एक अलग कार्य है: beta (परीक्षण बिल्ड), release, screenshots। लेन पारित मापदंडों के साथ अन्य लेन को कॉल कर सकते हैं।

ruby
# Fastfile — iOS ऐप बिल्ड पाइपलाइन कॉन्फ़िगरेशन
fastlane_version "2.220.0"

default_platform :ios

platform :ios do
  desc "TestFlight बिल्ड बनाना और डिप्लॉय करना"
  lane :beta do |options|
    increment_build_number(
      build_number: options[:build]
    )
    match(type: :appstore)
    gym(
      scheme: "MyApp",
      export_method: "app-store",
      configuration: "Release"
    )
    upload_to_testflight(
      app_identifier: "com.example.myapp"
    )
    slack(
      message: "Build #{options[:build]} TestFlight पर अपलोड हुआ"
    )
  end
end

बीटा लेन क्रमिक रूप से निष्पादित होता है: बिल्ड नंबर बढ़ाएँ (increment_build_number), प्रमाणपत्र सिंक करें (match), आर्काइव बनाएँ (gym), TestFlight पर अपलोड करें (upload_to_testflight), और Slack सूचना भेजें। :build पैरामीटर एक नामित आर्गुमेंट के रूप में लेन को पास किया जाता है।

Fastfile में Android कॉन्फ़िगरेशन

Fastlane एक ही Fastfile में दोनों प्लेटफ़ॉर्म का समर्थन करता है। Android के लिए, gradle, supply और google_play_track_version_codes एक्शन के साथ platform :android के अंदर एक लेन का उपयोग करें।

ruby
platform :android do
  desc "APK बनाना और Google Play Internal Testing में प्रकाशित करना"
  lane :beta do
    gradle(
      task: "assemble",
      build_type: "Release",
      flavor: "Production"
    )
    supply(
      track: "internal",
      apk_paths: ["app/build/outputs/apk/release/app-release.apk"]
    )
  end
end

iOS और Android के लिए मुख्य Fastlane एक्शन

Fastlane में 200 से अधिक अंतर्निहित एक्शन शामिल हैं। नीचे मोबाइल डेवलपमेंट के लिए सबसे महत्वपूर्ण हैं, श्रेणी के अनुसार व्यवस्थित।

एक्शनप्लेटफ़ॉर्मउद्देश्य
matchiOSGit के माध्यम से प्रमाणपत्र और प्रोविज़निंग प्रोफ़ाइल सिंक करें
gymiOS.app और .ipa आर्काइव बनाएँ
scaniOSसिम्युलेटर पर UI परीक्षण चलाएँ
snapshotiOSविभिन्न उपकरणों पर स्वचालित स्क्रीनशॉट निर्माण
deliveriOSबिल्ड, स्क्रीनशॉट और मेटाडेटा App Store Connect पर अपलोड करें
pilotiOSTestFlight प्रबंधन: बिल्ड अपलोड करें, परीक्षक जोड़ें
gradleAndroidGradle कार्य चलाएँ: assemble, test, bundle
supplyAndroidAPK/AAB और मेटाडेटा Google Play Console पर अपलोड करें
screengrabAndroidGoogle Play के लिए स्वचालित स्क्रीनशॉट
firebase_app_distributionदोनोंबिल्ड Firebase App Distribution पर अपलोड करें

Match: सुरक्षित प्रमाणपत्र प्रबंधन

match डेवलपर्स के बीच iOS प्रमाणपत्र और प्रोविज़निंग प्रोफ़ाइल को सिंक्रनाइज़ करने के लिए एक Fastlane जेम है। सभी रहस्य एक एन्क्रिप्टेड Git रिपॉजिटरी या S3 में संग्रहीत होते हैं। Match स्वचालित रूप से प्रमाणपत्र उत्पन्न करता है यदि वे गायब हैं और समाप्ति पर उन्हें नवीनीकृत करता है।

ruby
# नए प्रोजेक्ट के लिए match आरंभ करना
$ fastlane match init

# App Store प्रमाणपत्र बनाना और सिंक करना
$ fastlane match appstore

# टीम के लिए Development प्रमाणपत्र बनाना
$ fastlane match development

# समाप्ति पर सभी प्रमाणपत्र नवीनीकृत करना
$ fastlane match --force

Match एक पासफ़्रेज़ के साथ निजी कुंजियाँ संग्रहीत करता है जो केवल डेवलपर्स को ज्ञात होती है। प्रत्येक डेवलपर प्रमाणपत्र रिपॉजिटरी को क्लोन करता है और वर्तमान प्रोफ़ाइल स्थापित करने के लिए match चलाता है। Apple प्रमाणपत्र 1 वर्ष के लिए वैध हैं; match स्वचालित रूप से उन्हें नवीनीकृत करता है।

Fastlane को CI/CD सिस्टम के साथ एकीकृत करना

Fastlane किसी भी CI/CD प्लेटफ़ॉर्म के साथ एकीकृत होता है: GitHub Actions, GitLab CI, CircleCI, Bitrise, Jenkins और Xcode Cloud (xcode-build के माध्यम से)। Fastlane CI पर fastlane <lane_name> का उपयोग करके चलता है और यदि कोई चरण विफल होता है तो एक त्रुटि कोड लौटाता है।

GitHub Actions सेटअप में Ruby, fastlane स्थापित करना और bundle exec fastlane के माध्यम से लेन चलाना शामिल है। iOS बिल्ड के लिए macOS रनर की आवश्यकता होती है। Android बिल्ड ubuntu-latest का उपयोग कर सकते हैं, जो सस्ता है।

yaml
# .github/workflows/deploy.yml — CI/CD Fastlane के साथ
name: Deploy Mobile App
on:
  push:
    branches: [main]

jobs:
  ios-deploy:
    runs-on: macos-14
    steps:
      - uses: actions/checkout@v4
      - uses: ruby/setup-ruby@v1
        with:
          ruby-version: "3.3"
      - run: bundle install
      - run: bundle exec fastlane beta
      - env:
          MATCH_PASSWORD: ${{ secrets.MATCH_PASSWORD }}

वर्कफ़्लो main पर पुश करने पर चलता है। macOS रनर Fastfile से bundle exec fastlane beta निष्पादित करता है। MATCH_PASSWORD प्रमाणपत्र डिक्रिप्शन के लिए GitHub Secrets के माध्यम से पास किया जाता है। लेन पूरी होने के बाद, एक Slack एक्शन सूचना भेजता है।

Ruby Gems और Fastlane प्लगइन्स

RubyGems Ruby के लिए पैकेज मैनेजर है। Fastlane को प्लगइन्स — जेम्स के माध्यम से विस्तारित किया जाता है जो नए एक्शन जोड़ते हैं। fastlane-plugin-versioning प्लगइन संस्करणों का प्रबंधन करता है, fastlane-plugin-firebase_app_distribution बिल्ड को Firebase पर अपलोड करता है। GitHub पर 500 से अधिक Fastlane प्लगइन्स हैं।

प्रोजेक्ट रूट पर Gemfile पुनरुत्पादनीय बिल्ड के लिए सभी निर्भरताओं के संस्करणों को फिक्स करता है। bundle install Gemfile.lock से जेम्स स्थापित करता है। मोबाइल डेवलपमेंट के लिए आवश्यक जेम्स में शामिल हैं: fastlane, cocoapods (iOS निर्भरताएँ), xcodeproj (.xcodeproj हेरफेर)।

ruby
# मोबाइल प्रोजेक्ट के लिए Gemfile
source "https://rubygems.org"

gem "fastlane", "~> 2.220"

plugins_path = File.join(File.dirname(__FILE__), 'fastlane', 'Pluginfile')
eval_gemfile(plugins_path) if File.exist?(plugins_path)

Fastlane बनाम विकल्प: दृष्टिकोण तुलना

Fastlane एकमात्र ऑटोमेशन टूल नहीं है। आइए एक मोबाइल टीम के लिए महत्वपूर्ण मानदंडों के आधार पर इसकी तुलना मुख्य विकल्पों से करें।

मानदंडFastlane (Ruby)Bitrise (वेब)Xcode Cloud (Apple)GitHub Actions (YAML)
लचीलापनअधिकतम (कोड)मध्यम (चरण)निम्न (सीमित)उच्च
iOSपूर्ण समर्थनपूर्णपूर्ण (अंतर्निहित)स्व-होस्टेड macOS के माध्यम से
Androidपूर्ण समर्थनपूर्णनहींपूर्ण
प्रमाणपत्र (match)अंतर्निहितCode Signing के माध्यम सेस्वचालितfastlane के माध्यम से
स्थानीय निष्पादनहाँनहीं (केवल CI)नहींact के माध्यम से
प्लगइन्स500+200+ एकीकरणकोई नहीं20,000+ एक्शन

Fastlane जटिल पाइपलाइनों के लिए सबसे लचीला उपकरण बना हुआ है। Bitrise Ruby डेवलपर के बिना टीमों के लिए सुविधाजनक है। Xcode Cloud सरल iOS परियोजनाओं के लिए काम करता है। GitHub Actions आदर्श है यदि टीम पहले से GitHub का उपयोग करती है।

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

यदि Kotlin और Swift मौजूद हैं तो मोबाइल डेवलपमेंट में Ruby का उपयोग क्यों करें?

Ruby का उपयोग मोबाइल एप्लिकेशन लिखने के लिए नहीं, बल्कि Fastlane के माध्यम से बिल्ड, परीक्षण और डिप्लॉयमेंट प्रक्रियाओं को स्वचालित करने के लिए किया जाता है। Fastlane iOS और Android डेवलपमेंट में CI/CD के लिए वास्तविक मानक है।

क्या Fastlane केवल macOS पर काम करता है?

Fastlane macOS, Linux और Windows पर काम करता है, लेकिन iOS बिल्ड के लिए Xcode और macOS की आवश्यकता होती है। Android बिल्ड किसी भी प्लेटफ़ॉर्म पर चल सकते हैं। डेवलपर्स स्थानीय रूप से macOS का उपयोग करते हैं, और CI पर — iOS के लिए macOS और Android के लिए Linux।

क्या Fastlane के साथ काम करने के लिए Ruby सीखना आवश्यक है?

Fastlane के साथ काम करने के लिए Ruby की बुनियादी समझ पर्याप्त है। Fastlane Fastfile में Ruby-जैसी DSL का उपयोग करता है। सामान्य कार्यों के लिए, जेम्स, do-end ब्लॉक्स और बुनियादी सिंटैक्स का ज्ञान पर्याप्त है। गहन Ruby ज्ञान की आवश्यकता नहीं है।

Fastlane के क्या विकल्प मौजूद हैं?

विकल्पों में शामिल हैं: Gradle Android के लिए (अंतर्निहित), Xcode Cloud (Apple), Bitrise (वेब इंटरफ़ेस), GitHub Actions (YAML)। Fastlane एक्शन और प्लगइन्स के समृद्ध इकोसिस्टम के कारण सबसे लचीला उपकरण बना हुआ है।

क्या Fastlane बड़ी टीमों के लिए उपयुक्त है?

हाँ, Fastlane का उपयोग बड़ी कंपनियों द्वारा किया जाता है। सभी एक्शन और कॉन्फ़िगरेशन फ़ाइलें रिपॉजिटरी में वर्शन की जाती हैं, और match रिपॉजिटरी या S3 में प्रमाणपत्रों का सुरक्षित भंडारण सुनिश्चित करता है।

सारांश

  • Ruby — एक गतिशील भाषा जो बिल्ड ऑटोमेशन के लिए Fastlane इकोसिस्टम के माध्यम से मोबाइल डेवलपमेंट में उपयोग की जाती है
  • Fastlane — iOS और Android के लिए CI/CD मानक: 200+ एक्शन, 500+ प्लगइन्स, 100,000+ परियोजनाएँ
  • Fastfile — विभिन्न बिल्ड परिदृश्यों के लिए लेन के साथ Ruby-जैसी DSL: beta, release, screenshots
  • Match डेवलपर्स के बीच iOS प्रमाणपत्र और प्रोविज़निंग प्रोफ़ाइल को सिंक्रनाइज़ करने की समस्या हल करता है
  • Deliver और Supply — मेटाडेटा और स्क्रीनशॉट के साथ App Store और Google Play पर प्रकाशन के लिए एक्शन
  • CI/CD एकीकरण — Fastlane GitHub Actions, GitLab CI, CircleCI और Bitrise के साथ काम करता है
  • लचीलापन — Fastlane प्रोग्रामेबल Ruby पाइपलाइन के कारण Bitrise और Xcode Cloud से बेहतर है

हम एक मोबाइल एप्लिकेशन टर्नकी विकसित करेंगे

IT Sectr 2017 से स्टार्टअप और व्यवसायों के लिए iOS और Android एप्लिकेशन बनाता है। हम आपको सलाह देंगे और सर्वोत्तम समाधान प्रस्तावित करेंगे।

परियोजना पर चर्चा करें

यह भी पढ़ें