Maintenance Tasks
A UI for running and monitoring long data migrations
No ratings yet
- Gem
- maintenance_tasks
- Repository
- Shopify/maintenance_tasks
- License
- MIT
- Stars
- 1,800
- Added
- July 11, 2026
About
Data migrations that run in the background, report progress, and can be paused,
resumed and cancelled from a web UI.
What you get
- Tasks defined as Ruby classes with a collection and a per-record block
- Progress, throttling and error handling
- Pause, resume, cancel
- A run history, so you can prove a backfill finished
Mounting it
ruby
# Gemfile
gem "maintenance_tasks"
# config/routes.rb
authenticate :user, ->(user) { user.admin? } do
mount MaintenanceTasks::Engine, at: "/maintenance_tasks"
end
Why not a rake task
A rake task in a terminal has no progress, no resumability, and no record that it ran.
This has all three.
Discussion (0)
Sign in to join the discussion.
No comments yet.