Class: ReplaceCapfileGenerator

Inherits:
Rails::Generators::Base
  • Object
show all
Defined in:
lib/generators/replace_capfile/replace_capfile_generator.rb

Instance Method Summary collapse

Instance Method Details

#replace_capfileObject



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/generators/replace_capfile/replace_capfile_generator.rb', line 6

def replace_capfile
  capfile_path = "Capfile"

  create_file capfile_path, <<~CAPFILE, force: true
    require 'capistrano/setup'
    require 'capistrano/deploy'
    require 'capistrano/rails'
    require 'capistrano/bundler'
    require 'capistrano/rvm'
    require "capistrano/rails/assets"
    require "capistrano/rails/migrations"
    require 'capistrano/puma'
    require "capistrano/scm/git"
    require 'capistrano/sidekiq'

    install_plugin Capistrano::SCM::Git
    install_plugin Capistrano::Puma  # Default puma tasks
    install_plugin Capistrano::Puma::Systemd
    install_plugin Capistrano::Puma, load_hooks: false
    install_plugin Capistrano::Sidekiq::Systemd

    # Load custom tasks from `lib/capistrano/tasks` if you have any defined
    Dir.glob("lib/capistrano/tasks/*.rake").each { |r| import r }
  CAPFILE

  say "Capfile has been replaced successfully!", :green
end