megam_api 0.7.1 → 0.7.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/megam/api.rb +6 -1
- data/lib/megam/api/appdefns.rb +10 -0
- data/lib/megam/api/cloud_tool_settings.rb +0 -1
- data/lib/megam/api/version.rb +1 -1
- data/lib/megam/builder/delete_node.rb +57 -58
- data/lib/megam/builder/make_node.rb +9 -5
- data/lib/megam/core/app_request.rb +0 -7
- data/lib/megam/core/appdefns.rb +8 -30
- data/lib/megam/core/boltdefns.rb +12 -10
- data/lib/megam/core/cloudtoolsetting.rb +40 -15
- data/lib/megam/core/cloudtoolsetting_collection.rb +6 -6
- data/lib/megam/core/predefcloud.rb +2 -0
- data/test/test_appdefns.rb +8 -8
- data/test/test_appreqs.rb +3 -6
- data/test/test_boltdefns.rb +0 -2
- data/test/test_boltreqs.rb +0 -2
- data/test/test_cloudtoolsettings.rb +10 -7
- data/test/test_nodes.rb +34 -50
- data/test/test_predefclouds.rb +8 -4
- data/test/test_requests.rb +22 -26
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 18c65c1b5bad20bae3824e93dc24c97a5e78af5b
|
4
|
+
data.tar.gz: 549d74e7aa3e9c1319c55183409a84ce9417cd87
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: aa1e94ce4b19cad03b9aa4d32caea27ab1607bb71ae3a6ab9b8bc57c170af6761bef0699ae5585e7c2e3c7aef8eb17d5b5d06db0d4caaa53992c906903b9fa3d
|
7
|
+
data.tar.gz: 9a7596daa4428473102a9ee50a1c3b8f25ad1dad16085f662cdb00774cbb5fc13e7b85da1bfd25f6d7761d51e1719d565699e359763461e2b37e2f1f1295cdc9
|
data/lib/megam/api.rb
CHANGED
@@ -115,6 +115,7 @@ module Megam
|
|
115
115
|
end
|
116
116
|
|
117
117
|
def request(params,&block)
|
118
|
+
just_color_debug("#{@options[:path]}")
|
118
119
|
start = Time.now
|
119
120
|
Megam::Log.debug("START")
|
120
121
|
params.each do |pkey, pvalue|
|
@@ -137,7 +138,7 @@ module Megam
|
|
137
138
|
end
|
138
139
|
reerror = klass.new(error.message, error.response)
|
139
140
|
reerror.set_backtrace(error.backtrace)
|
140
|
-
Megam::Log.
|
141
|
+
Megam::Log.debug("#{reerror.response.body}")
|
141
142
|
reerror.response.body = Megam::JSONCompat.from_json(reerror.response.body.chomp)
|
142
143
|
Megam::Log.debug("RESPONSE ERR: Ruby Object")
|
143
144
|
Megam::Log.debug("#{reerror.response.body}")
|
@@ -177,6 +178,10 @@ module Megam
|
|
177
178
|
|
178
179
|
private
|
179
180
|
|
181
|
+
def just_color_debug(path)
|
182
|
+
text.msg "--> #{text.color("(#{path})", :cyan,:bold)}"
|
183
|
+
end
|
184
|
+
|
180
185
|
#Make a lazy connection.
|
181
186
|
def connection
|
182
187
|
@options[:path] =API_VERSION1+ @options[:path]
|
data/lib/megam/api/appdefns.rb
CHANGED
@@ -10,6 +10,16 @@ module Megam
|
|
10
10
|
:body => @options[:body]
|
11
11
|
)
|
12
12
|
end
|
13
|
+
|
14
|
+
def get_appdefn(node_name,defn_id)
|
15
|
+
@options = {:path => "/appdefns/#{node_name}/#{defn_id}",:body => ""}.merge(@options)
|
16
|
+
|
17
|
+
request(
|
18
|
+
:expects => 200,
|
19
|
+
:method => :get,
|
20
|
+
:body => @options[:body]
|
21
|
+
)
|
22
|
+
end
|
13
23
|
|
14
24
|
def post_appdefn(new_appdefn)
|
15
25
|
@options = {:path => '/appdefns/content',
|
data/lib/megam/api/version.rb
CHANGED
@@ -21,72 +21,71 @@ module Megam
|
|
21
21
|
end
|
22
22
|
|
23
23
|
def self.create(node_name, group, action)
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
24
|
+
|
25
|
+
delete_command = self.new()
|
26
|
+
begin
|
27
|
+
node_collection = delete_command.megam_rest.get_node(node_name)
|
28
|
+
ct_collection = delete_command.megam_rest.get_cloudtools
|
29
|
+
|
30
|
+
rescue ArgumentError => ae
|
31
|
+
hash = {"msg" => ae.message, "msg_type" => "error"}
|
32
|
+
re = Megam::Error.from_hash(hash)
|
33
|
+
return re
|
34
|
+
rescue Megam::API::Errors::ErrorWithResponse => ewr
|
35
|
+
hash = {"msg" => ewr.message, "msg_type" => "error"}
|
36
|
+
re = Megam::Error.from_hash(hash)
|
37
|
+
return re
|
38
|
+
rescue StandardError => se
|
39
|
+
hash = {"msg" => se.message, "msg_type" => "error"}
|
40
|
+
re = Megam::Error.from_hash(hash)
|
41
41
|
return re
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
ci_command = "#{
|
50
|
-
ci_command["<node_name>"] = "#{node_name}"
|
42
|
+
end
|
43
|
+
|
44
|
+
node = node_collection.data[:body].lookup(node_name)
|
45
|
+
tool = ct_collection.data[:body].lookup(node.request[:command]['systemprovider']['provider']['prov'])
|
46
|
+
template = tool.cloudtemplates.lookup(node.request[:command]['compute']['cctype'])
|
47
|
+
cloud_instruction = template.lookup_by_instruction(group, action)
|
48
|
+
ci_command = "#{cloud_instruction.command}"
|
49
|
+
ci_command["<node_name>"] = "#{node_name}"
|
51
50
|
|
52
|
-
command_hash = {
|
53
|
-
"systemprovider" => {
|
54
|
-
"provider" => {
|
55
|
-
"prov" => "#{node.request[:command]['systemprovider']['provider']['prov']}"
|
56
|
-
}
|
57
|
-
},
|
58
|
-
"compute" => {
|
59
|
-
"cctype" => "#{node.request[:command]['compute']['cctype']}",
|
60
|
-
"cc" => {
|
61
|
-
"groups" => "",
|
62
|
-
"image" => "",
|
63
|
-
"flavor" => ""
|
64
|
-
},
|
65
|
-
"access" => {
|
66
|
-
"ssh_key" => "#{node.request[:command]['compute']['access']['ssh_key']}",
|
67
|
-
"identity_file" => "#{node.request[:command]['compute']['access']['identity_file']}",
|
68
|
-
"ssh_user" => "",
|
69
|
-
"vault_location" => "#{node.request[:command]['compute']['access']['vault_location']}",
|
70
|
-
"sshpub_location" => "#{node.request[:command]['compute']['access']['sshpub_location']}",
|
71
|
-
"zone" => "#{node.request[:command]['compute']['access']['zone']}"
|
72
|
-
}
|
73
|
-
},
|
74
|
-
"cloudtool" => {
|
75
|
-
"chef" => {
|
76
|
-
"command" => "#{node.request[:command]['cloudtool']['chef']['prov']}",
|
77
|
-
"plugin" => "#{node.request[:command]['compute']['cctype']} #{ci_command}", #ec2 server delete or create
|
78
|
-
"run_list" => "",
|
79
|
-
"name" => "-N #{node_name}"
|
80
|
-
}
|
81
|
-
}
|
82
|
-
}
|
51
|
+
command_hash = {
|
52
|
+
"systemprovider" => {
|
53
|
+
"provider" => {
|
54
|
+
"prov" => "#{node.request[:command]['systemprovider']['provider']['prov']}"
|
55
|
+
}
|
56
|
+
},
|
57
|
+
"compute" => {
|
58
|
+
"cctype" => "#{node.request[:command]['compute']['cctype']}",
|
59
|
+
"cc" => {
|
60
|
+
"groups" => "",
|
61
|
+
"image" => "",
|
62
|
+
"flavor" => ""
|
63
|
+
},
|
64
|
+
"access" => {
|
65
|
+
"ssh_key" => "#{node.request[:command]['compute']['access']['ssh_key']}",
|
66
|
+
"identity_file" => "#{node.request[:command]['compute']['access']['identity_file']}",
|
67
|
+
"ssh_user" => "",
|
68
|
+
"vault_location" => "#{node.request[:command]['compute']['access']['vault_location']}",
|
69
|
+
"sshpub_location" => "#{node.request[:command]['compute']['access']['sshpub_location']}",
|
70
|
+
"zone" => "#{node.request[:command]['compute']['access']['zone']}"
|
71
|
+
}
|
72
|
+
},
|
73
|
+
"cloudtool" => {
|
74
|
+
"chef" => {
|
75
|
+
"command" => "#{node.request[:command]['cloudtool']['chef']['prov']}",
|
76
|
+
"plugin" => "#{node.request[:command]['compute']['cctype']} #{ci_command}", #ec2 server delete or create
|
77
|
+
"run_list" => "",
|
78
|
+
"name" => "-N #{node_name}"
|
79
|
+
}
|
80
|
+
}
|
81
|
+
}
|
83
82
|
|
84
83
|
node_hash = {
|
85
84
|
"node_name" => "#{node_name}",
|
86
85
|
"req_type" => "#{action}",
|
87
86
|
"command" => command_hash
|
88
87
|
}
|
89
|
-
node_hash
|
88
|
+
node_hash
|
90
89
|
end
|
91
90
|
end
|
92
91
|
end
|
@@ -26,6 +26,7 @@ module Megam
|
|
26
26
|
begin
|
27
27
|
pc_collection = make_command.megam_rest.get_predefclouds
|
28
28
|
ct_collection = make_command.megam_rest.get_cloudtools
|
29
|
+
cts_collection = make_command.megam_rest.get_cloudtoolsettings
|
29
30
|
|
30
31
|
rescue ArgumentError => ae
|
31
32
|
hash = {"msg" => ae.message, "msg_type" => "error"}
|
@@ -45,7 +46,9 @@ predef_cloud = pc_collection.data[:body].lookup("#{data[:predef_cloud_name]}")
|
|
45
46
|
tool = ct_collection.data[:body].lookup(data[:provider])
|
46
47
|
template = tool.cloudtemplates.lookup(predef_cloud.spec[:type_name])
|
47
48
|
cloud_instruction = template.lookup_by_instruction(group, action)
|
48
|
-
|
49
|
+
cts = cts_collection.data[:body].lookup(data[:repo])
|
50
|
+
ci_command = "#{cloud_instruction.command}"
|
51
|
+
ci_command["-c"] = "-c #{cts.conf_location}"
|
49
52
|
ci_name = cloud_instruction.name
|
50
53
|
|
51
54
|
command_hash = {
|
@@ -59,7 +62,8 @@ ci_name = cloud_instruction.name
|
|
59
62
|
"cc"=> {
|
60
63
|
"groups" => "#{predef_cloud.spec[:groups]}",
|
61
64
|
"image" => "#{predef_cloud.spec[:image]}",
|
62
|
-
"flavor" => "#{predef_cloud.spec[:flavor]}"
|
65
|
+
"flavor" => "#{predef_cloud.spec[:flavor]}",
|
66
|
+
"tenant_id" => "#{predef_cloud.spec[:tenant_id]}"
|
63
67
|
},
|
64
68
|
"access" => {
|
65
69
|
"ssh_key" => "#{predef_cloud.access[:ssh_key]}",
|
@@ -67,7 +71,8 @@ ci_name = cloud_instruction.name
|
|
67
71
|
"ssh_user" => "#{predef_cloud.access[:ssh_user]}",
|
68
72
|
"vault_location" => "#{predef_cloud.access[:vault_location]}",
|
69
73
|
"sshpub_location" => "#{predef_cloud.access[:sshpub_location]}",
|
70
|
-
"zone" => "#{predef_cloud.access[:zone]}"
|
74
|
+
"zone" => "#{predef_cloud.access[:zone]}",
|
75
|
+
"region" => "#{predef_cloud.access[:region]}"
|
71
76
|
}
|
72
77
|
},
|
73
78
|
"cloudtool" => {
|
@@ -99,8 +104,7 @@ ci_name = cloud_instruction.name
|
|
99
104
|
end
|
100
105
|
if data[:book_type] == "BOLT"
|
101
106
|
node_hash["boltdefns"] = {"username" => "#{data['user_name']}", "apikey" => "#{data['password']}", "store_name" => "#{data['store_db_name']}", "url" => "#{data['url']}", "prime" => "#{data['prime']}", "timetokill" => "#{data['timetokill']}", "metered" => "#{data['monitoring']}", "logging" => "#{data['logging']}", "runtime_exec" => "#{data['runtime_exec']}" }
|
102
|
-
end
|
103
|
-
|
107
|
+
end
|
104
108
|
node_hash
|
105
109
|
end
|
106
110
|
end
|
@@ -17,13 +17,6 @@ module Megam
|
|
17
17
|
class AppRequest
|
18
18
|
# Each notify entry is a resource/action pair, modeled as an
|
19
19
|
# Struct with a #resource and #action member
|
20
|
-
=begin
|
21
|
-
def self.hash_tree
|
22
|
-
Hash.new do |hash, key|
|
23
|
-
hash[key] = hash_tree
|
24
|
-
end
|
25
|
-
end
|
26
|
-
=end
|
27
20
|
|
28
21
|
def initialize
|
29
22
|
@id = nil
|
data/lib/megam/core/appdefns.rb
CHANGED
@@ -17,13 +17,6 @@ module Megam
|
|
17
17
|
class Appdefns
|
18
18
|
# Each notify entry is a resource/action pair, modeled as an
|
19
19
|
# Struct with a #resource and #action member
|
20
|
-
=begin
|
21
|
-
def self.hash_tree
|
22
|
-
Hash.new do |hash, key|
|
23
|
-
hash[key] = hash_tree
|
24
|
-
end
|
25
|
-
end
|
26
|
-
=end
|
27
20
|
|
28
21
|
def initialize
|
29
22
|
@id = nil
|
@@ -33,6 +26,7 @@ module Megam
|
|
33
26
|
@created_at = nil
|
34
27
|
@some_msg = {}
|
35
28
|
end
|
29
|
+
|
36
30
|
def appdefns
|
37
31
|
self
|
38
32
|
end
|
@@ -74,7 +68,6 @@ module Megam
|
|
74
68
|
end
|
75
69
|
end
|
76
70
|
|
77
|
-
|
78
71
|
def created_at(arg=nil)
|
79
72
|
if arg != nil
|
80
73
|
@created_at = arg
|
@@ -97,8 +90,6 @@ module Megam
|
|
97
90
|
|
98
91
|
# Transform the ruby obj -> to a Hash
|
99
92
|
def to_hash
|
100
|
-
puts "===================> CLASS NAME ====================================="
|
101
|
-
puts self.class.name
|
102
93
|
index_hash = Hash.new
|
103
94
|
index_hash["json_claz"] = self.class.name
|
104
95
|
index_hash["id"] = id
|
@@ -127,25 +118,7 @@ puts self.class.name
|
|
127
118
|
result
|
128
119
|
end
|
129
120
|
|
130
|
-
|
131
|
-
#
|
132
|
-
#[{
|
133
|
-
#"id":"NOD362212018897289216",
|
134
|
-
#"accounts_id":"ACT362211962353876992",
|
135
|
-
#"json_claz":"Megam::Node",
|
136
|
-
#"request":{
|
137
|
-
#"req_id":"NOD362212018897289216",
|
138
|
-
#"command":"commands"
|
139
|
-
#},
|
140
|
-
#"predefs":{
|
141
|
-
#"name":"",
|
142
|
-
#"scm":"",
|
143
|
-
#"war":"",
|
144
|
-
#"db":"",
|
145
|
-
#"queue":""
|
146
|
-
#}
|
147
|
-
#}]
|
148
|
-
#
|
121
|
+
|
149
122
|
def self.json_create(o)
|
150
123
|
appdefns = new
|
151
124
|
appdefns.id(o["id"]) if o.has_key?("id")
|
@@ -198,10 +171,15 @@ puts self.class.name
|
|
198
171
|
appdefns = self.new()
|
199
172
|
appdefns.megam_rest.get_appdefn(node_name)
|
200
173
|
end
|
174
|
+
|
175
|
+
# Load a account by email_p
|
176
|
+
def self.show(node_name, id)
|
177
|
+
appdefns = self.new()
|
178
|
+
appdefns.megam_rest.get_appdefn(node_name,id)
|
179
|
+
end
|
201
180
|
|
202
181
|
def to_s
|
203
182
|
Megam::Stuff.styled_hash(to_hash)
|
204
|
-
#"---> Megam::Account:[error=#{error?}]\n"+
|
205
183
|
end
|
206
184
|
|
207
185
|
end
|
data/lib/megam/core/boltdefns.rb
CHANGED
@@ -19,13 +19,12 @@ module Megam
|
|
19
19
|
# Each notify entry is a resource/action pair, modeled as an
|
20
20
|
# Struct with a #resource and #action member
|
21
21
|
=begin
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
22
|
+
def self.hash_tree
|
23
|
+
Hash.new do |hash, key|
|
24
|
+
hash[key] = hash_tree
|
25
|
+
end
|
26
|
+
end
|
27
27
|
=end
|
28
|
-
|
29
28
|
def initialize
|
30
29
|
@id = nil
|
31
30
|
@node_id = nil
|
@@ -34,6 +33,7 @@ module Megam
|
|
34
33
|
@created_at = nil
|
35
34
|
@some_msg = {}
|
36
35
|
end
|
36
|
+
|
37
37
|
def boltdefns
|
38
38
|
self
|
39
39
|
end
|
@@ -75,7 +75,6 @@ module Megam
|
|
75
75
|
end
|
76
76
|
end
|
77
77
|
|
78
|
-
|
79
78
|
def created_at(arg=nil)
|
80
79
|
if arg != nil
|
81
80
|
@created_at = arg
|
@@ -152,7 +151,6 @@ module Megam
|
|
152
151
|
boltdefns.node_name(o["node_name"]) if o.has_key?("node_name")
|
153
152
|
boltdefns.created_at(o["created_at"]) if o.has_key?("created_at")
|
154
153
|
|
155
|
-
|
156
154
|
#APP DEFINITIONS
|
157
155
|
op = o["boltdefns"]
|
158
156
|
boltdefns.boltdefns[:username] = op["username"] if op && op.has_key?("username")
|
@@ -199,16 +197,20 @@ module Megam
|
|
199
197
|
megam_rest.post_boltdefn(to_hash)
|
200
198
|
end
|
201
199
|
|
202
|
-
#
|
200
|
+
# Show all bolt defns by [node_name]/email
|
203
201
|
def self.show(node_name)
|
204
202
|
boltdefns = self.new()
|
205
203
|
boltdefns.megam_rest.get_boltdefn(node_name)
|
204
|
+
end
|
206
205
|
|
206
|
+
# Show a bolt defn by [node_name, defn id] for an email
|
207
|
+
def self.show(node_name,id)
|
208
|
+
boltdefns = self.new()
|
209
|
+
boltdefns.megam_rest.get_boltdefn(node_name,id)
|
207
210
|
end
|
208
211
|
|
209
212
|
def to_s
|
210
213
|
Megam::Stuff.styled_hash(to_hash)
|
211
|
-
#"---> Megam::Account:[error=#{error?}]\n"+
|
212
214
|
end
|
213
215
|
|
214
216
|
end
|
@@ -1,4 +1,3 @@
|
|
1
|
-
|
2
1
|
# Copyright:: Copyright (c) 2012, 2013 Megam Systems
|
3
2
|
# License:: Apache License, Version 2.0
|
4
3
|
#
|
@@ -19,11 +18,13 @@ module Megam
|
|
19
18
|
# Each notify entry is a resource/action pair, modeled as an
|
20
19
|
# Struct with a #resource and #action member
|
21
20
|
def initialize
|
22
|
-
@id = nil
|
21
|
+
@id = nil
|
23
22
|
@accounts_id = nil
|
24
23
|
@cloud_type = nil
|
24
|
+
@repo_name = nil
|
25
25
|
@repo = nil
|
26
|
-
@vault_location=nil
|
26
|
+
@vault_location=nil
|
27
|
+
@conf_location=nil
|
27
28
|
@created_at = nil
|
28
29
|
@some_msg = {}
|
29
30
|
end
|
@@ -43,7 +44,7 @@ module Megam
|
|
43
44
|
else
|
44
45
|
@id
|
45
46
|
end
|
46
|
-
end
|
47
|
+
end
|
47
48
|
|
48
49
|
def accounts_id(arg=nil)
|
49
50
|
if arg != nil
|
@@ -61,6 +62,14 @@ module Megam
|
|
61
62
|
end
|
62
63
|
end
|
63
64
|
|
65
|
+
def repo_name(arg=nil)
|
66
|
+
if arg != nil
|
67
|
+
@repo_name = arg
|
68
|
+
else
|
69
|
+
@repo_name
|
70
|
+
end
|
71
|
+
end
|
72
|
+
|
64
73
|
def repo(arg=nil)
|
65
74
|
if arg != nil
|
66
75
|
@repo = arg
|
@@ -75,7 +84,15 @@ module Megam
|
|
75
84
|
else
|
76
85
|
@vault_location
|
77
86
|
end
|
78
|
-
end
|
87
|
+
end
|
88
|
+
|
89
|
+
def conf_location(arg=nil)
|
90
|
+
if arg != nil
|
91
|
+
@conf_location= arg
|
92
|
+
else
|
93
|
+
@conf_location
|
94
|
+
end
|
95
|
+
end
|
79
96
|
|
80
97
|
def created_at(arg=nil)
|
81
98
|
if arg != nil
|
@@ -101,11 +118,13 @@ module Megam
|
|
101
118
|
def to_hash
|
102
119
|
index_hash = Hash.new
|
103
120
|
index_hash["json_claz"] = self.class.name
|
104
|
-
index_hash["id"] = id
|
121
|
+
index_hash["id"] = id
|
105
122
|
index_hash["accounts_id"] = accounts_id
|
106
123
|
index_hash["cloud_type"] = cloud_type
|
124
|
+
index_hash["repo_name"] = repo_name
|
107
125
|
index_hash["repo"] = repo
|
108
|
-
index_hash["vault_location"] = vault_location
|
126
|
+
index_hash["vault_location"] = vault_location
|
127
|
+
index_hash["conf_location"] = conf_location
|
109
128
|
index_hash["created_at"] = created_at
|
110
129
|
index_hash["some_msg"] = some_msg
|
111
130
|
index_hash
|
@@ -119,11 +138,13 @@ module Megam
|
|
119
138
|
|
120
139
|
def for_json
|
121
140
|
result = {
|
122
|
-
"id" => id,
|
141
|
+
"id" => id,
|
123
142
|
"accounts_id" => accounts_id,
|
124
143
|
"cloud_type" => cloud_type,
|
125
144
|
"repo" => repo,
|
126
|
-
"
|
145
|
+
"repo_name" => repo_name,
|
146
|
+
"vault_location" => vault_location,
|
147
|
+
"conf_location" => conf_location,
|
127
148
|
"created_at" => created_at
|
128
149
|
}
|
129
150
|
result
|
@@ -132,12 +153,14 @@ module Megam
|
|
132
153
|
#
|
133
154
|
def self.json_create(o)
|
134
155
|
cts = new
|
135
|
-
cts.id(o["id"]) if o.has_key?("id")
|
156
|
+
cts.id(o["id"]) if o.has_key?("id")
|
136
157
|
cts.accounts_id(o["accounts_id"]) if o.has_key?("accounts_id")
|
137
158
|
cts.cloud_type(o["cloud_type"]) if o.has_key?("cloud_type")
|
159
|
+
cts.repo_name(o["repo_name"]) if o.has_key?("repo_name")
|
138
160
|
cts.repo(o["repo"]) if o.has_key?("repo")
|
139
|
-
cts.vault_location(o["vault_location"]) if o.has_key?("vault_location")
|
140
|
-
|
161
|
+
cts.vault_location(o["vault_location"]) if o.has_key?("vault_location")
|
162
|
+
cts.conf_location(o["conf_location"]) if o.has_key?("conf_location")
|
163
|
+
|
141
164
|
cts.created_at(o["created_at"]) if o.has_key?("created_at")
|
142
165
|
#success or error
|
143
166
|
cts.some_msg[:code] = o["code"] if o.has_key?("code")
|
@@ -157,8 +180,10 @@ module Megam
|
|
157
180
|
@id = o[:id] if o.has_key?(:id)
|
158
181
|
@accounts_id = o[:accounts_id] if o.has_key?(:accounts_id)
|
159
182
|
@cloud_type = o[:cloud_type] if o.has_key?(:cloud_type)
|
183
|
+
@repo_name = o[:repo_name] if o.has_key?(:repo_name)
|
160
184
|
@repo = o[:repo] if o.has_key?(:repo)
|
161
|
-
@vault_location = o[:vault_location] if o.has_key?(:vault_location)
|
185
|
+
@vault_location = o[:vault_location] if o.has_key?(:vault_location)
|
186
|
+
@conf_location = o[:conf_location] if o.has_key?(:conf_location)
|
162
187
|
@created_at = o[:created_at] if o.has_key?(:created_at)
|
163
188
|
self
|
164
189
|
end
|
@@ -177,14 +202,14 @@ module Megam
|
|
177
202
|
# returns a cloudtoolsettingsCollection
|
178
203
|
# don't return self. check if the Megam::cloudtoolsettingCollection is returned.
|
179
204
|
def self.list
|
180
|
-
|
205
|
+
cts = self.new()
|
181
206
|
cts.megam_rest.get_cloudtoolsettings
|
182
207
|
end
|
183
208
|
|
184
209
|
# Show a particular cloudtoolsetting by name,
|
185
210
|
# Megam::cloudtoolsetting
|
186
211
|
def self.show(p_name)
|
187
|
-
|
212
|
+
pre = self.new()
|
188
213
|
pre.megam_rest.get_cloudtoolsetting(p_name)
|
189
214
|
end
|
190
215
|
|
@@ -35,14 +35,14 @@ module Megam
|
|
35
35
|
def []=(index, arg)
|
36
36
|
is_megam_cloudtoolsettings(arg)
|
37
37
|
@cloudtoolsettings[index] = arg
|
38
|
-
@cloudtoolsettings_by_name[arg.
|
38
|
+
@cloudtoolsettings_by_name[arg.repo_name] = index
|
39
39
|
end
|
40
40
|
|
41
41
|
def <<(*args)
|
42
42
|
args.flatten.each do |a|
|
43
43
|
is_megam_cloudtoolsettings(a)
|
44
44
|
@cloudtoolsettings << a
|
45
|
-
@cloudtoolsettings_by_name[a.
|
45
|
+
@cloudtoolsettings_by_name[a.repo_name] =@cloudtoolsettings.length - 1
|
46
46
|
end
|
47
47
|
self
|
48
48
|
end
|
@@ -61,11 +61,11 @@ module Megam
|
|
61
61
|
@cloudtoolsettings_by_name.each_key do |key|
|
62
62
|
@cloudtoolsettings_by_name[key] += 1 if@cloudtoolsettings_by_name[key] > @insert_after_idx
|
63
63
|
end
|
64
|
-
@cloudtoolsettings_by_name[cloudtoolsettings.
|
64
|
+
@cloudtoolsettings_by_name[cloudtoolsettings.repo_name] = @insert_after_idx + 1
|
65
65
|
@insert_after_idx += 1
|
66
66
|
else
|
67
67
|
@cloudtoolsettings << cloudtoolsettings
|
68
|
-
@cloudtoolsettings_by_name[cloudtoolsettings.
|
68
|
+
@cloudtoolsettings_by_name[cloudtoolsettings.repo_name] =@cloudtoolsettings.length - 1
|
69
69
|
end
|
70
70
|
end
|
71
71
|
|
@@ -88,7 +88,7 @@ module Megam
|
|
88
88
|
def lookup(cloudtoolsettings)
|
89
89
|
lookup_by = nil
|
90
90
|
if cloudtoolsettings.kind_of?(Megam::CloudToolSetting)
|
91
|
-
lookup_by = cloudtoolsettings.
|
91
|
+
lookup_by = cloudtoolsettings.repo_name
|
92
92
|
elsif cloudtoolsettings.kind_of?(String)
|
93
93
|
lookup_by = cloudtoolsettings
|
94
94
|
else
|
@@ -105,7 +105,7 @@ module Megam
|
|
105
105
|
def to_hash
|
106
106
|
index_hash = Hash.new
|
107
107
|
self.each do |cloudtoolsettings|
|
108
|
-
index_hash[cloudtoolsettings.
|
108
|
+
index_hash[cloudtoolsettings.repo_name] = cloudtoolsettings.to_s
|
109
109
|
end
|
110
110
|
index_hash
|
111
111
|
end
|
@@ -161,6 +161,7 @@ module Megam
|
|
161
161
|
predefcd.spec[:groups] = oq["groups"] if oq && oq.has_key?("groups")
|
162
162
|
predefcd.spec[:image] = oq["image"] if oq && oq.has_key?("image")
|
163
163
|
predefcd.spec[:flavor] = oq["flavor"] if oq && oq.has_key?("flavor")
|
164
|
+
predefcd.spec[:tenant_id] = oq["tenant_id"] if oq && oq.has_key?("tenant_id")
|
164
165
|
#predef
|
165
166
|
op = o["access"]
|
166
167
|
predefcd.access[:ssh_key] = op["ssh_key"] if op && op.has_key?("ssh_key")
|
@@ -169,6 +170,7 @@ module Megam
|
|
169
170
|
predefcd.access[:vault_location]= op["vault_location"] if op && op.has_key?("vault_location")
|
170
171
|
predefcd.access[:sshpub_location]= op["sshpub_location"] if op && op.has_key?("sshpub_location")
|
171
172
|
predefcd.access[:zone]= op["zone"] if op && op.has_key?("zone")
|
173
|
+
predefcd.access[:region]= op["region"] if op && op.has_key?("region")
|
172
174
|
#access
|
173
175
|
# predefcd.ideal(o["ideal"]) if o.has_key?("ideal")
|
174
176
|
# predefcd.performance(o["performance"]) if o.has_key?("performance")
|
data/test/test_appdefns.rb
CHANGED
@@ -1,23 +1,23 @@
|
|
1
1
|
require File.expand_path("#{File.dirname(__FILE__)}/test_helper")
|
2
2
|
|
3
3
|
class TestApps < MiniTest::Unit::TestCase
|
4
|
-
|
5
4
|
def test_post_appdefns
|
6
|
-
|
7
|
-
tmp_hash = {
|
5
|
+
tmp_hash = {
|
8
6
|
"node_name" => "black1.megam.co",
|
9
|
-
|
7
|
+
"appdefns" => {"timetokill" => "test1", "metered" => "test1", "logging" => "test1", "runtime_exec" => "test"}
|
10
8
|
}
|
11
|
-
|
12
|
-
puts "======================> POST APPDEFNS TEMP HASH <============================================= "
|
13
|
-
puts tmp_hash
|
14
9
|
response = megams.post_appdefn(tmp_hash)
|
15
10
|
assert_equal(201, response.status)
|
16
11
|
end
|
17
12
|
|
18
|
-
def
|
13
|
+
def test_get_appdefns_node
|
19
14
|
response = megams.get_appdefn("black1.megam.co")
|
20
15
|
assert_equal(200, response.status)
|
21
16
|
end
|
22
17
|
|
18
|
+
def test_get_appdefns
|
19
|
+
response = megams.get_appdefn("asphyxiated1.megam.co","ADF412857952341327872")
|
20
|
+
assert_equal(200, response.status)
|
21
|
+
end
|
22
|
+
|
23
23
|
end
|
data/test/test_appreqs.rb
CHANGED
@@ -1,10 +1,9 @@
|
|
1
1
|
require File.expand_path("#{File.dirname(__FILE__)}/test_helper")
|
2
2
|
|
3
3
|
class TestApps < MiniTest::Unit::TestCase
|
4
|
-
|
5
4
|
def test_post_appreqs
|
6
5
|
|
7
|
-
|
6
|
+
tmp_hash = {
|
8
7
|
"req_type" => "NStart",
|
9
8
|
"node_name" => "black1.megam.co",
|
10
9
|
"appdefns_id" => "12455",
|
@@ -13,16 +12,14 @@ class TestApps < MiniTest::Unit::TestCase
|
|
13
12
|
"lc_when" => "When"
|
14
13
|
}
|
15
14
|
|
16
|
-
puts "======================> POST APPREQS TEMP HASH <============================================= "
|
17
|
-
puts tmp_hash
|
18
15
|
response = megams.post_appreq(tmp_hash)
|
19
16
|
assert_equal(201, response.status)
|
20
17
|
end
|
21
|
-
|
18
|
+
|
22
19
|
def test_get_appreqs
|
23
20
|
response = megams.get_appreq("oceanographer1.megam.co")
|
24
21
|
assert_equal(200, response.status)
|
25
22
|
end
|
26
|
-
|
23
|
+
|
27
24
|
|
28
25
|
end
|
data/test/test_boltdefns.rb
CHANGED
@@ -9,8 +9,6 @@ class TestApps < MiniTest::Unit::TestCase
|
|
9
9
|
"boltdefns" => {"username" => "new", "apikey" => "new", "store_name" => "", "url" => "", "prime" => "", "timetokill" => "", "metered" => "", "logging" => "", "runtime_exec" => ""}
|
10
10
|
}
|
11
11
|
|
12
|
-
puts "======================> POST APPDEFNS TEMP HASH <============================================= "
|
13
|
-
puts tmp_hash
|
14
12
|
response = megams.post_boltdefn(tmp_hash)
|
15
13
|
assert_equal(201, response.status)
|
16
14
|
end
|
data/test/test_boltreqs.rb
CHANGED
@@ -13,8 +13,6 @@ class TestApps < MiniTest::Unit::TestCase
|
|
13
13
|
"lc_when" => "When"
|
14
14
|
}
|
15
15
|
|
16
|
-
puts "======================> POST BOLTREQS TEMP HASH <============================================= "
|
17
|
-
puts tmp_hash
|
18
16
|
response = megams.post_boltreq(tmp_hash)
|
19
17
|
assert_equal(201, response.status)
|
20
18
|
end
|
@@ -1,20 +1,23 @@
|
|
1
1
|
require File.expand_path("#{File.dirname(__FILE__)}/test_helper")
|
2
2
|
|
3
3
|
class TestApps < MiniTest::Unit::TestCase
|
4
|
-
|
4
|
+
#=begin
|
5
5
|
def test_post_cloudtoolsetting1
|
6
6
|
tmp_hash = { :cloud_type => "chef",
|
7
|
-
:
|
8
|
-
:
|
7
|
+
:repo_name => "test_chef",
|
8
|
+
:repo => "https://github.com",
|
9
|
+
:vault_location => "https://s3-ap-southeast-1.amazonaws.com/cloudrecipes/sandy@megamsandbox.com/chef",
|
10
|
+
:conf_location => "sandy@megamsandbox.com/chef/chef-repo/.chef/knife.rb"
|
9
11
|
}
|
10
12
|
|
11
13
|
response = megams.post_cloudtoolsetting(tmp_hash)
|
12
14
|
assert_equal(201, response.status)
|
13
15
|
end
|
14
|
-
|
16
|
+
#=end
|
15
17
|
=begin
|
16
18
|
def test_post_cloudtoolsetting2
|
17
|
-
tmp_hash = { :cloud_type => "chef",
|
19
|
+
tmp_hash = { :cloud_type => "chef",
|
20
|
+
:repo_name => "test_chef",
|
18
21
|
:repo => "https://github.com",
|
19
22
|
:vault_location => "https://s3-ap-southeast-1.amazonaws.com/cloudkeys/sandy@megamsandbox.com/default"
|
20
23
|
}
|
@@ -22,12 +25,12 @@ class TestApps < MiniTest::Unit::TestCase
|
|
22
25
|
assert_equal(201, response.status)
|
23
26
|
end
|
24
27
|
=end
|
25
|
-
|
28
|
+
=begin
|
26
29
|
def test_get_cloudtoolsettings
|
27
30
|
response = megams.get_cloudtoolsettings
|
28
31
|
assert_equal(200, response.status)
|
29
32
|
end
|
30
|
-
|
33
|
+
=end
|
31
34
|
=begin
|
32
35
|
def test_get_cloudtoolsetting2
|
33
36
|
response = megams.get_cloudtoolsetting("rkspce_sundown_play")
|
data/test/test_nodes.rb
CHANGED
@@ -1,9 +1,8 @@
|
|
1
1
|
require File.expand_path("#{File.dirname(__FILE__)}/test_helper")
|
2
2
|
|
3
3
|
class TestApps < MiniTest::Unit::TestCase
|
4
|
-
|
4
|
+
|
5
5
|
def test_post_node1
|
6
|
-
|
7
6
|
@com = {
|
8
7
|
"systemprovider" => {
|
9
8
|
"provider" => {
|
@@ -15,7 +14,8 @@ class TestApps < MiniTest::Unit::TestCase
|
|
15
14
|
"cc" => {
|
16
15
|
"groups" => "megam",
|
17
16
|
"image" => "ami-d783cd85",
|
18
|
-
"flavor" => "t1.micro"
|
17
|
+
"flavor" => "t1.micro",
|
18
|
+
"tenant_id" => ""
|
19
19
|
},
|
20
20
|
"access" => {
|
21
21
|
"ssh_key" => "megam_ec2",
|
@@ -23,13 +23,14 @@ class TestApps < MiniTest::Unit::TestCase
|
|
23
23
|
"ssh_user" => "ubuntu",
|
24
24
|
"vault_location" => "https://s3-ap-southeast-1.amazonaws.com/cloudkeys/sandy@megamsandbox.com/default",
|
25
25
|
"sshpub_location" => "https://s3-ap-southeast-1.amazonaws.com/cloudkeys/sandy@megamsandbox.com/default",
|
26
|
-
"zone" => ""
|
26
|
+
"zone" => "",
|
27
|
+
"region" => "region"
|
27
28
|
}
|
28
29
|
},
|
29
30
|
"cloudtool" => {
|
30
31
|
"chef" => {
|
31
32
|
"command" => "knife",
|
32
|
-
"plugin" => "ec2 server create", #ec2 server delete or create
|
33
|
+
"plugin" => "ec2 server create -c sandy@megamsandbox.com/default", #ec2 server delete or create
|
33
34
|
"run_list" => "role[opendj]",
|
34
35
|
"name" => "-N TestOverAll"
|
35
36
|
}
|
@@ -50,55 +51,41 @@ class TestApps < MiniTest::Unit::TestCase
|
|
50
51
|
"boltreq" => {}
|
51
52
|
}
|
52
53
|
|
53
|
-
puts "======================> TEMP HASH <============================================= "
|
54
|
-
puts tmp_hash.class
|
55
|
-
puts tmp_hash
|
56
54
|
response = megams.post_node(tmp_hash)
|
57
55
|
assert_equal(201, response.status)
|
58
56
|
end
|
59
57
|
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
"
|
65
|
-
"
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
assert_equal(201, response.status)
|
71
|
-
end
|
72
|
-
#=end
|
73
|
-
def test_get_nodes
|
74
|
-
response = megams.get_nodes
|
75
|
-
|
76
|
-
puts "=================> GET NODES Response ========>"
|
77
|
-
puts response.inspect
|
58
|
+
def test_post_node2
|
59
|
+
tmp_hash = {
|
60
|
+
"node_name" => "sundown.megam.co",
|
61
|
+
"command" => "commands2",
|
62
|
+
"predefs" => {"name" => "rails", "scm" => "https://github.com/awesome.git",
|
63
|
+
"db" => "postgres@postgresql2.megam.com/morning.megam.co", "war" => "http://s3pub.com/0.1/orion.war", "queue" => "rabbit@queue1"}
|
64
|
+
}
|
65
|
+
response = megams.post_node(tmp_hash)
|
66
|
+
assert_equal(201, response.status)
|
67
|
+
end
|
78
68
|
|
79
|
-
|
80
|
-
|
69
|
+
def test_get_nodes
|
70
|
+
response = megams.get_nodes
|
71
|
+
assert_equal(200, response.status)
|
72
|
+
end
|
81
73
|
|
82
74
|
def test_get_node0
|
83
75
|
response = megams.get_node("black1.megam.co")
|
84
|
-
puts "=================> Response ========>"
|
85
|
-
puts response.inspect
|
86
76
|
assert_equal(200, response.status)
|
87
77
|
end
|
88
78
|
|
89
|
-
|
90
|
-
=
|
91
|
-
|
92
|
-
|
93
|
-
assert_equal(200, response.status)
|
94
|
-
end
|
79
|
+
def test_get_node1
|
80
|
+
response = megams.get_node("night.megam.co")
|
81
|
+
assert_equal(200, response.status)
|
82
|
+
end
|
95
83
|
|
96
|
-
def test_get_node_not_found
|
97
|
-
assert_raises(Megam::API::Errors::NotFound) do
|
98
|
-
megams.get_node("stupid.megam.co")
|
99
|
-
end
|
100
|
-
end
|
101
|
-
=end
|
84
|
+
def test_get_node_not_found
|
85
|
+
assert_raises(Megam::API::Errors::NotFound) do
|
86
|
+
megams.get_node("stupid.megam.co")
|
87
|
+
end
|
88
|
+
end
|
102
89
|
|
103
90
|
def test_delete_node1
|
104
91
|
|
@@ -113,7 +100,8 @@ end
|
|
113
100
|
"cc" => {
|
114
101
|
"groups" => "",
|
115
102
|
"image" => "",
|
116
|
-
"flavor" => ""
|
103
|
+
"flavor" => "",
|
104
|
+
"tenant_id" => ""
|
117
105
|
},
|
118
106
|
"access" => {
|
119
107
|
"ssh_key" => "megam_ec2",
|
@@ -121,7 +109,8 @@ end
|
|
121
109
|
"ssh_user" => "",
|
122
110
|
"vault_location" => "https://s3-ap-southeast-1.amazonaws.com/cloudkeys/sandy@megamsandbox.com/default",
|
123
111
|
"sshpub_location" => "",
|
124
|
-
"zone" => ""
|
112
|
+
"zone" => "",
|
113
|
+
"region" => "region"
|
125
114
|
}
|
126
115
|
},
|
127
116
|
"cloudtool" => {
|
@@ -140,12 +129,7 @@ end
|
|
140
129
|
"command" => @com
|
141
130
|
}
|
142
131
|
|
143
|
-
puts "======================> TEMP HASH <============================================= "
|
144
|
-
puts tmp_hash.class
|
145
|
-
puts tmp_hash
|
146
132
|
response = megams.post_request(tmp_hash)
|
147
133
|
assert_equal(201, response.status)
|
148
134
|
end
|
149
|
-
|
150
|
-
end
|
151
|
-
|
135
|
+
end
|
data/test/test_predefclouds.rb
CHANGED
@@ -7,7 +7,8 @@ class TestApps < MiniTest::Unit::TestCase
|
|
7
7
|
:type_name => "aws-ec2",
|
8
8
|
:groups => "megam",
|
9
9
|
:image => "ami-d783cd85",
|
10
|
-
:flavor => "m1.medium"
|
10
|
+
:flavor => "m1.medium",
|
11
|
+
:tenant_id => ""
|
11
12
|
},
|
12
13
|
:access => {
|
13
14
|
:ssh_key => "megam_ec2",
|
@@ -15,7 +16,8 @@ class TestApps < MiniTest::Unit::TestCase
|
|
15
16
|
:ssh_user => "ubuntu",
|
16
17
|
:vault_location => "https://s3-ap-southeast-1.amazonaws.com/cloudkeys/sandy@megamsandbox.com/default",
|
17
18
|
:sshpub_location => "https://s3-ap-southeast-1.amazonaws.com/cloudkeys/sandy@megamsandbox.com/default",
|
18
|
-
:zone => ""
|
19
|
+
:zone => "",
|
20
|
+
:region => "southeast"
|
19
21
|
},
|
20
22
|
#:ideal => "ror,redis,riak",
|
21
23
|
#:performance => "10rpm"
|
@@ -30,7 +32,8 @@ class TestApps < MiniTest::Unit::TestCase
|
|
30
32
|
:type_name => "rackspace",
|
31
33
|
:groups => "staging_france_boeing",
|
32
34
|
:image => "RCP000XERAOl",
|
33
|
-
:flavor => "m1-miniscule"
|
35
|
+
:flavor => "m1-miniscule",
|
36
|
+
:tenant_id => ""
|
34
37
|
},
|
35
38
|
:access => {
|
36
39
|
:ssh_key => "boo_flightssh",
|
@@ -38,7 +41,8 @@ class TestApps < MiniTest::Unit::TestCase
|
|
38
41
|
:ssh_user => "ubuntu",
|
39
42
|
:vault_location => "https://s3-ap-southeast-1.amazonaws.com/cloudkeys/sandy@megamsandbox.com/default",
|
40
43
|
:sshpub_location => "https://s3-ap-southeast-1.amazonaws.com/cloudkeys/sandy@megamsandbox.com/default",
|
41
|
-
:zone => ""
|
44
|
+
:zone => "",
|
45
|
+
:region => ""
|
42
46
|
},
|
43
47
|
#:ideal => "play,redis,riak",
|
44
48
|
#:performance => "10rpm"
|
data/test/test_requests.rb
CHANGED
@@ -1,8 +1,7 @@
|
|
1
1
|
require File.expand_path("#{File.dirname(__FILE__)}/test_helper")
|
2
2
|
|
3
3
|
class TestApps < MiniTest::Unit::TestCase
|
4
|
-
|
5
|
-
#=begin
|
4
|
+
#=begin
|
6
5
|
def test_get_requests
|
7
6
|
response = megams.get_requests
|
8
7
|
assert_equal(200, response.status)
|
@@ -13,15 +12,15 @@ class TestApps < MiniTest::Unit::TestCase
|
|
13
12
|
response = megams.get_request("faulty")
|
14
13
|
end
|
15
14
|
end
|
16
|
-
|
15
|
+
|
16
|
+
#=end
|
17
17
|
def test_get_request_good
|
18
18
|
response = megams.get_request("black1.megam.co")
|
19
19
|
assert_equal(200, response.status)
|
20
20
|
end
|
21
21
|
|
22
|
-
|
23
|
-
|
24
|
-
@com = {
|
22
|
+
#=begin
|
23
|
+
@com = {
|
25
24
|
"systemprovider" => {
|
26
25
|
"provider" => {
|
27
26
|
"prov" => "chef"
|
@@ -32,7 +31,8 @@ class TestApps < MiniTest::Unit::TestCase
|
|
32
31
|
"cc" => {
|
33
32
|
"groups" => "",
|
34
33
|
"image" => "",
|
35
|
-
"flavor" => ""
|
34
|
+
"flavor" => "",
|
35
|
+
"tenant_id" => ""
|
36
36
|
},
|
37
37
|
"access" => {
|
38
38
|
"ssh_key" => "megam_ec2",
|
@@ -40,7 +40,8 @@ class TestApps < MiniTest::Unit::TestCase
|
|
40
40
|
"ssh_user" => "",
|
41
41
|
"vault_location" => "https://s3-ap-southeast-1.amazonaws.com/cloudkeys/sandy@megamsandbox.com/default",
|
42
42
|
"sshpub_location" => "",
|
43
|
-
"zone" => ""
|
43
|
+
"zone" => "",
|
44
|
+
"region" => ""
|
44
45
|
}
|
45
46
|
},
|
46
47
|
"cloudtool" => {
|
@@ -53,23 +54,21 @@ class TestApps < MiniTest::Unit::TestCase
|
|
53
54
|
}
|
54
55
|
}
|
55
56
|
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
57
|
+
@@tmp_hash = {
|
58
|
+
"node_name" => "black1.megam.co",
|
59
|
+
"node_type" => "APP", #APP or Bolt
|
60
|
+
"req_type" => "delete",
|
61
|
+
"noofinstances" => 0,
|
62
|
+
"command" => @com,
|
63
|
+
"predefs" => {"name" => "", "scm" => "", "db" => "", "war" => "", "queue" => ""},
|
64
|
+
"appdefns" => {"timetokill" => "", "metered" => "", "logging" => "", "runtime_exec" => ""},
|
65
|
+
"boltdefns" => {"username" => "", "apikey" => "", "store_name" => "", "url" => "", "prime" => "", "timetokill" => "", "metered" => "", "logging" => "", "runtime_exec" => ""},
|
66
|
+
"appreq" => {},
|
67
|
+
"boltreq" => {}
|
68
|
+
}
|
68
69
|
|
69
70
|
def test_request_node_delete
|
70
71
|
|
71
|
-
puts "======================> DELETE NODE Request TEMP HASH <============================================= "
|
72
|
-
puts @@tmp_hash
|
73
72
|
response = megams.post_request(@@tmp_hash)
|
74
73
|
assert_equal(201, response.status)
|
75
74
|
end
|
@@ -77,12 +76,9 @@ puts @@tmp_hash
|
|
77
76
|
def test_request_node_stop
|
78
77
|
@@tmp_hash["req_type"] = "stop"
|
79
78
|
@@tmp_hash["command"]["cloudtool"]["chef"]["plugin"] = "ec2 server stop"
|
80
|
-
puts "======================> STOP NODE Request TEMP HASH <============================================= "
|
81
|
-
puts @@tmp_hash
|
82
|
-
|
83
79
|
response = megams.post_request(@@tmp_hash)
|
84
80
|
assert_equal(201, response.status)
|
85
81
|
end
|
86
82
|
#=end
|
87
|
-
|
83
|
+
|
88
84
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: megam_api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.7.
|
4
|
+
version: 0.7.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kishorekumar Neelamegam, Thomas Alrin, Subash Sethurajan, Rajthilak
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-12-
|
11
|
+
date: 2013-12-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: excon
|