Class: Vagabond::Spec

Inherits:
Thor
  • Object
show all
Includes:
Thor::Actions, Actions::Status, Helpers
Defined in:
lib/vagabond/spec.rb

Constant Summary

Constants included from Helpers

Helpers::GEN_NAME_LENGTH, Helpers::RAND_CHARS

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Actions::Status

included

Methods included from Helpers

included

Constructor Details

#initialize(*args) ⇒ Spec

Returns a new instance of Spec.



23
24
25
26
# File 'lib/vagabond/spec.rb', line 23

def initialize(*args)
  @name = nil
  super
end

Instance Attribute Details

#layoutObject

Returns the value of attribute layout.



15
16
17
# File 'lib/vagabond/spec.rb', line 15

def layout
  @layout
end

Class Method Details

.basenameObject



19
20
21
# File 'lib/vagabond/spec.rb', line 19

def self.basename
  'vagabond spec'
end

Instance Method Details

#destroy(cluster) ⇒ Object



67
68
69
70
# File 'lib/vagabond/spec.rb', line 67

def destroy(cluster)
  base_setup
  options[:node] ? node_destroy(cluster, options[:node]) : cluster_destroy(cluster)
end

#initObject



79
80
81
82
83
84
85
86
# File 'lib/vagabond/spec.rb', line 79

def init
  setup_ui(nil, :no_class_set)
  ui.info "Initializing spec configuration..."
  make_spec_directory
  populate_spec_directory
  # - dump empty layout
  ui.info "  -> #{ui.color('COMPLETE!', :green)}"
end

#start(cluster = nil) ⇒ Object



43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# File 'lib/vagabond/spec.rb', line 43

def start(cluster=nil)
  @options = options.dup
  setup_ui(nil, :no_class_set)
  error = nil
  begin
    if(options[:irl])
      irl_spec(cluster)
    else
      cluster_spec(cluster)
    end
  rescue => error
  ensure
    cluster_destroy(cluster) if options[:auto_destroy] && !options[:irl]
    result = error ? ui.color('FAILED', :red, :bold) : ui.color('PASSED', :green, :bold)
    ui.info "--> Specs for cluster #{cluster}: #{result}"
    raise VagabondError::SpecFailed.new(error) if error
  end
end

#status(name = nil) ⇒ Object



73
74
75
76
# File 'lib/vagabond/spec.rb', line 73

def status(name=nil)
  base_setup
  _status
end