Class: Shopapp::DeployGenerator
- Inherits:
-
Rails::Generators::Base
- Object
- Rails::Generators::Base
- Shopapp::DeployGenerator
- Defined in:
- lib/generators/shopapp/deploy/deploy_generator.rb
Instance Method Summary collapse
- #app_code ⇒ Object
- #create_capfile ⇒ Object
- #create_config_deploy_production_rb ⇒ Object
- #create_config_deploy_rb ⇒ Object
Instance Method Details
#app_code ⇒ Object
7 8 9 10 |
# File 'lib/generators/shopapp/deploy/deploy_generator.rb', line 7 def app_code (Rails.configuration.settings['shopapp_name'] || Rails.application.class.parent_name).to_s.downcase.parameterize.underscore end |
#create_capfile ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/generators/shopapp/deploy/deploy_generator.rb', line 12 def create_capfile create_file "Capfile", <<~FILECONTENT require "capistrano/setup" require "capistrano/deploy" require "capistrano/scm/git" install_plugin Capistrano::SCM::Git require 'capistrano/rvm' require "capistrano/bundler" require "capistrano/rails/assets" require "capistrano/rails/migrations" require "capistrano/passenger" # require "capistrano/yarn" Dir.glob("lib/capistrano/tasks/*.rake").each { |r| import r } FILECONTENT end |
#create_config_deploy_production_rb ⇒ Object
45 46 47 48 49 50 51 52 53 |
# File 'lib/generators/shopapp/deploy/deploy_generator.rb', line 45 def create_config_deploy_production_rb create_file "config/deploy/production.rb", <<~FILECONTENT set :stage, :production set :rails_env, :production set :branch, "master" server "#{app_code}.shoplift.fi", user: "#{app_code}", roles: %w{app db web} FILECONTENT end |
#create_config_deploy_rb ⇒ Object
31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/generators/shopapp/deploy/deploy_generator.rb', line 31 def create_config_deploy_rb create_file "config/deploy.rb", <<~FILECONTENT lock "~> 3.11.0" set :application, "Prolift" set :repo_url, "[email protected]:shoplift/#{app_code}.git" set :rvm_ruby_version, '2.5.1' append :linked_files, 'config/local.yml' set :deploy_to, "/home/shoplift/#{app_code}" set :passenger_restart_with_touch, true FILECONTENT end |