Don't know how to build task 'start' when run 'cap production deploy' for capistrano 3.8.0 with Rails Don't know how to build task 'start' when run 'cap production deploy' for capistrano 3.8.0 with Rails ruby-on-rails ruby-on-rails

Don't know how to build task 'start' when run 'cap production deploy' for capistrano 3.8.0 with Rails


Add install_plugin Capistrano::Puma into your Capfile after require 'capistrano/puma'.

capistrano3-puma moved to 3.0 a few days ago. This line is required for loading default puma tasks in this version.

See https://github.com/seuros/capistrano-puma#usage


These tasks need some plugins to be included in the Capfile. Jin's answer solves it partially and comment under the answer mentions that.

Here is an answer which concludes what works.

For Capistrano < 3.15.0:

`require 'capistrano/puma'install_plugin Capistrano::Puma

For Capistrano >= 3.15.0 & Puma < 5.0

require 'capistrano/puma'install_plugin Capistrano::Pumainstall_plugin Capistrano::Puma::Daemon

For Capistrano >= 3.15.0 & Puma >= 5.0

require 'capistrano/puma'install_plugin Capistrano::Pumainstall_plugin Capistrano::Puma::Systemd


This two line should be there in Capfile. Also this changes are done in recent puma version gem 'capistrano3-puma'.

require 'capistrano/puma'install_plugin Capistrano::Puma  # Default puma tasks

Please mind the heirarchy in which they are written in capfile. This helps to loads the puma tasks in cap. You can list the capistrano tasks with cap -T. Also look for task related to puma once you have updated the Capfile with above two lines.

For more details, see https://github.com/seuros/capistrano-puma#usage