fastlane-plugin-queue
About fastlane-plugin-queue
Easily queue up fastlane jobs using Resque.
Current Features
- Queue any of your lanes into a
resquequeue - Manage queue using
resque's web interface- View queued, running, and failed jobs
- Retry failed jobs
- Custom web interface for starting
fastlanejobs
Planned Features
- Configure any
resquesettings- Ex: port, redis connection settings, plugins
- Allow different
dotenvsettings per job
Getting Started
This project is a fastlane plugin. To get started with fastlane-plugin-queue, add it to your project by running:
fastlane add_plugin queueThis plugin also require Redis. Install using brew install redis or instructions here
Step 0 - Start Redis server
Make sure you Redis server is running. This is usually done by running redis-server (but this may be different based on how Redis was installed).
Step 1 - Start queue
Start the queue web server and worker by running the following command. This will be a blocking command so you will need to open to open a second terminal window/tab to add your fastlane jobs to the queue. To kill the web server and worker, you will need to hit CONTROL + C.
fastlane run start_queueStep 2 - Add to queue
The easiest way to add a job to a queue is to run the queue action direction using the following command. The run parameter will run anything you would put after the "fastlane" command you would usually run. Below are some examples:
fastlane run queue run:"ios deploy"fastlane run queue run:"android deploy"fastlane run queue run:"build"fastlane run queue run:"ios beta group:staging"Advanced
It is possible add fastlane jobs to your queue by using standard fastlane syntax by adding queue:true (see below)
fastlane ios beta queue:trueTo do this, add the following setup in your Fastfile...
before_all do |lane, options|
if options[:queue]
queue(
platform: Actions.lane_context[Actions::SharedValues::PLATFORM_NAME],
lane: lane.to_s,
lane_parameters: options
)
UI.abort_with_message! "We queued this so not running"
end
endThis will abort the fastlane process before any of the lanes can get called but will add a job to the queue platform, lane, and parameters that you specified in your command.
Example Resque Screenshots
| Resque Screen | Screenshot |
|---|---|
| Overview | ![]() |
| Pending | ![]() |
| Failed | ![]() |
Example
Check out the example Fastfile to see how to use this plugin. Try it by cloning the repo, running fastlane install_plugins and bundle exec fastlane test.
Run tests for this plugin
To run both the tests, and code style validation, run
rake
To automatically fix many of the styling issues, use
rubocop -a
Issues and Feedback
For any other issues and feedback about this plugin, please submit it to this repository.
Troubleshooting
If you have trouble using plugins, check out the Plugins Troubleshooting guide.
Using fastlane Plugins
For more information about how the fastlane plugin system works, check out the Plugins documentation.
About fastlane
fastlane is the easiest way to automate beta deployments and releases for your iOS and Android apps. To learn more, check out fastlane.tools.



