What it is
fastlane is an open source tool for automating the build and release of iOS and Android apps. It wraps the repetitive steps, such as code signing, building, taking screenshots, uploading to TestFlight and submitting to the App Store or Google Play, into scripted steps called actions. The tool also handles certificates and provisioning profiles, a frequent source of release-day trouble.
Actions are grouped into lanes, defined in a file called a Fastfile. A lane such as beta or release can then be run with one command, the same way every time. fastlane is written in Ruby. Because a lane is plain code, it can be kept in version control beside the app and reviewed like any other change, so the release process has a history too.
How I use it
- iOS releases of Rental Pilot's field app go to TestFlight and the App Store with fastlane lanes.
- Builds come from Expo EAS; fastlane handles the hand-off to Apple.
- Fits the rule that anything I do twice becomes a script with its own checks.
fastlane is the right tool when app store releases happen often enough that doing them by hand becomes a source of mistakes. I reach for it because I would rather release by running one lane than by clicking through the same upload screens and hoping I did not skip a step.
Questions
How do you release iPhone app updates?
Rental Pilot's app is built with Expo EAS, then fastlane lanes send it to TestFlight for testing and on to the App Store. Each release follows the same scripted steps.
Do I need fastlane if I use Expo?
Not always, since EAS can submit builds itself. I use fastlane lanes for the iOS release steps so they run the same way every time.