Module: Schienenzeppelin::GeneratorUtils::ClassMethods

Defined in:
lib/schienenzeppelin/generator_utils.rb

Instance Method Summary collapse

Instance Method Details

#generate_addon_options!Object



41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
# File 'lib/schienenzeppelin/generator_utils.rb', line 41

def generate_addon_options!
  test_frameworks = %w[minitest rspec]
  class_option :test_framework,
               type: :string,
               default: 'rspec',
               desc: "Select a testing framework (options: #{test_frameworks.join('/')})"

  background_jobs = %w[sidekiq].freeze
  class_option :background_jobs,
               type: :string,
               default: 'sidekiq',
               desc: "Select a background processing (options: #{background_jobs.join('/')})"

  deployments = %w[capistrano].freeze
  class_option :deployment,
               type: :string,
               default: 'capistrano',
               desc: "Select a deployment option (options: #{deployments.join('/')})"

  version_managers = %w[asdf].freeze
  class_option :version_manger,
               type: :string,
               default: 'asdf',
               desc: "Select your Version Manager (options: #{version_managers.join('/')})"
end

#generate_addon_skips!Object



67
68
69
70
71
72
73
74
# File 'lib/schienenzeppelin/generator_utils.rb', line 67

def generate_addon_skips!
  Context.new.addons.each do |addon|
    class_option "skip_#{addon}".to_sym,
                 type: :boolean,
                 default: false,
                 desc: "Skip #{addon.underscore.titleize}"
  end
end

#overwrite_default_options!Object



27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/schienenzeppelin/generator_utils.rb', line 27

def overwrite_default_options!
  databases = Rails::Generators::Database::DATABASES
  class_option :database,
               type: :string,
               aliases: '-d',
               default: 'postgresql',
               desc: "Preconfigure for selected database (options: #{databases.join('/')})"

  class_option :skip_active_job,
               type: :boolean,
               default: true,
               desc: 'Skip Active Job'
end