Module: Ora::Cli

Defined in:
lib/ora/cli.rb,
lib/ora/cli/bash.rb,
lib/ora/cli/path.rb,
lib/ora/cli/task.rb,
lib/ora/cli/print.rb,
lib/ora/cli/stdin.rb,
lib/ora/cli/version.rb,
lib/ora/cli/push_task.rb,
lib/ora/cli/tasks/push_to_aus.rb,
lib/ora/cli/tasks/push_to_uat.rb,
lib/ora/cli/precondition_error.rb,
lib/ora/cli/tasks/switch_branch.rb,
lib/ora/cli/tasks/push_to_master.rb,
lib/ora/cli/tasks/push_to_staging.rb,
lib/ora/cli/tasks/new_feature_branch.rb,
lib/ora/cli/tasks/push_feature_branch.rb

Defined Under Namespace

Classes: Bash, NewFeatureBranch, Path, PreconditionError, Print, PushFeatureBranch, PushTask, PushToAus, PushToMaster, PushToStaging, PushToUat, Stdin, SwitchBranch, Task

Constant Summary collapse

VERSION =
"0.1.9"

Class Method Summary collapse

Class Method Details

.runObject



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/ora/cli.rb', line 8

def self.run
  project_path = `pwd`.strip
  remove_ext   = "sed 's/\.[^.]*$//'"

  unless `cat #{Task::CONTINUE_FILE}`.empty?
    continue = JSON.parse(File.read(File.expand_path(Task::CONTINUE_FILE)))

    task = continue['task']
    require "ora/cli/tasks/#{task}"

    class_name = task.split('_').map(&:capitalize).join
    Object.const_get("Ora::Cli::#{class_name}").
      new(project_path).
      continue(continue)

    return
  end

  task = Bash.new(project_path).select("ls #{Path.tasks} | #{remove_ext}")

  require "ora/cli/tasks/#{task}"
  class_name = task.split('_').map(&:capitalize).join
  Object.const_get("Ora::Cli::#{class_name}").new(project_path).run
end