fastlane docs Home GETTING STARTED iOS Setup Authentication Running Tests Screenshots Beta Deployment App Store Deployment Swift Android Setup Running Tests Screenshots Beta Deployment Release Deployment Cross Platform React Native Flutter NativeScript ACTIONS Available Actions Create Your Own Action APPLE Using App Store Connect API Uploading App Privacy Details FAQS FAQs CODESIGNING Getting Started Xcode Project Troubleshooting Common Issues PLUGINS Available Plugins Use Plugins Create Your Own Plugin Plugins Troubleshooting BEST PRACTICES Source Control Continuous Integration CI Integrations Appcircle Azure DevOps Bamboo Bitrise CircleCI Codemagic GitHub Actions GitLab CI Jenkins Semaphore Travis Keys ADVANCED fastlane Fastfile Appfile Lanes Actions Other Docs » Home Edit on GitHub fastlane fastlane is the easiest way to automate beta deployments and releases for your iOS and Android apps. 🚀 It handles all tedious tasks, like generating screenshots, dealing with code signing, and releasing your application. You can start by creating a Fastfile file in your repository, here’s one that defines your beta or App Store release process: lane :beta do increment_build_number build_app upload_to_testflight end lane :release do capture_screenshots build_app upload_to_app_store # Upload the screenshots and the binary to iTunes slack # Let your team-mates know the new version is live end You just defined 2 different lanes, one for beta deployment, one for App Store. To release your app in the App Store, all you have to do is fastlane release Why fastlane? fastlane 🚀 Save hours every time you push a new release to the store or beta testing service ✨ Integrates with all your existing tools and services (more than 400 integrations) 📖 100% open source under the MIT license 🎩 Easy setup assistant to get started in a few minutes ⚒ Runs on your machine, it's your app and your data 👻 Integrates with all major CI systems 🖥 Supports iOS, Mac, and Android apps 🔧 Extend and customise fastlane to fit your needs, you're not dependent on anyone 💭 Never remember any commands any more, just fastlane 🚢 Deploy from any computer, including a CI server Getting Started Installing fastlane fastlane can be installed in multiple ways. The preferred method is with Bundler. fastlane can also be installed directly through with Homebrew (if on macOS). It is possible to use macOS's system Ruby, but it's not recommended, as it can be hard to manage dependencies, and causes conflicts. Managed Ruby environment + Bundler (macOS/Linux/Windows) Ruby If you use macOS, system Ruby is not recommended. There is a variety of ways to install Ruby without having to modify your system environment. For macOS and Linux, rbenv is one of the most popular ways to manage your Ruby environment. fastlane supports Ruby versions 2.5 or newer. Verify which Ruby version you're using: $ ruby --version ruby 2.7.2p137 (2020-10-01 revision 5445e04352) [x86_64-darwin19] Bundler It is recommended that you use Bundler and Gemfile to define your dependency on fastlane. This will clearly define the fastlane version to be used and its dependencies, and will also speed up fastlane execution. Install Bundler by running gem install bundler Create a ./Gemfile in the root directory of your project with the content source "https://rubygems.org" gem "fastlane" Run bundle update and add both the ./Gemfile and the ./Gemfile.lock to version control Every time you run fastlane, use bundle exec fastlane [lane] On your CI, add bundle install as your first build step To update fastlane, just run bundle update fastlane Homebrew (macOS) This way, you don't have to install Ruby separately, and instead homebrew installs the adequate Ruby version for fastlane. See this page for details. brew install fastlane System Ruby + RubyGems (macOS/Linux/Windows) This is not recommended for your local environment, but you can still install fastlane to system Ruby's environment. Using sudo often occurs unwanted results later due to file permission and makes managing your environment harder. sudo gem install fastlane Setting up fastlane Navigate to your iOS or Android app and run fastlane init fastlane will automatically detect your project, and ask for any missing information. For more details about how to get up and running, check out the getting started guides: fastlane Getting Started guide for iOS fastlane Getting Started guide for Android Questions and support Before submitting a new GitHub issue, please make sure to search for existing GitHub issues. If that doesn't help, please submit an issue on GitHub and provide information about your setup, in particular the output of the fastlane env command. System requirements fastlane is officially supported to run on macOS. 🐧 Linux and 🖥️ Windows are partially supported. Some underlying software like Xcode are only available on macOS, but many other tools, actions, and the spaceship module can work on other platforms. fastlane team Helmut Januschka Felix Krause Jérôme Lacoste Jan Piotrowski Luka Mirosevic Olivier Halligon Jimmy Dee Iulian Onofrei Danielle Tomlinson Aaron Brager Kohki Miki Stefan Natchev Maksym Grebenets Joshua Liebowitz Manu Wallner Fumiya Nakamura Matthew Ellis Josh Holtz Special thanks to all contributors for extending and improving fastlane. Metrics fastlane tracks a few key metrics to understand how developers are using the tool and to help us know what areas need improvement. No personal/sensitive information is ever collected. Metrics that are collected include: The number of fastlane runs A salted hash of the app identifier or package name, which helps us anonymously identify unique usage of fastlane You can easily opt-out of metrics collection by adding opt_out_usage at the top of your Fastfile or by setting the environment variable FASTLANE_OPT_OUT_USAGE. Check out the metrics code on GitHub License This project is licensed under the terms of the MIT license. See the LICENSE file. This project and all fastlane tools are in no way affiliated with Apple Inc. This project is open source under the MIT license, which means you have full access to the source code and can modify it to fit your own needs. All fastlane tools run on your own computer or server, so your credentials or other sensitive information will never leave your own computer. You are responsible for how you use fastlane tools. Where to go from here? fastlane Getting Started guide for iOS fastlane Getting Started guide for Android Built with MkDocs using a theme provided by Read the Docs - Copyright © 2021 fastlane