veronic 0.0.13 → 0.0.14
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +2 -2
- data/lib/providers/chefserver/instance.rb +2 -1
- data/lib/providers/ec2/image.rb +15 -15
- data/lib/veronic.rb +11 -14
- data/veronic.gemspec +2 -2
- metadata +2 -2
data/README.md
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
Veronic
|
2
2
|
=======
|
3
3
|
|
4
|
-
Veronic,
|
4
|
+
Veronic, a simple cloud deployer
|
5
5
|
|
6
6
|
1) Create veronic directory:
|
7
7
|
|
@@ -23,4 +23,4 @@ Usage
|
|
23
23
|
````
|
24
24
|
$ gem install veronic
|
25
25
|
$ veronic --help
|
26
|
-
````
|
26
|
+
````
|
@@ -66,12 +66,13 @@ module Provider
|
|
66
66
|
begin
|
67
67
|
node.run
|
68
68
|
rescue
|
69
|
+
puts "Creation of #{@name} failed"
|
69
70
|
self.destroy([node.server.id])
|
70
71
|
self.bootstrap(recursive_count+=1) if recursive_count < 3
|
71
72
|
end
|
72
73
|
end
|
73
74
|
|
74
|
-
def destroy(instance_ids
|
75
|
+
def destroy(instance_ids=[])
|
75
76
|
puts "Deleting ec2 server #{@name} ..."
|
76
77
|
|
77
78
|
node = Chef::Knife::Ec2ServerDelete.new()
|
data/lib/providers/ec2/image.rb
CHANGED
@@ -32,29 +32,29 @@ module Provider
|
|
32
32
|
|
33
33
|
def image
|
34
34
|
puts "Getting image #{@ami_name}..."
|
35
|
-
@image
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
35
|
+
@image ||= get_image
|
36
|
+
end
|
37
|
+
|
38
|
+
def get_image
|
39
|
+
images = @ec2.images
|
40
|
+
my_image = images.with_owner(@owner_id).select {|x| x.name == @ami_name}.first
|
41
|
+
unless my_image
|
42
|
+
my_image = images[@name]
|
43
|
+
unless my_image.exists?
|
44
|
+
return false
|
45
|
+
end
|
46
|
+
else
|
47
|
+
while my_image.exists? == false && my_image.state != :failed
|
42
48
|
print "."
|
43
49
|
sleep 1
|
44
50
|
end
|
45
|
-
while
|
51
|
+
while my_image.state == :pending && my_image.state != :failed
|
46
52
|
print "."
|
47
53
|
sleep 1
|
48
54
|
end
|
49
55
|
puts ""
|
50
|
-
return @image
|
51
|
-
else
|
52
|
-
return false
|
53
56
|
end
|
54
|
-
|
55
|
-
|
56
|
-
def get_image
|
57
|
-
@ec2.images.with_owner(@owner_id).select {|x| x.name == @ami_name}.first
|
57
|
+
return my_image
|
58
58
|
end
|
59
59
|
|
60
60
|
end
|
data/lib/veronic.rb
CHANGED
@@ -88,16 +88,13 @@ module Veronic
|
|
88
88
|
end
|
89
89
|
|
90
90
|
def deploy
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
end
|
99
|
-
configprovider.ssh(query, @deploy_cmd, manual)
|
100
|
-
end
|
91
|
+
unless @config.deploy_cmd
|
92
|
+
abort('Arguments --deploy_cmd is missing')
|
93
|
+
end
|
94
|
+
bootstrap
|
95
|
+
query = cloudprovider.instance.dns_name
|
96
|
+
manual = true
|
97
|
+
configprovider.ssh(query, @config.deploy_cmd, manual)
|
101
98
|
end
|
102
99
|
|
103
100
|
def update_instance_dns
|
@@ -129,7 +126,7 @@ module Veronic
|
|
129
126
|
if @config.name
|
130
127
|
return cloudprovider.instance.status
|
131
128
|
else
|
132
|
-
return "Arguments name missing"
|
129
|
+
return "Arguments --name is missing"
|
133
130
|
end
|
134
131
|
end
|
135
132
|
|
@@ -154,7 +151,7 @@ module Veronic
|
|
154
151
|
|
155
152
|
def create_image
|
156
153
|
unless @config.environment
|
157
|
-
abort('Arguments
|
154
|
+
abort('Arguments --environment is missing')
|
158
155
|
else
|
159
156
|
configprovider.instance.delete_client_key(cloudprovider.instance.dns_name)
|
160
157
|
configprovider.instance.client.destroy
|
@@ -168,14 +165,14 @@ module Veronic
|
|
168
165
|
configprovider.instance.set_environment
|
169
166
|
configprovider.instance.set_role
|
170
167
|
else
|
171
|
-
abort('Arguments
|
168
|
+
abort('Arguments --role or --environment is missing')
|
172
169
|
end
|
173
170
|
end
|
174
171
|
|
175
172
|
def get_image
|
176
173
|
if @config.image.nil?
|
177
174
|
unless @config.environment
|
178
|
-
abort('Arguments
|
175
|
+
abort('Arguments --environment is missing')
|
179
176
|
else
|
180
177
|
@config.image = cloudprovider.image.id
|
181
178
|
end
|
data/veronic.gemspec
CHANGED
@@ -1,9 +1,9 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
s.name = 'veronic'
|
3
|
-
s.version = '0.0.
|
3
|
+
s.version = '0.0.14'
|
4
4
|
s.date = '2013-04-05'
|
5
5
|
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
6
|
-
s.summary = "Veronic,
|
6
|
+
s.summary = "Veronic, a simple cloud deployer"
|
7
7
|
s.description = "A simple cloud deployer"
|
8
8
|
s.authors = ["Gabriel Klein"]
|
9
9
|
s.email = 'gabriel.klein.fr@gmail.com'
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: veronic
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.14
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -126,5 +126,5 @@ rubyforge_project:
|
|
126
126
|
rubygems_version: 1.8.24
|
127
127
|
signing_key:
|
128
128
|
specification_version: 3
|
129
|
-
summary: Veronic,
|
129
|
+
summary: Veronic, a simple cloud deployer
|
130
130
|
test_files: []
|