The instructions below require fastlane 1.93.0 or higher
fastlane is an open platform and we enable every developer to extend it to fit their needs. That's why we built a plugin system that allows you and your company to provide fastlane plugins to other fastlane users. You have the full power and responsibility of maintaining your plugin and keeping it up to date. This is useful if you maintain your own library or web service, and want to make sure the fastlane plugin is always up to date.
This content was moved and now lives here.
Find a plugin
Head over to Available Plugins for a list of plugins you can use.
List all available plugins using
To search for something specific
fastlane search_plugins [query]
Add a plugin to your project
fastlane add_plugin [name]
fastlane will assist you on setting up your project to start using plugins.
- Add the plugin to
- Make sure your
fastlane/Pluginfileis properly referenced from your
fastlane install_pluginsto make sure all required dependencies are installed on your local machine (this step might ask for your admin password to install Ruby gems)
- You'll have 3 new files, that should all be checked into version control:
fastlane/Pluginfile contains the list of all fastlane plugins your project uses. The
Pluginfile is a Gemfile that gets imported from your main
You specify all dependencies, including the required version numbers:
# Fetched from RubyGems.org gem "fastlane-plugin-xcversion" # Fetched from GitHub gem "fastlane-plugin-xcversion", git: "https://github.com/fastlane/fastlane-plugin-xcversion" # Fetched from a local directory gem "fastlane-plugin-xcversion", path: "../fastlane-plugin-xcversion" # Specify a version requirements gem "fastlane-plugin-xcversion", "1.1.0" gem "fastlane-plugin-xcversion", ">= 1.0"
Install plugins on another machine
To make sure all plugins are installed on the local machine, run
Remove a plugin
fastlane/Pluginfile and remove the line that looks like this
Create your own plugin
cd ~/new/folder/ fastlane new_plugin [plugin_name]
- fastlane creates the directory structure that's needed to be a valid Ruby gem
- Edit the
lib/fastlane/plugin/[plugin_name]/actions/[plugin_name].rband implement your action
- Easily test the plugin locally by running
fastlane add_pluginin your project's directory and specifying the local path when asked for it
New plugin for existing gem
If you already have an existing gem you want to provide a fastlane plugin for, you'll still have to create a new Ruby gem. The reason for that is the way plugins are imported.
The example project xcake contains a folder named
All you have to do if you have an existing gem:
- Navigate to your gem
fastlane new_plugin [plugin_name]
- Inside the newly created folder, edit the
fastlane-plugin-[plugin_name].gemspecand add your gem as a dependency. It is recommended to also specify a version number requirement
Publishing your plugin
The recommended way to publish your plugin is to publish it on RubyGems.org. Follow the steps below to publish your plugin.
- Create an account at RubyGems.org
- Publish your plugin to a GitHub repo
- Update the
fastlane-plugin-[plugin_name].gemspecfile so that the
spec.homepagepoints to your github repo.
- Publish the first release of your plugin:
bundle install rake install rake release
Now all your users can run
fastlane add_plugin [plugin_name] to install and use your plugin.
If for some reason you don't want to use RubyGems, you can also make your plugin available on GitHub. Your users then need to add the following to the
gem "fastlane-plugin-[plugin_name]", git: "https://github.com/[user]/[plugin_name]"
Multiple actions in one plugin
Let's assume you work on a fastlane plugin for project management software. You could call it
fastlane-plugin-pm and it may contain any number of actions and helpers, just add them to your
actions folder. Make sure to mention the available actions in your plugin's