app42 0.5.9 → 0.5.10
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 +4 -4
- data/RELEASE.md +8 -1
- data/lib/app42/base/help.rb +73 -1
- data/lib/app42/base/shell.rb +3 -0
- data/lib/app42/command/base.rb +57 -1
- data/lib/app42/command/client.rb +12 -3
- data/lib/app42/command/service.rb +19 -0
- data/lib/app42/command/setup.rb +9 -0
- data/lib/app42/version.rb +1 -1
- 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: 2ef81a41d58513f52552f8bb1b014d174984ab74
|
4
|
+
data.tar.gz: 1816b48b8e55b9eca9ef16f338c2ebdec661c3f4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 23f3a6c61c981d7fb4a5f54628e1a6143d0f88d769920c82d26f655d2386b80828eda8f43b2c3f95b3155b6263b63d4079f715de129b2aa11e5ddb0247fdecd8
|
7
|
+
data.tar.gz: d1e95bae60ebc1caf63aed7fba33c1bcf0fe2747419ad859584a2bdc308ae69e44a88b24e32af2b821e1ce40669d17220f433659bcdbdfc8c4401787fc7c0070
|
data/RELEASE.md
CHANGED
@@ -8,4 +8,11 @@ Client library and command-line tool to deploy and manage apps on App42PaaS.
|
|
8
8
|
|
9
9
|
- Application Vertical scale and descale
|
10
10
|
- BPaaS setup start and stop
|
11
|
-
- Upload backup for service
|
11
|
+
- Upload backup for service
|
12
|
+
|
13
|
+
### 0.5.10 (13-12-2013)
|
14
|
+
|
15
|
+
- Service Vertical scale and descale
|
16
|
+
- BPaaS setup upgrade
|
17
|
+
|
18
|
+
|
data/lib/app42/base/help.rb
CHANGED
@@ -52,6 +52,8 @@ module App42
|
|
52
52
|
startService # Start the service
|
53
53
|
restartService # Restart the service
|
54
54
|
stopService # Stop the service
|
55
|
+
scaleService # Vertically scale service by number of Kontena(s)
|
56
|
+
descaleService # Vertically descale services by number of Kontena(s)
|
55
57
|
uploadBackup # Upload file data into a service
|
56
58
|
services # List all the provisioned services with their meta details
|
57
59
|
serviceInfo # Show meta information of the provisioned service
|
@@ -72,6 +74,7 @@ module App42
|
|
72
74
|
startBPaaS # Start the BPaaS
|
73
75
|
stopBPaaS # Stop the BPaaS
|
74
76
|
setupInfo # Show setup information
|
77
|
+
upgradeBPaas # Upgrade BPaaS by choosing required configuration
|
75
78
|
setups # List all the setups
|
76
79
|
|
77
80
|
Help
|
@@ -413,7 +416,7 @@ Example:
|
|
413
416
|
2: Vertical
|
414
417
|
Choose Scale Type [Horizontal]: 2
|
415
418
|
|
416
|
-
Vertical
|
419
|
+
Vertical scale by kontena power(s) [1]:
|
417
420
|
Scaling Application demo by kontena(s) 1... OK
|
418
421
|
|
419
422
|
Operation is in progress, Please wait...|
|
@@ -620,6 +623,50 @@ Example:
|
|
620
623
|
|
621
624
|
end
|
622
625
|
|
626
|
+
def scaleservice
|
627
|
+
print <<-DESC
|
628
|
+
Usage:
|
629
|
+
app42 scaleService
|
630
|
+
Vertically scale service by number of kontena(s)
|
631
|
+
|
632
|
+
Options:
|
633
|
+
[--service SERVICE] # Name of service, you want to scale
|
634
|
+
|
635
|
+
Example:
|
636
|
+
$app42 scaleService
|
637
|
+
Enter Service Name: mysqldb
|
638
|
+
|
639
|
+
Vertical scale by kontena power(s) [1]: 1
|
640
|
+
Scaling Service 'mysqldb' by kontena 1... OK
|
641
|
+
|
642
|
+
Operation is in progress, Please wait...|
|
643
|
+
Service scale completed successfully.
|
644
|
+
DESC
|
645
|
+
|
646
|
+
end
|
647
|
+
|
648
|
+
def descaleservice
|
649
|
+
print <<-DESC
|
650
|
+
Usage:
|
651
|
+
app42 descaleService
|
652
|
+
Vertically descale service by number of kontena(s)
|
653
|
+
|
654
|
+
Options:
|
655
|
+
[--service SERVICE] # Name of service, you want to scale
|
656
|
+
|
657
|
+
Example:
|
658
|
+
$app42 descaleService
|
659
|
+
Enter Service Name: mysqldb
|
660
|
+
|
661
|
+
Vertical descale by kontena power(s) [1]: 1
|
662
|
+
Descaling Service 'mysqldb' by kontena 1... OK
|
663
|
+
|
664
|
+
Operation is in progress, Please wait...|
|
665
|
+
Service descale completed successfully.
|
666
|
+
DESC
|
667
|
+
|
668
|
+
end
|
669
|
+
|
623
670
|
def restartservice
|
624
671
|
print <<-DESC
|
625
672
|
Usage:
|
@@ -1023,6 +1070,31 @@ Example:
|
|
1023
1070
|
DESC
|
1024
1071
|
end
|
1025
1072
|
|
1073
|
+
def upgradebpaas
|
1074
|
+
print <<-DESC
|
1075
|
+
Usage:
|
1076
|
+
app42 upgradeBPaaS
|
1077
|
+
|
1078
|
+
Upgrade BPaaS by choosing required configuration
|
1079
|
+
|
1080
|
+
Example:
|
1081
|
+
$app42 upgradeBPaaS
|
1082
|
+
Enter Setup Name: demo
|
1083
|
+
|
1084
|
+
1: Light
|
1085
|
+
2: Medium
|
1086
|
+
3: Heavy
|
1087
|
+
Select Flavour [Light]: 2
|
1088
|
+
|
1089
|
+
Upgrading Setup... OK
|
1090
|
+
|
1091
|
+
Operation is in progress, Please wait...-
|
1092
|
+
|
1093
|
+
BPaaS setup demo upgraded successfully.
|
1094
|
+
|
1095
|
+
DESC
|
1096
|
+
end
|
1097
|
+
|
1026
1098
|
def version
|
1027
1099
|
print <<-DESC
|
1028
1100
|
Usage:
|
data/lib/app42/base/shell.rb
CHANGED
@@ -34,6 +34,8 @@ module App42
|
|
34
34
|
'startservice',
|
35
35
|
'restartservice',
|
36
36
|
'stopservice',
|
37
|
+
'scaleservice',
|
38
|
+
'descaleservice',
|
37
39
|
'uploadbackup',
|
38
40
|
'resetservicepassword',
|
39
41
|
'bindip',
|
@@ -41,6 +43,7 @@ module App42
|
|
41
43
|
'bindinfo',
|
42
44
|
'setupbpaas',
|
43
45
|
'startbpaas',
|
46
|
+
'upgradebpaas',
|
44
47
|
'stopbpaas',
|
45
48
|
'deletesetup',
|
46
49
|
'setupinfo',
|
data/lib/app42/command/base.rb
CHANGED
@@ -329,6 +329,38 @@ module App42
|
|
329
329
|
puts Paint[" Command cancelled.", :red]
|
330
330
|
exit!
|
331
331
|
end
|
332
|
+
end
|
333
|
+
|
334
|
+
# upgrade setup cloud API, as a
|
335
|
+
#
|
336
|
+
# ==== Parameters
|
337
|
+
# setup_name = setup_name provided by user
|
338
|
+
# flavour = flavour provided by user
|
339
|
+
#
|
340
|
+
# ==== return
|
341
|
+
# true:: if cloud setup upgraded
|
342
|
+
# OR
|
343
|
+
# ERROR message in case failed
|
344
|
+
def upgrade_clouldapi setup_name, flavour
|
345
|
+
begin
|
346
|
+
response = with_progress(Paint["Upgrading Setup", :yellow]) do |s|
|
347
|
+
query_params = params
|
348
|
+
body = {'app42' => {"request"=> {
|
349
|
+
"setupName" => setup_name,
|
350
|
+
"flavour" => flavour
|
351
|
+
}}}.to_json
|
352
|
+
|
353
|
+
query_params.store('body', body)
|
354
|
+
build_put_request body, query_params, 'setup/upgrade', nil
|
355
|
+
end
|
356
|
+
transaction_success = check_transaction_status response["transactionId"], previous_completed = 0, 'deleted' if response["success"] == true && response["transactionId"]
|
357
|
+
response['success'] ? (return true) : (message "#{response['description']}", true, 'red')
|
358
|
+
rescue Interrupt
|
359
|
+
puts Paint[" Command cancelled.", :red]
|
360
|
+
exit!
|
361
|
+
rescue Exception => e
|
362
|
+
puts e
|
363
|
+
end
|
332
364
|
end
|
333
365
|
|
334
366
|
|
@@ -502,7 +534,7 @@ module App42
|
|
502
534
|
query_params = params
|
503
535
|
query_params.store('body', body)
|
504
536
|
|
505
|
-
response = with_progress( Paint[ what.to_s == 'vscale' ? "Scaling Application #{app_name} by kontena(s) #{kontena}" : "Descaling Application #{app_name} by kontena(s) #{kontena}", :yellow]) do |s|
|
537
|
+
response = with_progress( Paint[ what.to_s == 'vscale' ? "Scaling Application '#{app_name}' by kontena(s) #{kontena}" : "Descaling Application '#{app_name}' by kontena(s) #{kontena}", :yellow]) do |s|
|
506
538
|
build_post_request body, query_params, "app", what
|
507
539
|
end
|
508
540
|
|
@@ -518,6 +550,30 @@ module App42
|
|
518
550
|
end
|
519
551
|
end
|
520
552
|
|
553
|
+
# vertical scale or descale service by no of kontena,
|
554
|
+
# expect +what+ as operation and kontena as no of kontena
|
555
|
+
def vscale_or_vdescale_service what, kontena, service_name
|
556
|
+
begin
|
557
|
+
body = {'app42' => {"request"=> {
|
558
|
+
'serviceName' => service_name,
|
559
|
+
"kontenaPower" => kontena.to_s
|
560
|
+
}}}.to_json
|
561
|
+
query_params = params
|
562
|
+
query_params.store('body', body)
|
563
|
+
response = with_progress( Paint[ what.to_s == 'vscale' ? "Scaling Service '#{service_name}' by kontena #{kontena}" : "Descaling Service '#{service_name}' by kontena #{kontena}", :yellow]) do |s|
|
564
|
+
build_post_request body, query_params, "service", what
|
565
|
+
end
|
566
|
+
check_transaction_status response["transactionId"], previous_completed = 0, "#{what}d" if response["success"] == true && response["transactionId"]
|
567
|
+
response['success'] ? (return true) : (message "#{response['description']}", true, 'red')
|
568
|
+
rescue Interrupt
|
569
|
+
puts Paint[" Command cancelled.", :red]
|
570
|
+
exit!
|
571
|
+
rescue Exception => e
|
572
|
+
puts e
|
573
|
+
exit!
|
574
|
+
end
|
575
|
+
end
|
576
|
+
|
521
577
|
# common methods for app42paas config request like runtimes,frameworks etc
|
522
578
|
def interactive_get resource, get_obj
|
523
579
|
begin
|
data/lib/app42/command/client.rb
CHANGED
@@ -59,8 +59,8 @@ module App42
|
|
59
59
|
opts_parser = OptionParser.new do |opts|
|
60
60
|
opts.banner = "\nAvailable options:\n\n"
|
61
61
|
|
62
|
-
opts.on('--apiKey API_KEY')
|
63
|
-
opts.on('--secretKey SECRET_KEY')
|
62
|
+
opts.on('--apiKey API_KEY') { |api| @options[:api] = api }
|
63
|
+
opts.on('--secretKey SECRET_KEY') { |secret| @options[:secret] = secret }
|
64
64
|
opts.on('-a API_KEY') { |api| @options[:api] = api }
|
65
65
|
opts.on('-s SECRET_KEY') { |secret| @options[:secret] = secret }
|
66
66
|
|
@@ -216,6 +216,12 @@ module App42
|
|
216
216
|
when 'stopservice'
|
217
217
|
set_cmd(:service, :stop)
|
218
218
|
|
219
|
+
when 'scaleservice'
|
220
|
+
set_cmd(:service, :vscale)
|
221
|
+
|
222
|
+
when 'descaleservice'
|
223
|
+
set_cmd(:service, :vdescale)
|
224
|
+
|
219
225
|
when 'uploadbackup'
|
220
226
|
set_cmd(:service, :uploadbackup)
|
221
227
|
|
@@ -238,7 +244,10 @@ module App42
|
|
238
244
|
set_cmd(:setup, :start)
|
239
245
|
|
240
246
|
when 'stopbpaas'
|
241
|
-
set_cmd(:setup, :stop)
|
247
|
+
set_cmd(:setup, :stop)
|
248
|
+
|
249
|
+
when 'upgradebpaas'
|
250
|
+
set_cmd(:setup, :upgrade_cloud_api)
|
242
251
|
|
243
252
|
when 'deletesetup'
|
244
253
|
set_cmd(:setup, :delete_cloud_api)
|
@@ -32,6 +32,7 @@ module App42::Command
|
|
32
32
|
# ask service name to user
|
33
33
|
def ask_service_name
|
34
34
|
service_name = ask Paint["Enter Service Name", :cyan]
|
35
|
+
print_new_line
|
35
36
|
valid_service_name = validate_app_and_service_name "Service name", service_name.strip
|
36
37
|
valid_service_name ? (return valid_service_name) : ask_service_name
|
37
38
|
end
|
@@ -124,6 +125,24 @@ module App42::Command
|
|
124
125
|
exit! if response
|
125
126
|
end
|
126
127
|
|
128
|
+
# read +service name+ and number of +instance+ from user
|
129
|
+
# then vertically scale service by no of instance
|
130
|
+
def vscale
|
131
|
+
@options[:service] = ask_service_name if @options[:service].nil?
|
132
|
+
@options[:kontena] = get_kontena "Vertical scale" if is_service_exist? @options[:service] and @options[:kontena].nil?
|
133
|
+
vscale_or_vdescal_res = vscale_or_vdescale_service __method__, @options[:kontena], @options[:service]
|
134
|
+
exit! if vscale_or_vdescal_res
|
135
|
+
end
|
136
|
+
|
137
|
+
# read +app name+ and number of +instance+ from user
|
138
|
+
# then vertically descale app by no of instance
|
139
|
+
def vdescale
|
140
|
+
@options[:service] = ask_service_name if @options[:service].nil?
|
141
|
+
@options[:kontena] = get_kontena "Vertical descale" if is_service_exist? @options[:service] and @options[:kontena].nil?
|
142
|
+
vscale_or_vdescal_res = vscale_or_vdescale_service __method__, @options[:kontena], @options[:service]
|
143
|
+
exit! if vscale_or_vdescal_res
|
144
|
+
end
|
145
|
+
|
127
146
|
# read +app name+ and number of +instance+ from user
|
128
147
|
# then vertically descale app by no of instance
|
129
148
|
def uploadbackup
|
data/lib/app42/command/setup.rb
CHANGED
@@ -38,6 +38,15 @@ module App42
|
|
38
38
|
exit! if response
|
39
39
|
end
|
40
40
|
|
41
|
+
# collect BPaaS setup name from user and proceed BPaaS upgrade request
|
42
|
+
def upgrade_cloud_api
|
43
|
+
@options[:setup] = get_setup_name if @options[:setup].nil?
|
44
|
+
print_new_line
|
45
|
+
flavour = get_flavour
|
46
|
+
response = upgrade_clouldapi @options[:setup], flavour if is_setup_name_exist? @options[:setup]
|
47
|
+
exit! if response
|
48
|
+
end
|
49
|
+
|
41
50
|
# return setup type
|
42
51
|
def get_setup_type
|
43
52
|
setup_type_hash = {}
|
data/lib/app42/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: app42
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- ShepHertz
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-12-
|
11
|
+
date: 2013-12-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|