Fastlane — шта је то, алати и аутоматизација изградње мобилних апликација

Аутор: IT Sectr Објављено: 2026-04-14 Време читања: 10 мин

Fastlane — то је алат отвореног кода за аутоматизацију изградње, тестирања и објављивања iOS и Android апликација. Уместо ручног извршавања десетак команди за потписивање, изградњу и отпремање у продавницу, програмер описује цео процес у Fastfile-у и покреће га једном командом. Према Fastlane Docs, 2025, алат се користи у више од 1,5 милиона пројеката широм света. Fastlane обједињује услужне програме за рад са App Store Connect, Google Play Console и системима за потписивање кода.

Главно

  • Fastlane — Open Source алат за аутоматизацију iOS и Android изградње и доставе
  • Actions — уграђене команде за рад са App Store, Google Play, потписивањем и тестовима
  • Lanes — сценарији аутоматизације у Fastfile-у који обједињују секвенцу actions
  • Match — систем управљања сертификатима и provisioning профилима за iOS
  • Алати — scan (тестови), gym (изградња), deliver (отпремање), snapshot (снимци екрана)

Шта је Fastlane и како аутоматизује мобилне изградње

Fastlane — то је алат за аутоматизацију мобилних изградњи, написан у Ruby-ју и дистрибуиран под MIT лиценцом. Он аутоматизује рутинске задатке мобилног програмера: изградњу апликације, покретање тестова, креирање снимака екрана, потписивање кода и отпремање бинарних датотека у App Store или Google Play. Уместо 15–20 ручних команди, програмер покреће једну fastlane команду са именом сценарија.

Fastlane ради као омотач за услужне програме Xcode (xcodebuild, xcrun) и Android SDK (gradlew, apksigner, bundletool), пружајући јединствени интерфејс за обе платформе. Ово је посебно вредно за тимове који одржавају iOS и Android верзије исте апликације — исти Fastfile-ови могу описати изградње за обе платформе са минималним разликама у параметрима.

Према подацима GitHub-а, Fastlane има преко 39 хиљада звездица и представља стандард аутоматизације у мобилном развоју. Алат подржава заједница и компанија Google — Fastlane је интегрисан у Firebase као препоручени начин доставе Android апликација у Google Play Console.

Архитектура Fastlane: Actions, Lanes и алати

Архитектура Fastlane изграђена је на три нивоа: actions (основне команде), lanes (сценарији) и алати (специјализовани услужни програми). Actions — то су појединачне функције Fastlane-а, од којих свака обавља одређену радњу: креирање снимка екрана, изградњу IPA, отпремање у TestFlight. Lanes обједињују више actions у секвенцијални сценариј, описан у Fastfile-у.

Fastlane Actions

Actions — то су градивни блокови Fastlane-а. Сваки action прима параметре и обавља један задатак. На пример, action gym изграђује iOS апликацију, scan покреће тестове, pilot отпрема билд у TestFlight. Укупно Fastlane има преко 200 уграђених actions, документација за сваки је доступна путем команде fastlane action [назив].

Ако уграђени actions нису довољни, програмер може креирати custom action у Ruby-ју и повезати га у Fastfile-у. Прилагођени actions се дистрибуирају путем Fastlane додатака, који се објављују на Rubygems-у и инсталирају путем FastfilePlugin датотеке у корену пројекта.

Lanes и њихова композиција

Lane — то је именовани сценариј аутоматизације који обједињује више actions у логичку секвенцу. Lane може позивати друге lanes (private lanes), прослеђивати параметре и обрађивати грешке. Ово омогућава изградњу хијерархије сценарија: основни lane изградње, lane деплоја, lane пуног CI/CD циклуса.

Основни алати Fastlane: scan, gym, match, deliver

Fastlane укључује сет специјализованих алата, од којих сваки решава одређени задатак мобилне аутоматизације. Алати се покрећу као actions унутар lanes или директно из командне линије. Размотримо четири кључна алата који покривају основне потребе CI/CD за iOS и Android.

АлатНаменаКоманда
scanПокретање Unit и UI тестова на iOS симулаторуfastlane scan
gymИзградња IPA или APP датотеке за iOSfastlane gym
matchСинхронизација сертификата и provisioning профила путем Git-аfastlane match
deliverОтпремање бинарне датотеке и метаподатака у App Store Connectfastlane deliver
snapshotАутоматско генерисање снимака екрана на различитим уређајимаfastlane snapshot

Scan поједностављује покретање Xcode тестова, аутоматски бира одговарајући симулатор и форматира извештај. Gym изграђује апликацију са оптималним компајлерским флаговима и подржава exportOptions.plist за различите типове изградње (development, adhoc, appstore). Deliver омогућава отпремање не само бинарне датотеке, већ и снимака екрана, описа, верзија и цена путем јединствене датотеке метаподатака.

Алат Match заслужује посебну пажњу — он решава проблем чувања и синхронизације iOS сертификата у тиму. Match шифрује и чува сертификате и provisioning профиле у Git репозиторијуму, а програмери их добијају аутоматски при покретању fastlane match. Ово искључује ручно подешавање сваког радног места.

Snapshot: генерисање снимака екрана

Snapshot — алат за аутоматско креирање снимака екрана мобилне апликације на различитим уређајима и језицима. Snapshot покреће UI тестове на iOS симулаторима, правећи снимке екрана на сваком кораку теста. Резултати се чувају у директоријуму fastlane/screenshots и могу се отпремити у App Store Connect путем deliver-а.

За Android screengrab обавља сличну функцију на Android емулаторима. Оба алата подржавају локализацију — снимци екрана се креирају за сваки језик, што поједностављује припрему материјала за објављивање у вишејезичним продавницама апликација.

Подешавање Fastlane за iOS апликације

За iOS пројекте Fastlane се подешава путем Gemfile-а (инсталација gem fastlane) и Fastfile-а у директоријуму fastlane. Почетно подешавање се извршава командом fastlane init, која креира основну структуру директоријума, захтева податке App Store Connect-а и генерише шаблон Fastfile-а са основним lanes.

Кључна команда за iOS — fastlane match, која мора бити извршена прва за добијање сертификата и provisioning профила. Након успешног потписивања, Fastlane може изградити апликацију (gym), покренути тестове (scan) и отпремити бинарну датотеку (pilot или deliver).

ruby
# Fastfile за iOS апликацију
default_platform(:ios)

lane :build do
  cocoapods
  scan(scheme: 'App', devices: ['iPhone 15'])
  gym(scheme: 'App', export_method: 'app-store')
end

lane :deploy do
  match(type: 'appstore')
  build
  pilot(skip_waiting_for_build_processing: true)
  slack(message: 'Нова верзија је отпремљена у TestFlight')
end

За рад са TestFlight користите pilot action — он отпрема IPA и управља тестерима. Fastlane подржава upload_to_testflight (синоним за pilot) и аутоматски обрађује чекање обраде билда од стране Apple-а, што може трајати од 5 до 30 минута.

Подешавање Fastlane за Android апликације

За Android пројекте Fastlane се подешава слично, али уместо Xcode алата користе се Gradle и Android SDK. Fastlane за Android подржава изградњу APK и AAB, потписивање путем apksigner или jarsigner, покретање инструменталних тестова и отпремање у Google Play Console путем Supply action-а.

Кључна разлика — Android изградња не захтева управљање сертификатима путем match-а (потписивање Android-а се управља путем Keystore-а, који се чува одвојено). Fastlane за Android користи gradle action за покретање било којих Gradle задатака и supply action за рад са Google Play-ом.

ruby
# Fastfile за Android апликацију
default_platform(:android)

lane :build do
  gradle(task: 'clean assembleRelease')
  gradle(task: 'testReleaseUnitTest')
end

lane :deploy do
  build
  supply(
    track: 'internal',
    aab: 'app/build/outputs/bundle/release/app-release.aab'
  )
end

За рад са Google Play Console потребан је сервисни налог Google Cloud-а са приступом Google Play API-ју. Fastlane прима JSON кључ сервисног налога путем променљиве окружења SUPPLY_JSON_KEY или параметра json_key у action supply. Трек објављивања може бити internal, alpha, beta или production.

Интеграција Fastlane са CI/CD системима

Fastlane се интегрише са било којим CI/CD системима који могу извршавати Ruby скриптове: Jenkins, Travis CI, GitHub Actions, GitLab CI, Bitrise и CircleCI. Интеграција се своди на инсталацију gem fastlane и покретање команде fastlane [lane_name] у стадијуму script пајплајна.

За CI/CD је важно подесити променљиве окружења за чување осетљивих података: MATCH_PASSWORD (лозинка за шифровање сертификата), FASTLANE_USER (Apple ID), FASTLANE_PASSWORD (лозинка Apple ID-а). У Travis CI променљиве се шифрују путем travis encrypt, у GitHub Actions — путем Secrets repository.

Препоручена пракса — користити fastlane match у CI/CD са readonly флагом, како би се спречиле случајне измене у репозиторијуму сертификата. За Android користите Keystore, кодиран у Base64 и сачуван у променљивој окружења, који се дешифрује и чува у привремену датотеку у фази before_install.

Fastlane Match: управљање сертификатима и профилима

Fastlane Match — то је алат за аутоматизацију управљања iOS сертификатима и provisioning профилима, једна од највреднијих функција Fastlane-а за тимове. Match креира шифровани Git репозиторијум (или користи постојећи) где чува све сертификате и профиле, синхронизујући их између програмера и CI/CD сервера.

Match подржава пет типова профила: development, adhoc, appstore, enterprise и developer_id. Сваки тип се чува у посебном директоријуму унутар репозиторијума. Команда fastlane match development инсталира development сертификате на локалну машину, а fastlane match appstore — App Store профиле за изградњу на CI.

ruby
# Коришћење Match-а у Fastfile-у
lane :setup_signing do
  match(
    type: 'appstore',
    readonly: true,
    git_branch: 'main'
  )
end

lane :update_profiles do
  match(
    type: 'development',
    force: true,
    app_identifier: ['com.example.app', 'com.example.app.watchkitapp']
  )
end

Безбедност Match-а се обезбеђује шифровањем свих датотека пре комита у Git. Лозинка за шифровање се задаје путем променљиве окружења MATCH_PASSWORD и мора бити иста за све чланове тима. Match користи OpenSSL за шифровање и не чува лозинку у отвореном облику у репозиторијуму.

Често постављана питања

Шта је Fastlane у мобилном развоју?

Fastlane — то је Open Source алат за аутоматизацију за iOS и Android апликације. Он аутоматизује изградњу, тестирање, потписивање кода и доставу у App Store и Google Play путем јединственог конфигурационог фајла Fastfile и сета уграђених алата.

Који алати улазе у састав Fastlane-а?

Основни алати Fastlane: scan (тестови), gym (изградња iOS), match (сертификати), deliver (App Store), pilot (TestFlight), snapshot (снимци екрана), supply (Google Play) и frameit (оквири за снимке екрана). Сваки алат је доступан као action унутар lane или из командне линије.

Како подесити Fastlane за iOS апликацију?

Инсталирајте gem fastlane, извршите fastlane init у корену пројекта. Подесите Fastfile са lanes за изградњу (gym) и тестове (scan). Подесите Match за управљање сертификатима путем Git репозиторијума. Додајте lane деплоја са pilot или deliver за отпремање у App Store Connect.

Како подесити Fastlane за Android апликацију?

Извршите fastlane init са навођењем package name. Користите gradle action за покретање Gradle задатака (assembleRelease, testReleaseUnitTest). Подесите Keystore путем променљивих окружења. Користите supply action за отпремање AAB или APK у Google Play Console на жељени трек.

Како интегрисати Fastlane са CI/CD системима?

Инсталирајте gem fastlane на CI/CD серверу и додајте команду fastlane [lane_name] у стадијум script пајплајна. Подесите променљиве окружења FASTLANE_USER, FASTLANE_PASSWORD и MATCH_PASSWORD у тајним променљивим CI/CD. Користите match readonly за CI да бисте избегли случајне измене сертификата.

Завршне напомене

  • Fastlane — Open Source алат за аутоматизацију мобилних изградњи са подршком за iOS и Android
  • Actions — основне команде за изградњу, тестове, потписивање и доставу (преко 200 уграђених)
  • Lanes — сценарији у Fastfile-у који обједињују више actions у секвенцијални CI/CD процес
  • Match — систем управљања iOS сертификатима путем шифрованог Git репозиторијума
  • iOS подешавање укључује scan за тестове, gym за изградњу, pilot за TestFlight
  • Android подешавање укључује gradle за изградњу и supply за Google Play
  • Fastlane се интегрише са Jenkins, Travis CI, GitHub Actions и другим CI/CD платформама

Развићемо мобилну апликацију под кључ

IT Sectr креира iOS и Android апликације за стартапе и предузећа од 2017. године. Саветоваћемо вас и предложити најбоље решење.

Разговарајте о пројекту

Прочитајте такође