Class: GrapeCli::Core

Inherits:
Thor
  • Object
show all
Includes:
Thor::Actions
Defined in:
lib/grape_cli/core.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.source_rootObject



17
18
19
# File 'lib/grape_cli/core.rb', line 17

def self.source_root
  File.dirname(__FILE__)
end

Instance Method Details

#consoleObject



47
48
49
50
51
# File 'lib/grape_cli/core.rb', line 47

def console
  puts 'Starting Grape console...'

  run(ApplicationFactory.instance.command_generator.run_console, verbose: false)
end

#new(app_name) ⇒ Object

rubocop:disable Metrics/AbcSize



22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/grape_cli/core.rb', line 22

def new(app_name)
  config           = GrapeCli::Config.new(app_name, GrapeCli::Core.source_root, options).config
  application_path = File.join(options[:work_dir], app_name)

  GrapeCli::Actions::CreateApplication.new(self).run(config, application_path)
  GrapeCli::Actions::SetupDatabase.new(self).run(config)
  GrapeCli::Actions::SetupTestFramework.new(args, options, config).run

  inside application_path do
    run(ApplicationFactory.instance.command_generator.bundle_install, config)
  end
end

#server(args = nil) ⇒ Object



38
39
40
41
42
# File 'lib/grape_cli/core.rb', line 38

def server(args = nil)
  puts 'Starting Grape server...'

  run(ApplicationFactory.new.command_generator.run_server(args), verbose: false)
end

#testObject



55
56
57
# File 'lib/grape_cli/core.rb', line 55

def test
  run(ApplicationFactory.instance.command_generator.run_tests, verbose: false)
end