zergrush 0.0.21 → 0.0.24
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.
- checksums.yaml +8 -8
- data/lib/zerg/cli.rb +7 -1
- data/lib/zerg/runner.rb +18 -0
- data/lib/zerg/version.rb +1 -1
- data/zerg.gemspec +2 -2
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
NWNmNTcxZTk3ZTViZmFlNmYyYzEwNGM3M2FlZDczNjdjMDFjM2ZlYg==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
YmYyNDVhZDMwZjJmYTcxYmFkMzFkOWQ1NzhkNzhhZTc2YTE4MTgyNA==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
ODliMmVkODhkZWM2OTk0NjIzMmRlZWUwMjlkNTA4OGNhZDFjZjA1NTJlYWRj
|
10
|
+
MDBjYTY0ZjQ2YTFmMzE0ZmUzNGIwMTU0MjRiMjQzYzE1Zjk3NDZlMDk1NzZm
|
11
|
+
OGYzM2IyOGNjZWE4YzRlMWNkMmE1ZjQ0M2E2MDE5YTczZTAwNjg=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
ZjFkNWI1NzJiZDIwMmMxZWVlMzVjOWJhNWI3YTQxOTZkMTljZmVlYmI1NzBm
|
14
|
+
MjZkMDZhMTE0MzBmOGE2MzQ2NWNlOGU0MzRjYmNmMWVlYmRmOGIyNGI1YWFl
|
15
|
+
YjQ2MTllMGFkZjk5MGRlNWMzYzlhOTVjMjgxM2I3MjUxZjc4MDY=
|
data/lib/zerg/cli.rb
CHANGED
@@ -59,7 +59,8 @@ module Zerg
|
|
59
59
|
|
60
60
|
class CLI < Thor
|
61
61
|
class_option :force, :type => :boolean, :banner => "force overwrite of files"
|
62
|
-
class_option :debug, :type => :boolean, :banner => "add debug option to driver"
|
62
|
+
class_option :debug, :type => :boolean, :banner => "add debug option to driver"
|
63
|
+
class_option :base, :type => :string, :banner => "base name for the snapshot"
|
63
64
|
|
64
65
|
def self.exit_on_failure?
|
65
66
|
true
|
@@ -84,6 +85,11 @@ module Zerg
|
|
84
85
|
def halt(task)
|
85
86
|
puts Zerg::Runner.halt(task, options[:debug])
|
86
87
|
end
|
88
|
+
|
89
|
+
desc "snapshot [TASK]", "takes a snapshot of currently running vms"
|
90
|
+
def snapshot(task)
|
91
|
+
puts Zerg::Runner.snapshot(task, options[:base])
|
92
|
+
end
|
87
93
|
|
88
94
|
register(HiveCLI, 'hive', 'hive [COMMAND]', 'Manage hive - a collection of task descriptions.')
|
89
95
|
end
|
data/lib/zerg/runner.rb
CHANGED
@@ -82,5 +82,23 @@ module Zerg
|
|
82
82
|
end
|
83
83
|
puts("SUCCESS!")
|
84
84
|
end
|
85
|
+
|
86
|
+
def self.snapshot(task, base)
|
87
|
+
# load the hive first
|
88
|
+
Zerg::Hive.instance.load
|
89
|
+
|
90
|
+
puts "Loaded hive. Looking for task #{task}..."
|
91
|
+
abort("ERROR: Task #{task} not found in current hive!") unless Zerg::Hive.instance.hive.has_key?(task)
|
92
|
+
|
93
|
+
begin
|
94
|
+
pmgr = ZergGemPlugin::Manager.instance
|
95
|
+
pmgr.load
|
96
|
+
driver = pmgr.create("/driver/#{Zerg::Hive.instance.hive[task]["vm"]["driver"]["drivertype"]}")
|
97
|
+
driver.snapshot Zerg::Hive.instance.load_path, task, Zerg::Hive.instance.hive[task], base
|
98
|
+
rescue ZergGemPlugin::PluginNotLoaded
|
99
|
+
abort("ERROR: driver #{Zerg::Hive.instance.hive[task]["vm"]["driver"]["drivertype"]} not found. Did you install the plugin gem?")
|
100
|
+
end
|
101
|
+
puts("SUCCESS!")
|
102
|
+
end
|
85
103
|
end
|
86
104
|
end
|
data/lib/zerg/version.rb
CHANGED
data/zerg.gemspec
CHANGED
@@ -26,8 +26,8 @@ Gem::Specification.new do |s|
|
|
26
26
|
s.add_dependency "json-schema"
|
27
27
|
s.add_dependency "thor"
|
28
28
|
s.add_dependency "highline"
|
29
|
-
s.add_dependency "zergrush_vagrant", ">= 0.0.
|
30
|
-
s.add_dependency "zergrush_cf", ">= 0.0.
|
29
|
+
s.add_dependency "zergrush_vagrant", ">= 0.0.5"
|
30
|
+
s.add_dependency "zergrush_cf", ">= 0.0.17"
|
31
31
|
|
32
32
|
s.files = `git ls-files`.split("\n")
|
33
33
|
s.executables = `git ls-files`.split("\n").map{|f| f =~ /^bin\/(.*)/ ? $1 : nil}.compact
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: zergrush
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.24
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- MTN Satellite Communications
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-09-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -156,28 +156,28 @@ dependencies:
|
|
156
156
|
requirements:
|
157
157
|
- - ! '>='
|
158
158
|
- !ruby/object:Gem::Version
|
159
|
-
version: 0.0.
|
159
|
+
version: 0.0.5
|
160
160
|
type: :runtime
|
161
161
|
prerelease: false
|
162
162
|
version_requirements: !ruby/object:Gem::Requirement
|
163
163
|
requirements:
|
164
164
|
- - ! '>='
|
165
165
|
- !ruby/object:Gem::Version
|
166
|
-
version: 0.0.
|
166
|
+
version: 0.0.5
|
167
167
|
- !ruby/object:Gem::Dependency
|
168
168
|
name: zergrush_cf
|
169
169
|
requirement: !ruby/object:Gem::Requirement
|
170
170
|
requirements:
|
171
171
|
- - ! '>='
|
172
172
|
- !ruby/object:Gem::Version
|
173
|
-
version: 0.0.
|
173
|
+
version: 0.0.17
|
174
174
|
type: :runtime
|
175
175
|
prerelease: false
|
176
176
|
version_requirements: !ruby/object:Gem::Requirement
|
177
177
|
requirements:
|
178
178
|
- - ! '>='
|
179
179
|
- !ruby/object:Gem::Version
|
180
|
-
version: 0.0.
|
180
|
+
version: 0.0.17
|
181
181
|
description: Zerg is a tool for launching an arbitrary number of virtual machines
|
182
182
|
and running a task on all of them at once
|
183
183
|
email:
|