Easily queue up fastlane
jobs using Resque.
- Queue any of your lanes into a
resque
queue - Manage queue using
resque
's web interface- View queued, running, and failed jobs
- Retry failed jobs
- Custom web interface for starting
fastlane
jobs
- Configure any
resque
settings- Ex: port, redis connection settings, plugins
- Allow different
dotenv
settings per job
This project is a fastlane plugin. To get started with fastlane-plugin-queue
, add it to your project by running:
fastlane add_plugin queue
This plugin also require Redis. Install using brew install redis
or instructions here
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).
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_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"
It is possible add fastlane jobs to your queue by using standard fastlane syntax by adding queue:true
(see below)
fastlane ios beta queue:true
To 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
end
This 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.
Resque Screen | Screenshot |
---|---|
Overview | |
Pending | |
Failed |
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
.
To run both the tests, and code style validation, run
rake
To automatically fix many of the styling issues, use
rubocop -a
For any other issues and feedback about this plugin, please submit it to this repository.
If you have trouble using plugins, check out the Plugins Troubleshooting guide.
For more information about how the fastlane
plugin system works, check out the Plugins documentation.
fastlane is the easiest way to automate beta deployments and releases for your iOS and Android apps. To learn more, check out fastlane.tools.