Fastlane: co to je, automatizace buildů a publikací

Autor: IT Sectr Publikováno: 2026-02-13 Doba čtení: 10 min

Fastlane — nástroj pro automatizaci buildů a publikací mobilních aplikací pro iOS a Android. Fastlane spravuje podepisování kódu, build, spouštění testů, vytváření snímků obrazovky a nahrávání do App Store Connect a Google Play Console. Je to de facto standard pro CI/CD v mobilním vývoji.

Hlavní závěry

  • Fastlane automatizuje celý pipeline mobilního vydání: build, testování, podepisování a publikaci jedním příkazem
  • Fastfile — konfigurační soubor v Ruby, ve kterém jsou popsány lanes — pojmenované scénáře automatizace
  • Podpora iOS a Android — Fastlane pracuje s Xcode, Gradle, App Store Connect, Google Play, TestFlight a Firebase
  • match a sigh — správa certifikátů a provisioning profiles pro iOS vývoj
  • Integrace s CI/CD — Fastlane se integruje do GitHub Actions, GitLab CI, Bitrise, Jenkins a CircleCI

Fastlane — co to je

Fastlane — je open-source nástroj, který automatizuje rutinní úkoly mobilního vývoje: build aplikace, spouštění testů, vytváření snímků obrazovky, správu certifikátů, nahrávání buildů do TestFlight, App Store a Google Play. Fastlane je napsán v Ruby a je distribuován přes RubyGems příkazem gem install fastlane.

Fastlane se objevil v roce 2015 jako nástroj pro iOS, ale rychle se rozšířil na Android. Dnes je to ekosystém desítek akcí — vestavěných příkazů, které lze kombinovat do scénářů nazývaných lanes. Každý lane provádí konkrétní úkol: například build_release sestaví release verzi a deploy_beta nahraje build do TestFlight.

Fastlane používají společnosti jako Uber, Airbnb, Snapchat, Twitter a Shopify. Podle průzkumu z roku 2024 používá Fastlane ve svých projektech více než 60% iOS vývojářů. Nástroj podporuje jak lokální spouštění, tak integraci s cloudovými CI systémy, což z něj činí de facto standard pro mobilní CI/CD.

ruby
# Instalace Fastlane
sudo gem install fastlane -NV

# Inicializace v projektu
fastlane init

Po inicializaci Fastlane vytvoří adresář fastlane/ se třemi soubory: Fastfile (scénáře), Appfile (nastavení aplikace) a Matchfile (nastavení certifikátů). Tato struktura zůstává stejná pro obě platformy — iOS a Android.

Fastfile a lanes

Hlavní konfigurační soubor Fastlane — Fastfile. Nachází se v adresáři fastlane/ v kořenu projektu. Fastfile se píše v Ruby: každý lane je pojmenovaný blok s posloupností akcí. Lane může přijímat parametry, volat jiné lanes a vracet hodnoty.

ruby
# fastlane/Fastfile — příklad pro iOS
default_platform(:ios)

platform :ios do
  desc "Build and upload to TestFlight"
  lane :beta do
    match(type: "appstore")
    gym(scheme: "MyApp", configuration: "Release")
    pilot(skip_waiting_for_build: true)
  end

  desc "Deploy to App Store"
  lane :release do
    ensure_git_status_clean
    match(type: "appstore")
    gym(scheme: "MyApp")
    deliver(
      skip_metadata: true,
      skip_screenshots: true
    )
    push_to_git_remote(tags: true)
  end
end

Každý lane se spouští příkazem fastlane ios beta nebo fastlane ios release. Fastfile podporuje proměnné, podmínky, cykly a volání externích skriptů — je to plnohodnotný Ruby soubor. Vývojáři mohou znovu používat kód pomocí private_lane (lokální metody) a import z jiných Fastfile.

Fastlane poskytuje více než 200 vestavěných akcí pro většinu úkolů. Pokud potřebná akce neexistuje, lze napsat vlastní v Ruby nebo zavolat shell příkaz přes sh("..."). Akce mohou přijímat parametry — nastavení buildu, cesty, přístupové tokeny — a vracet výsledek pro použití v dalších krocích.

Automatizace iOS buildů

Fastlane pro iOS řeší tři klíčové problémy: správu certifikátů a provisioning profiles, build IPA přes Xcode a publikaci do App Store Connect a TestFlight. Každý z těchto úkolů je pokryt samostatnou akcí.

match — akce pro správu certifikátů. Ukládá všechny certifikáty a provisioning profiles do šifrovaného Git repozitáře. Každý vývojář a CI server používají stejnou sadu souborů, což eliminuje konflikty a problémy s prošlými certifikáty. Match automaticky aktualizuje profily při přidávání nových zařízení.

sigh — vytváří a stahuje provisioning profile přes Apple Developer Portal. Používá se, když je potřeba rychle získat profil pro konkrétní typ: development, ad-hoc nebo appstore.

gym — build IPA. Gym obaluje xcodebuild s optimálními parametry, automaticky vybírá schéma, konfiguraci, export options a vytváří podepsaný IPA. Příklad: gym(scheme: "MyApp", export_method: "app-store").

pilot — správa TestFlight. Nahraje build, přidá testery, sleduje stav recenze. deliver — plná publikace v App Store, včetně metadat, snímků obrazovky, ceny a verzí.

ruby
# Build a publikace iOS aplikace
lane :deploy_ios do
  cocoapods
  match(type: "appstore", readonly: true)
  gym(scheme: "MyApp", export_method: "app-store")
  pilot(changelog: "Bug fixes and performance improvements")
end

Pro práci s App Store Connect jsou vyžadovány přístupové tokeny. Fastlane podporuje dva způsoby autentizace: App Store Connect API Key (doporučeno) a Apple ID s dvoufaktorovou autentizací. API klíče jsou pro CI/CD výhodnější, protože nevyžadují interaktivní zadávání hesla.

AkceÚčelRuční ekvivalent
matchSpráva certifikátů a profilůApple Developer Portal
sighVytvoření provisioning profileXcode + Developer Portal
gymBuild IPAxcodebuild + xcrun
pilotNahrání do TestFlightXcode Organizer
deliverPublikace v App StoreApp Store Connect Web
scanSpouštění UI testůxcodebuild test

Automatizace Android buildů

Na Androidu Fastlane automatizuje build přes Gradle, podepisování APK a AAB, nahrávání do Google Play Console a Firebase App Distribution.

gradle — hlavní akce pro build Androidu. Volá Gradle wrapper s potřebnými úkoly: gradle(task: "assembleRelease") nebo gradle(task: "bundleRelease") pro AAB. Lze předávat příznaky, proměnné prostředí a cestu k gradle.properties.

supply — nahrávání APK nebo AAB do Google Play Console. Supply spravuje verze, tracky (internal, alpha, beta, production), poznámky k vydání, cenu a zemi distribuce. Příklad: supply(track: "beta", release_status: "completed").

screengrab — vytváření snímků obrazovky pro Google Play. Spouští instrumentační testy, které pořizují snímky obrazovky aplikace na různých zařízeních a jazycích. Získané snímky se nahrávají přes supply.

ruby
# Build a publikace Android aplikace
lane :deploy_android do
  gradle(task: "clean bundleRelease")
  supply(
    track: "beta",
    release_status: "completed",
    version_code: 42
  )
end
AkceÚčelRuční ekvivalent
gradleBuild přes Gradle./gradlew assembleRelease
supplyNahrání do Google PlayGoogle Play Console Web
screengrabVytváření snímků obrazovkyRuční snímek + ImageMagick
firebase_app_distributionDistribuce přes FirebaseFirebase Console Upload

Integrace s CI/CD

Fastlane je navržen pro práci v CI/CD pipeline. Správně zpracovává neinteraktivní režim, proměnné prostředí a artefakty buildu. Níže — příklady integrace s populárními CI systémy.

V GitHub Actions se Fastlane spouští jako Ruby skript. Typický workflow: instalace Ruby a Fastlane, nastavení klíčů (certifikáty, API tokeny přes secrets), spuštění lane. Pro iOS je vyžadován macOS runner; Android funguje na ubuntu-latest.

V GitLab CI se Fastlane používá v .gitlab-ci.yml s podobným schématem: instalace závislostí, spuštění fastlane, předání artefaktů. GitLab CI podporuje macOS a Linux runners.

Bitrise — specializované CI/CD pro mobilní aplikace — má vestavěnou podporu pro Fastlane. Bitrise Workflow může volat Fastlane Step nebo spouštět libovolné skripty s fastlane. Bitrise spravuje certifikáty prostřednictvím svého vlastního Code Signing Manageru.

ruby
# Fastfile pro CI/CD s podmíněným spouštěním testů
lane :ci_test do
  scan(scheme: "MyApp", code_coverage: true)
end

lane :ci_beta do
  ensure_git_status_clean
  version_bump_podspec(path: "MyApp.podspec")
  match(type: "appstore", readonly: true)
  gym(scheme: "MyApp", export_method: "app-store")
  pilot(distribute_external: true)
end

Důležitým aspektem integrace CI/CD — ukládání tajemství. Fastlane používá soubor .env přes dotenv a proměnné prostředí. Pro iOS jsou kritické proměnné: MATCH_PASSWORD, FASTLANE_APPLE_API_KEY, FASTLANE_APPLE_API_KEY_ID. Pro Android: SUPPLY_JSON_KEY_DATA — obsah servisního účtu Google Play.

Populární Fastlane akce

Fastlane obsahuje více než 200 vestavěných akcí. Níže — přehled nejpopulárnějších s uvedením platformy a účelu.

AkcePlatformaPopis
gymiOSBuild IPA s optimalizovanými parametry xcodebuild
matchiOSSynchronizace certifikátů a provisioning profiles přes Git
pilotiOSNahrání buildu do TestFlight a správa testerů
deliveriOSPublikace aplikace v App Store s metadaty
scaniOSSpouštění unit a UI testů s generováním zprávy
gradleAndroidSpouštění Gradle úkolů: assemble, bundle, test
supplyAndroidNahrání APK a AAB do Google Play Console
screengrabAndroidAutomatické snímky obrazovky pro Google Play
firebase_app_distributionAndroidDistribuce buildů přes Firebase
snapshotiOSAutomatické snímky obrazovky na simulátorech pro App Store
increment_build_numberiOSAutoinkrementace čísla buildu v projektu Xcode
appcenter_uploadOběNahrání buildu do App Center

Pro vyhledání potřebné akce se používá příkaz fastlane action [název], který zobrazí dokumentaci, parametry a příklady. Úplný seznam je k dispozici lokálně: fastlane actions.

Fastlane také podporuje pluginy — komunitní rozšíření, která přidávají nové akce. Pluginy se instalují přes fastlane add_plugin [název] a jsou k dispozici v registru RubyGems. Příklady populárních pluginů: fastlane-plugin-versioning (správa verzí), fastlane-plugin-sentry (nahrání debug symbols do Sentry), fastlane-plugin-teams (oznámení v Microsoft Teams).

Frequently Asked Questions

Fastlane — co to je a k čemu slouží?

Fastlane — je nástroj pro automatizaci buildů a publikací mobilních aplikací. Slouží k nahrazení ručních operací — build, podepisování, nahrávání do obchodů — jedním příkazem. Fastlane zkracuje dobu vydání z hodin na minuty a eliminuje lidské chyby při publikaci.

Lze Fastlane používat pouze pro Android nebo pouze pro iOS?

Ano. Fastlane podporuje obě platformy nezávisle. Pro iOS je vyžadován macOS, pro Android stačí Linux. V jednom Fastfile lze rozdělit lanes podle platforem: platform :ios do ... end a platform :android do ... end.

Jak Fastlane spravuje iOS certifikáty?

Pomocí akce match. Ukládá šifrované certifikáty a provisioning profiles v Git repozitáři. Každý vývojář klonuje repozitář, match dešifruje soubory heslem z proměnné MATCH_PASSWORD a nainstaluje je do keychain. To řeší problém "na mém stroji se to buildí".

Funguje Fastlane s Firebase App Distribution?

Ano. Fastlane má vestavěnou akci firebase_app_distribution pro nahrávání APK a IPA do Firebase App Distribution. K dispozici je také firebase_app_distribution_add_testers pro přidávání testerů. Alternativa — akce appcenter_upload pro App Center.

Jak nainstalovat Fastlane na CI server?

Fastlane se instaluje přes RubyGems: gem install fastlane -NV. Pro iOS je vyžadován macOS s Xcode; pro Android — Linux nebo macOS s JDK a Android SDK. V GitHub Actions je připravená akce ruby/setup-ruby pro instalaci Ruby a Fastlane. Proměnné prostředí se předávají přes secrets CI systému.

Čím se Fastlane liší od Bitrise nebo Jenkins?

Fastlane — je knihovna a CLI pro automatizaci úkolů buildu a publikace. Bitrise a Jenkins — jsou kompletní CI/CD platformy. Fastlane pracuje uvnitř nich: Jenkins spouští Fastlane jako krok pipeline, Bitrise volá Fastlane přes speciální Step. Fastlane nenahrazuje CI systém, ale doplňuje jej o mobilní specifičnost.

Summary

  • Fastlane — open-source nástroj pro automatizaci buildů, testování a publikací mobilních aplikací pro iOS a Android
  • Fastfile — konfigurační Ruby soubor, ve kterém jsou popsány lanes — scénáře s posloupností akcí
  • match + gym + pilot — standardní pipeline pro iOS: správa certifikátů, build IPA, nahrání do TestFlight
  • gradle + supply — standardní pipeline pro Android: build přes Gradle, nahrání do Google Play Console
  • CI/CD integrace — Fastlane se integruje do GitHub Actions, GitLab CI, Bitrise, Jenkins a CircleCI přes proměnné prostředí
  • 200+ akcí — vestavěné příkazy pro podepisování, build, testování, snímky obrazovky, publikaci a oznámení
  • Pluginy — komunitní rozšíření přidávající nové akce: versioning, Sentry, oznámení v messengerech

Vyvineme mobilní aplikaci na klíč

IT Sectr vytváří aplikace pro iOS a Android pro startupy a podniky od roku 2017. Poradíme vám a navrhneme nejlepší řešení.

Prodiskutovat projekt

Přečtěte si také