cwp 0.0.6 → 0.0.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/Gemfile +1 -0
- data/bin/cwp +1 -1
- data/cwp.gemspec +1 -0
- data/lib/commands/platform.rb +106 -34
- data/lib/cwp.rb +12 -21
- data/lib/cwp/version.rb +1 -1
- metadata +16 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
YWI0MTM5ZTEzOTBjOTQ5NTZhOTBjYjNjMTM5Y2VjMGU3MjhhNWY1Yg==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
ZjBmMjJjMDQ2NjdmZDczYzNjNDY1NmExZThkMTUzNzZiYmVlMDMxOA==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
MzY2NWI0MWNjZTM2MjEwMzhiZjVhMGIwOThiNzJiMWI5M2FmNGEzZmRhMWU3
|
10
|
+
ZDFjNWNhMjRjMWEwYTdmNmQ4YTM4YzFjYmIwMzA1ODg2YjJmZDAwMDYxNGZl
|
11
|
+
M2IwYjlmMmUxOWI4M2RhMWY3YTc1MDRjYjE2MjU5NDBlYzYxNTI=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
NGJjMWUzMDk5NzQwMjA0ZmRhZjg3MzRmOGQ2NWRlNWYxMzEwODNlMDZjYjdj
|
14
|
+
YTY4MmI2MGNmZTMzMDY4YjMyMzIzY2Q5YTI0MTIyZTkxY2ViOWQyMjc3Y2Rh
|
15
|
+
MTkwNWEwNGNhZTQ5YjNiMzFhYzY5YTFiOTg2OGFlZWNkZGIxNDk=
|
data/Gemfile
CHANGED
data/bin/cwp
CHANGED
@@ -9,7 +9,7 @@ if !ARGV[0].nil?
|
|
9
9
|
if RUBY_PLATFORM =~ /linux/
|
10
10
|
[ "/etc/cwp.conf", "#{File.expand_path('~')}/.cwp/cwp.conf", "#{File.expand_path('.')}/cwp.conf"]
|
11
11
|
else
|
12
|
-
[]
|
12
|
+
[ "#{File.expand_path('~')}/.cwp/cwp.conf", "#{File.expand_path('.')}/cwp.conf"]
|
13
13
|
end
|
14
14
|
# populate all the command line parameters in arr
|
15
15
|
arr = []
|
data/cwp.gemspec
CHANGED
@@ -16,6 +16,7 @@ Gem::Specification.new do |s|
|
|
16
16
|
s.executables = ["cwp"]
|
17
17
|
s.test_files = s.files.grep(%r{^(test|spec|features)/})
|
18
18
|
s.require_paths = ["lib"]
|
19
|
+
s.add_dependency "json"
|
19
20
|
s.add_dependency "colorize","~> 0.7.3"
|
20
21
|
# s.add_development_dependency "bundler", "~> 1.6"
|
21
22
|
# s.add_development_dependency "rake"
|
data/lib/commands/platform.rb
CHANGED
@@ -66,12 +66,28 @@ module Platform
|
|
66
66
|
exit
|
67
67
|
end
|
68
68
|
begin
|
69
|
+
if response.body["error"]
|
70
|
+
error = JSON.parse(response.body)["error"]
|
71
|
+
errors = JSON.parse(response.body)["error"]["errors"]
|
72
|
+
unless errors.nil?
|
73
|
+
errors.each do |key,value|
|
74
|
+
puts "INFO ".colorize(:yellow)+"#{value.join(',')}".colorize(:red)
|
75
|
+
end
|
76
|
+
end
|
77
|
+
puts "INFO ".colorize(:yellow)+"#{error['message']}".colorize(:red) unless error["message"].nil?
|
78
|
+
else
|
79
|
+
puts "INFO ".colorize(:yellow)+" Data were successfully sent to Cloud Portal. Please check deployment status ".colorize(:white)
|
80
|
+
end
|
69
81
|
# Pretty print response json from API
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
82
|
+
loglevel = hash["parameters"]["loglevel"].downcase if !hash["parameters"]["loglevel"].nil?
|
83
|
+
if (loglevel == "debug")
|
84
|
+
puts "[ RESPONSE CODE ]".colorize(:blue)
|
85
|
+
puts response.code.colorize(:white)
|
86
|
+
puts "[ RESPONSE JSON ]".colorize(:blue)
|
87
|
+
puts JSON.pretty_generate(JSON.parse(response.body)).colorize(:white)
|
88
|
+
end
|
74
89
|
rescue Exception => e
|
90
|
+
puts e.backtrace
|
75
91
|
puts response.body
|
76
92
|
end
|
77
93
|
end
|
@@ -124,7 +140,7 @@ module Platform
|
|
124
140
|
def self.validate_delete_platform(hash)
|
125
141
|
if self.validate_delete_and_status_params(hash)
|
126
142
|
begin
|
127
|
-
url = URI.parse("#{hash['parameters']['url']}/api/platforms/#{hash['parameters']['env']}
|
143
|
+
url = URI.parse("#{hash['parameters']['url']}/api/platforms/#{hash['parameters']['env']}")
|
128
144
|
http = Net::HTTP.new(url.host, url.port)
|
129
145
|
request = Net::HTTP::Delete.new(url.request_uri)
|
130
146
|
request.basic_auth(hash['parameters']['login'],hash['parameters']['password'])
|
@@ -136,21 +152,30 @@ module Platform
|
|
136
152
|
exit
|
137
153
|
end
|
138
154
|
begin
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
155
|
+
if response.body["error"]
|
156
|
+
msg = JSON.parse(response.body)
|
157
|
+
puts "INFO ".colorize(:yellow)+" #{msg['error']['message']}".colorize(:red)
|
158
|
+
else
|
159
|
+
puts "INFO ".colorize(:yellow)+" Successfully deleted platform".colorize(:white)
|
160
|
+
end
|
161
|
+
loglevel = hash["parameters"]["loglevel"].downcase if !hash["parameters"]["loglevel"].nil?
|
162
|
+
if (loglevel == "debug")
|
163
|
+
# Pretty print response json from API
|
164
|
+
puts "[ RESPONSE CODE ]".colorize(:blue)
|
165
|
+
puts response.code.colorize(:white)
|
166
|
+
puts "[ RESPONSE JSON ]".colorize(:blue)
|
167
|
+
puts JSON.pretty_generate(JSON.parse(response.body)).colorize(:white)
|
168
|
+
end
|
169
|
+
rescue Exception => e
|
170
|
+
puts response.body
|
171
|
+
end
|
172
|
+
end
|
173
|
+
end
|
149
174
|
# method to return status log
|
150
175
|
def self.validate_and_check_status(hash)
|
151
176
|
if self.validate_delete_and_status_params(hash)
|
152
177
|
response = self.call_status_api(hash)
|
153
|
-
self.print_status(response)
|
178
|
+
self.print_status(response,hash["parameters"]["loglevel"])
|
154
179
|
end
|
155
180
|
end
|
156
181
|
# wait status method
|
@@ -176,35 +201,35 @@ end
|
|
176
201
|
rescue Exception => e
|
177
202
|
( 2*60 )
|
178
203
|
end
|
179
|
-
|
180
|
-
(custom_timeout
|
181
|
-
|
204
|
+
|
205
|
+
looping_time = Time.now + ( custom_timeout * 60 )
|
206
|
+
loop do
|
207
|
+
if ( Time.now >= looping_time )
|
182
208
|
puts "[ TIMEOUT ]".colorize(:red)+" error status code 2".colorize(:white)
|
183
|
-
|
209
|
+
break;
|
184
210
|
else
|
185
211
|
response = self.call_status_api(hash)
|
186
212
|
begin
|
187
|
-
body = JSON.parse(response.body)
|
213
|
+
body = JSON.parse(response.body, hash["loglevel"])
|
188
214
|
if (body["deploy_status"]["status"] == "failed")
|
189
215
|
puts "[ PLATFORM DEPLOYMENT FAILED ]".colorize(:red)+" error status code 1".colorize(:white)
|
190
|
-
self.print_status(response)
|
216
|
+
self.print_status(response, hash["parameters"]["loglevel"])
|
191
217
|
break
|
192
218
|
else
|
193
219
|
if (body["deploy_status"]["status"] == hash["parameters"]["status"])
|
194
220
|
puts "[ PLATFORM DEPLOYED SUCCESSFULLY ]".colorize(:green)+" error status code 0".colorize(:white)
|
195
|
-
self.print_status(response)
|
221
|
+
self.print_status(response, hash["parameters"]["loglevel"])
|
196
222
|
break
|
197
223
|
else
|
198
|
-
self.print_status(response)
|
224
|
+
self.print_status(response, hash["parameters"]["loglevel"])
|
199
225
|
end
|
200
226
|
end
|
201
227
|
rescue Exception => e
|
202
|
-
self.print_status(response)
|
228
|
+
self.print_status(response, hash["parameters"]["loglevel"])
|
203
229
|
break
|
204
|
-
end
|
230
|
+
end
|
205
231
|
end
|
206
|
-
|
207
|
-
sleep(60)
|
232
|
+
sleep(10)
|
208
233
|
end
|
209
234
|
end
|
210
235
|
end
|
@@ -246,15 +271,62 @@ end
|
|
246
271
|
end
|
247
272
|
end
|
248
273
|
# print status check common for wait and status
|
249
|
-
def self.print_status(response)
|
274
|
+
def self.print_status(response, loglevel)
|
275
|
+
log = loglevel.nil? ? "info" : loglevel.downcase
|
250
276
|
begin
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
|
277
|
+
json = JSON.parse(response.body)["deploy_status"]
|
278
|
+
if ( log == "info" )
|
279
|
+
if @old_json.nil?
|
280
|
+
if json.nil?
|
281
|
+
json = JSON.parse(response.body)
|
282
|
+
puts "INFO : ".colorize(:yellow)+json["error"]["message"].colorize(:white)
|
283
|
+
else
|
284
|
+
json.each do |key,value|
|
285
|
+
puts "INFO :".colorize(:yellow)+" #{key} : #{json[key]}".colorize(:white)
|
286
|
+
end
|
287
|
+
end
|
288
|
+
else
|
289
|
+
@old_json.each do |key,value|
|
290
|
+
if ( @old_json[key] != json[key] )
|
291
|
+
puts "INFO :".colorize(:yellow)+" #{key} : #{json[key]}".colorize(:white)
|
292
|
+
end
|
293
|
+
end
|
294
|
+
end
|
295
|
+
@old_json = json
|
296
|
+
elsif ( log == "debug" )
|
297
|
+
if @old_json.nil?
|
298
|
+
if json.nil?
|
299
|
+
json = JSON.parse(response.body)
|
300
|
+
puts "INFO : ".colorize(:yellow)+json["error"]["message"].colorize(:white)
|
301
|
+
else
|
302
|
+
json.each do |key,value|
|
303
|
+
puts "INFO :".colorize(:yellow)+" #{key} : #{json[key]}".colorize(:white)
|
304
|
+
end
|
305
|
+
end
|
306
|
+
else
|
307
|
+
@old_json.each do |key,value|
|
308
|
+
if ( @old_json[key] != json[key] )
|
309
|
+
puts "INFO :".colorize(:yellow)+" #{key} : #{json[key]}".colorize(:white)
|
310
|
+
end
|
311
|
+
end
|
312
|
+
end
|
313
|
+
@old_json = json
|
314
|
+
# "----- ABOVE IS THE INFO MODE------"
|
315
|
+
puts "[ DEBUG ]".colorize(:red)+" [ RESPONSE CODE ]".colorize(:blue)
|
316
|
+
puts response.code.colorize(:white)
|
317
|
+
puts "[ DEBUG ]".colorize(:red)+" [ RESPONSE CONTENT TYPE ]".colorize(:blue)
|
318
|
+
puts response.content_type.colorize(:white)
|
319
|
+
puts "[ DEBUG ]".colorize(:red)+" [ RESPONSE JSON ]".colorize(:blue)
|
320
|
+
puts JSON.pretty_generate(JSON.parse(response.body)).colorize(:white)
|
321
|
+
else
|
322
|
+
puts "INVALID LOG LEVEL".colorize(:red)
|
323
|
+
puts "Log Level must be either INFO or DEBUG".colorize(:white)
|
324
|
+
end
|
256
325
|
rescue Exception => e
|
257
326
|
puts response.body
|
258
327
|
end
|
259
328
|
end
|
329
|
+
|
330
|
+
|
331
|
+
|
260
332
|
end
|
data/lib/cwp.rb
CHANGED
@@ -31,29 +31,20 @@ module Cwp
|
|
31
31
|
puts " http://sysgit01.lab.services.ingenico.com/nhd/cloud_web_portal_cli/tree/master".colorize(:white)
|
32
32
|
end
|
33
33
|
def configuration_help_text
|
34
|
+
puts "Please pass configuration parameters through file by one of the below option".colorize(:white)
|
34
35
|
if RUBY_PLATFORM =~ /linux/
|
35
|
-
puts "
|
36
|
-
puts "1 ]".colorize(:white)+" /etc/cwp.conf".colorize(:white)
|
37
|
-
puts "2 ]".colorize(:white)+" /HOME_DIR/.cwp/cwp.conf".colorize(:white)
|
38
|
-
puts "3 ]".colorize(:white)+" CURRENT_DIR/cwp.conf".colorize(:white)
|
39
|
-
puts "4 ]".colorize(:white)+" Pass configuration file path as argument EX:".colorize(:white)+" cwp deploy config_path=PATH_TO_YOUR_CONFIGURATION_FILE".colorize(:yellow)
|
40
|
-
puts "[ NOTE ]".colorize(:blue)+" File format of cwp.conf".colorize(:white)
|
41
|
-
puts "parameters:".colorize(:yellow)
|
42
|
-
puts " login:".colorize(:yellow)+" xxx".colorize(:white)
|
43
|
-
puts " password:".colorize(:yellow)+" yyy".colorize(:white)
|
44
|
-
puts " url:".colorize(:yellow)+" http://example.com".colorize(:white)
|
45
|
-
puts " organization:".colorize(:yellow)+" abc".colorize(:white)
|
46
|
-
puts " compute_resource:".colorize(:yellow)+" peru".colorize(:white)
|
47
|
-
else
|
48
|
-
puts "1 ]".colorize(:white)+" Pass configuration file path as argument EX:".colorize(:white)+" cwp deploy config_path=PATH_TO_YOUR_CONFIGURATION_FILE".colorize(:yellow)
|
49
|
-
puts "[ NOTE ]".colorize(:blue)+" File format of cwp.conf".colorize(:white)
|
50
|
-
puts "parameters:".colorize(:yellow)
|
51
|
-
puts " login:".colorize(:yellow)+" xxx".colorize(:white)
|
52
|
-
puts " password:".colorize(:yellow)+" yyy".colorize(:white)
|
53
|
-
puts " url:".colorize(:yellow)+" http://example.com".colorize(:white)
|
54
|
-
puts " organization:".colorize(:yellow)+" abc".colorize(:white)
|
55
|
-
puts " compute_resource:".colorize(:yellow)+" peru".colorize(:white)
|
36
|
+
puts " - ".colorize(:white)+" /etc/cwp.conf".colorize(:white)
|
56
37
|
end
|
38
|
+
puts " - ".colorize(:white)+" /HOME_DIR/.cwp/cwp.conf".colorize(:white)
|
39
|
+
puts " - ".colorize(:white)+" CURRENT_DIR/cwp.conf".colorize(:white)
|
40
|
+
puts " - ".colorize(:white)+" Pass configuration file path as argument EX:".colorize(:white)+" cwp deploy config_path=PATH_TO_YOUR_CONFIGURATION_FILE".colorize(:yellow)
|
41
|
+
puts "[ NOTE ]".colorize(:blue)+" File format of cwp.conf".colorize(:white)
|
42
|
+
puts "parameters:".colorize(:yellow)
|
43
|
+
puts " login:".colorize(:yellow)+" xxx".colorize(:white)
|
44
|
+
puts " password:".colorize(:yellow)+" yyy".colorize(:white)
|
45
|
+
puts " url:".colorize(:yellow)+" http://example.com".colorize(:white)
|
46
|
+
puts " organization:".colorize(:yellow)+" abc".colorize(:white)
|
47
|
+
puts " compute_resource:".colorize(:yellow)+" peru".colorize(:white)
|
57
48
|
end
|
58
49
|
end
|
59
50
|
end
|
data/lib/cwp/version.rb
CHANGED
metadata
CHANGED
@@ -1,15 +1,29 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cwp
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nagendra HD
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-12-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: json
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ! '>='
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ! '>='
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
13
27
|
- !ruby/object:Gem::Dependency
|
14
28
|
name: colorize
|
15
29
|
requirement: !ruby/object:Gem::Requirement
|