Class: DockerRailsProxy::Cli

Inherits:
Object
  • Object
show all
Defined in:
lib/docker_rails_proxy/cli.rb

Class Method Summary collapse

Class Method Details

.invoke(arguments) ⇒ Object



4
5
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
33
34
35
36
37
# File 'lib/docker_rails_proxy/cli.rb', line 4

def invoke(arguments)
  command, *all_arguments         = arguments
  arguments, additional_arguments = split_arguments(all_arguments)

  if command.nil?
    $stderr.puts "    \#{\"bin/\#{APP_NAME} requires 1 argument.\".bold}\n\n    \#{\"Usage: bin/\#{APP_NAME} <command> [<arguments>]\".bold}\n    EOF\n    exit 1\n  end\n\n  if COMMANDS.include? command\n    arguments << '-h' if arguments.empty?\n    \"DockerRailsProxy::\#{command}\".constantize.call(\n      arguments: arguments, additional_arguments: additional_arguments\n    )\n  else\n    $stderr.puts <<-EOS\n    \#{'No such command'.yellow}\n\n    \#{'COMMANDS'.bold}\n    EOS\n\n    COMMANDS.each do |script|\n      $stderr.puts <<-EOS\n      \#{script.parameterize.bold} [<arguments>]\n      EOS\n    end\n\n    exit 1\n  end\nend\n"