cwp 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.
- 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
|