Class: ThreddedCreateApp::Tasks::AddDevise

Inherits:
Base
  • Object
show all
Defined in:
lib/thredded_create_app/tasks/add_devise.rb

Instance Attribute Summary

Attributes inherited from Base

#app_hostname, #app_name, #app_path, #gems

Instance Method Summary collapse

Methods inherited from Base

#devise_form_fields_begin_pattern, #webpack_js?

Methods included from RunCommand

#run

Methods included from Logging

#log_command, #log_error, #log_info, #log_stderr, #log_verbose, #log_warn, #program_name

Constructor Details

#initialize(simple_form: true, **args) ⇒ AddDevise

Returns a new instance of AddDevise.



7
8
9
10
# File 'lib/thredded_create_app/tasks/add_devise.rb', line 7

def initialize(simple_form: true, **args)
  super
  @simple_form = simple_form
end

Instance Method Details

#after_bundleObject



21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# File 'lib/thredded_create_app/tasks/add_devise.rb', line 21

def after_bundle
  replace 'config/initializers/filter_parameter_logging.rb',
          ':password',
          ':password, :password_confirmation'
  run_generator 'devise:install'
  run_generator 'devise User'
  fix_migration_indices_limit_on_mysql
  setup_controllers
  setup_views
  setup_emails
  
  copy 'add_devise/spec/features/devise_spec.rb',
       'spec/features/devise_spec.rb'
  git_commit 'Setup Devise'
end

#before_bundleObject



16
17
18
19
# File 'lib/thredded_create_app/tasks/add_devise.rb', line 16

def before_bundle
  add_gem 'devise'
  add_gem 'devise-i18n'
end

#summaryObject



12
13
14
# File 'lib/thredded_create_app/tasks/add_devise.rb', line 12

def summary
  'Add devise with I18n and configure a User model'
end