foodtaster 0.0.6 → 0.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/lib/foodtaster/client.rb
CHANGED
@@ -26,8 +26,9 @@ module Foodtaster
|
|
26
26
|
end
|
27
27
|
|
28
28
|
[:vm_defined?, :prepare_vm, :rollback_vm,
|
29
|
-
|
30
|
-
|
29
|
+
:run_chef_on_vm, :execute_command_on_vm,
|
30
|
+
:shutdown_vm, :vm_running?, :initial_snapshot_made_on_vm?,
|
31
|
+
:start_vm, :make_initial_snapshot_on_vm].each do |method_name|
|
31
32
|
define_method method_name do |*args|
|
32
33
|
begin
|
33
34
|
@v.send(method_name, *args)
|
data/lib/foodtaster/version.rb
CHANGED
data/lib/foodtaster/vm.rb
CHANGED
@@ -53,13 +53,38 @@ module Foodtaster
|
|
53
53
|
self.class.register_vm(self)
|
54
54
|
end
|
55
55
|
|
56
|
+
def running?
|
57
|
+
@client.vm_running?(self.name)
|
58
|
+
end
|
59
|
+
|
60
|
+
def initial_snapshot_made?
|
61
|
+
@client.initial_snapshot_made_on_vm?(self.name)
|
62
|
+
end
|
63
|
+
|
64
|
+
def start!
|
65
|
+
Foodtaster.logger.info "#{name}: Power on machine"
|
66
|
+
@client.start_vm(self.name)
|
67
|
+
end
|
68
|
+
|
69
|
+
def make_initial_snapshot!
|
70
|
+
Foodtaster.logger.info "#{name}: Creating initial snapshot"
|
71
|
+
@client.make_initial_snapshot_on_vm(self.name)
|
72
|
+
end
|
73
|
+
|
56
74
|
def prepare
|
57
75
|
Foodtaster.logger.info "#{name}: Preparing VM"
|
58
|
-
|
76
|
+
|
77
|
+
unless running?
|
78
|
+
self.start!
|
79
|
+
end
|
80
|
+
|
81
|
+
unless initial_snapshot_made?
|
82
|
+
self.make_initial_snapshot!
|
83
|
+
end
|
59
84
|
end
|
60
85
|
|
61
86
|
def prepared?
|
62
|
-
|
87
|
+
self.running? && self.initial_snapshot_made?
|
63
88
|
end
|
64
89
|
|
65
90
|
def shutdown
|