pi 0.1.35 → 0.1.36
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.
- data/README +185 -165
- data/lib/cli/commands/dns.rb +63 -33
- data/lib/cli/runner.rb +2 -1
- data/lib/cli/usage.rb +73 -73
- data/lib/cli/version.rb +1 -1
- data/lib/pi/client.rb +8 -2
- metadata +4 -4
data/README
CHANGED
|
@@ -59,87 +59,87 @@ Try 'pi help [command]' or 'pi help options' for more information.
|
|
|
59
59
|
Currently available pi commands are:
|
|
60
60
|
|
|
61
61
|
User
|
|
62
|
-
login [env] [--user,--password]
|
|
63
|
-
logout
|
|
64
|
-
info
|
|
65
|
-
user
|
|
66
|
-
targets
|
|
67
|
-
password [oldpassword] [--password PASS]
|
|
68
|
-
github [name] [--email,--password]
|
|
69
|
-
runtimes
|
|
70
|
-
frameworks
|
|
71
|
-
version
|
|
72
|
-
help [command]
|
|
73
|
-
help options
|
|
74
|
-
|
|
62
|
+
login [env] [--user,--password] Login
|
|
63
|
+
logout Logs current user out of the system
|
|
64
|
+
info List system information
|
|
65
|
+
user Display user information
|
|
66
|
+
targets List available targets infomation
|
|
67
|
+
password [oldpassword] [--password PASS] Change the password for the current user
|
|
68
|
+
github [name] [--email,--password] Bind to the github account
|
|
69
|
+
runtimes Display the supported runtimes of the system
|
|
70
|
+
frameworks Display the supported frameworks of the system
|
|
71
|
+
version Display version information
|
|
72
|
+
help [command] Get general help or help on a specific command
|
|
73
|
+
help options Get help on available options
|
|
74
|
+
|
|
75
75
|
Project
|
|
76
|
-
projects
|
|
77
|
-
create-project [project]
|
|
78
|
-
delete-project [projectid]
|
|
79
|
-
project-events [projectid]
|
|
80
|
-
project-tags [projectid]
|
|
81
|
-
project-commits [projectid]
|
|
82
|
-
upload [projectid] [--path,--ver,--desc]
|
|
83
|
-
|
|
84
|
-
Application
|
|
85
|
-
apps [--projectid,--target]
|
|
86
|
-
create-app [appname]
|
|
87
|
-
delete-app [appid]
|
|
88
|
-
delete-app <appname> <--target TARGET>
|
|
89
|
-
start-app [appid]
|
|
90
|
-
start-app <appname> <--target TARGET>
|
|
91
|
-
stop-app [appid]
|
|
92
|
-
stop-app <appname> <--target TARGET>
|
|
93
|
-
stop-app --graceful
|
|
94
|
-
restart-app [appid]
|
|
95
|
-
restart-app <appname> <--target TARGET>
|
|
96
|
-
restart-app --graceful
|
|
97
|
-
scale-app [appid] [--instance N]
|
|
98
|
-
scale-app <appname> <--target TARGET> [--instance N]
|
|
99
|
-
update-app [appid] [--ver VERSION]
|
|
100
|
-
update-app <appname> <--target TARGET> [--ver VERSION]
|
|
101
|
-
update-app --graceful
|
|
102
|
-
status [appid]
|
|
103
|
-
status <appname> <--target TARGET>
|
|
104
|
-
app-env [appid]
|
|
105
|
-
app-env <appname> <--target TARGET>
|
|
106
|
-
create-env [appid] [--name,--value]
|
|
107
|
-
create-env <appname> <--target TARGET> [--name,--value]
|
|
108
|
-
delete-env [appid] [--name NAME]
|
|
109
|
-
delete-env <appname> <--target TARGET> [--name NAME]
|
|
110
|
-
app-log [appid] [--instanceid,--file]
|
|
111
|
-
app-log <appname> <--target TARGET> [--instanceid,--file]
|
|
112
|
-
|
|
76
|
+
projects List created projects
|
|
77
|
+
create-project [project] Create a new project
|
|
78
|
+
delete-project [projectid] Delete the project
|
|
79
|
+
project-events [projectid] List the event info for the project
|
|
80
|
+
project-tags [projectid] List the tags for the project
|
|
81
|
+
project-commits [projectid] List the commit log for the project
|
|
82
|
+
upload [projectid] [--path,--ver,--desc] Upload the war package for java project
|
|
83
|
+
|
|
84
|
+
Application
|
|
85
|
+
apps [--projectid,--target] List deployed applications
|
|
86
|
+
create-app [appname] Create a new application
|
|
87
|
+
delete-app [appid] Delete the application
|
|
88
|
+
delete-app <appname> <--target TARGET> Delete the application
|
|
89
|
+
start-app [appid] Start the application
|
|
90
|
+
start-app <appname> <--target TARGET> Start the application
|
|
91
|
+
stop-app [appid] Stop the application
|
|
92
|
+
stop-app <appname> <--target TARGET> Stop the application
|
|
93
|
+
stop-app --graceful Stop the application in a graceful mode
|
|
94
|
+
restart-app [appid] Restart the application
|
|
95
|
+
restart-app <appname> <--target TARGET> Restart the application
|
|
96
|
+
restart-app --graceful Restart the application in a graceful mode
|
|
97
|
+
scale-app [appid] [--instance N] Scale the application instances up or down
|
|
98
|
+
scale-app <appname> <--target TARGET> [--instance N] Scale the application instances up or down
|
|
99
|
+
update-app [appid] [--ver VERSION] Update the application
|
|
100
|
+
update-app <appname> <--target TARGET> [--ver VERSION] Update the application
|
|
101
|
+
update-app --graceful Update the application in a graceful mode
|
|
102
|
+
status [appid] Display resource usage for the application
|
|
103
|
+
status <appname> <--target TARGET> Display resource usage for the application
|
|
104
|
+
app-env [appid] Display the environments for the application
|
|
105
|
+
app-env <appname> <--target TARGET> Display the environments for the application
|
|
106
|
+
create-env [appid] [--name,--value] Create the environment for the application
|
|
107
|
+
create-env <appname> <--target TARGET> [--name,--value] Create the environment for the application
|
|
108
|
+
delete-env [appid] [--name NAME] Delete the environment for the application
|
|
109
|
+
delete-env <appname> <--target TARGET> [--name NAME] Delete the environment for the application
|
|
110
|
+
app-log [appid] [--instanceid,--file] List the logs for the application
|
|
111
|
+
app-log <appname> <--target TARGET> [--instanceid,--file] List the logs for the application
|
|
112
|
+
|
|
113
113
|
Service
|
|
114
|
-
app-service [appid]
|
|
115
|
-
app-service <appname> <--target TARGET>
|
|
116
|
-
bind-service [appid] [--service SERVICE]
|
|
117
|
-
bind-service <appname> <--target TARGET> [--service]
|
|
118
|
-
unbind-service [appid] [--service SERVICE]
|
|
119
|
-
unbind-service <appname> <--target TARGET> [--service]
|
|
120
|
-
services
|
|
121
|
-
service [serviceid]
|
|
122
|
-
export-service [serviceid]
|
|
123
|
-
import-service [url]
|
|
124
|
-
check-service [serviceid]
|
|
125
|
-
delete-service [serviceid]
|
|
126
|
-
register-service [serviceid] [--target TARGET]
|
|
127
|
-
deregister-service [serviceid] [--target TARGET]
|
|
128
|
-
|
|
114
|
+
app-service [appid] Display the binded services for the application
|
|
115
|
+
app-service <appname> <--target TARGET> Display the binded services for the application
|
|
116
|
+
bind-service [appid] [--service SERVICE] Bind the services for the application
|
|
117
|
+
bind-service <appname> <--target TARGET> [--service] Bind the services for the application
|
|
118
|
+
unbind-service [appid] [--service SERVICE] Unbind the services for the application
|
|
119
|
+
unbind-service <appname> <--target TARGET> [--service] Unbind the services for the application
|
|
120
|
+
services List dedicated services
|
|
121
|
+
service [serviceid] List the connection info for the service
|
|
122
|
+
export-service [serviceid] Export dedicated service url
|
|
123
|
+
import-service [url] Import dedicated service
|
|
124
|
+
check-service [serviceid] Check availability for the service
|
|
125
|
+
delete-service [serviceid] Delete the service
|
|
126
|
+
register-service [serviceid] [--target TARGET] Register to target
|
|
127
|
+
deregister-service [serviceid] [--target TARGET] Deregister to target
|
|
128
|
+
|
|
129
129
|
DNS
|
|
130
|
-
app-dns [appid]
|
|
131
|
-
app-dns <appname> <--target TARGET>
|
|
132
|
-
map-dns [appid] [--dns DNS]
|
|
133
|
-
map-dns <appname> <--target TARGET> [--dns DNS]
|
|
134
|
-
unmap-dns [appid] [--dns DNS]
|
|
135
|
-
unmap-dns <appname> <--target TARGET> [--dns DNS]
|
|
136
|
-
dns
|
|
137
|
-
zones
|
|
138
|
-
dns-records [dnsid]
|
|
139
|
-
create-dns [dnsname] [--zoneid,--projectid,--desc]
|
|
140
|
-
register-dns [dnsid] [--target,--continent,--country]
|
|
141
|
-
deregister-dns [dnsid] [--recordid ID]
|
|
142
|
-
delete-dns [dnsid]
|
|
130
|
+
app-dns [appid] Display the mapped urls for the application
|
|
131
|
+
app-dns <appname> <--target TARGET> Display the mapped urls for the application
|
|
132
|
+
map-dns [appid] [--dns DNS] Map the urls for the application
|
|
133
|
+
map-dns <appname> <--target TARGET> [--dns DNS] Map the urls for the application
|
|
134
|
+
unmap-dns [appid] [--dns DNS] Unmap the urls for the application
|
|
135
|
+
unmap-dns <appname> <--target TARGET> [--dns DNS] Unmap the urls for the application
|
|
136
|
+
dns List the dns
|
|
137
|
+
zones List the dns zones
|
|
138
|
+
dns-records [dnsid] List the record info for the registered dns
|
|
139
|
+
create-dns [dnsname] [--zoneid,--projectid,--desc] Create a new dns
|
|
140
|
+
register-dns [dnsid] [--target,--continent,--country,--region] Register to target
|
|
141
|
+
deregister-dns [dnsid] [--recordid ID] Deregister to target
|
|
142
|
+
delete-dns [dnsid] Delete the dns
|
|
143
143
|
|
|
144
144
|
4. Example
|
|
145
145
|
|
|
@@ -156,7 +156,7 @@ wangjing@wangjing-pc:~$ pi login www --user wangjing --password cloudpi
|
|
|
156
156
|
Successfully logged into [http://api.samsungcloud.org]
|
|
157
157
|
|
|
158
158
|
wangjing@wangjing-pc:~$ pi version
|
|
159
|
-
pi 0.1.
|
|
159
|
+
pi 0.1.36
|
|
160
160
|
|
|
161
161
|
wangjing@wangjing-pc:~$ pi info
|
|
162
162
|
|
|
@@ -173,93 +173,93 @@ Try 'pi help [command]' or 'pi help options' for more information.
|
|
|
173
173
|
Currently available pi commands are:
|
|
174
174
|
|
|
175
175
|
User
|
|
176
|
-
login [env] [--user,--password]
|
|
177
|
-
logout
|
|
178
|
-
info
|
|
179
|
-
user
|
|
180
|
-
targets
|
|
181
|
-
password [oldpassword] [--password PASS]
|
|
182
|
-
github [name] [--email,--password]
|
|
183
|
-
runtimes
|
|
184
|
-
frameworks
|
|
185
|
-
version
|
|
186
|
-
help [command]
|
|
187
|
-
help options
|
|
188
|
-
|
|
176
|
+
login [env] [--user,--password] Login
|
|
177
|
+
logout Logs current user out of the system
|
|
178
|
+
info List system information
|
|
179
|
+
user Display user information
|
|
180
|
+
targets List available targets infomation
|
|
181
|
+
password [oldpassword] [--password PASS] Change the password for the current user
|
|
182
|
+
github [name] [--email,--password] Bind to the github account
|
|
183
|
+
runtimes Display the supported runtimes of the system
|
|
184
|
+
frameworks Display the supported frameworks of the system
|
|
185
|
+
version Display version information
|
|
186
|
+
help [command] Get general help or help on a specific command
|
|
187
|
+
help options Get help on available options
|
|
188
|
+
|
|
189
189
|
Project
|
|
190
|
-
projects
|
|
191
|
-
create-project [project]
|
|
192
|
-
delete-project [projectid]
|
|
193
|
-
project-events [projectid]
|
|
194
|
-
project-tags [projectid]
|
|
195
|
-
project-commits [projectid]
|
|
196
|
-
upload [projectid] [--path,--ver,--desc]
|
|
197
|
-
|
|
198
|
-
Application
|
|
199
|
-
apps [--projectid,--target]
|
|
200
|
-
create-app [appname]
|
|
201
|
-
delete-app [appid]
|
|
202
|
-
delete-app <appname> <--target TARGET>
|
|
203
|
-
start-app [appid]
|
|
204
|
-
start-app <appname> <--target TARGET>
|
|
205
|
-
stop-app [appid]
|
|
206
|
-
stop-app <appname> <--target TARGET>
|
|
207
|
-
stop-app --graceful
|
|
208
|
-
restart-app [appid]
|
|
209
|
-
restart-app <appname> <--target TARGET>
|
|
210
|
-
restart-app --graceful
|
|
211
|
-
scale-app [appid] [--instance N]
|
|
212
|
-
scale-app <appname> <--target TARGET> [--instance N]
|
|
213
|
-
update-app [appid] [--ver VERSION]
|
|
214
|
-
update-app <appname> <--target TARGET> [--ver VERSION]
|
|
215
|
-
update-app --graceful
|
|
216
|
-
status [appid]
|
|
217
|
-
status <appname> <--target TARGET>
|
|
218
|
-
app-env [appid]
|
|
219
|
-
app-env <appname> <--target TARGET>
|
|
220
|
-
create-env [appid] [--name,--value]
|
|
221
|
-
create-env <appname> <--target TARGET> [--name,--value]
|
|
222
|
-
delete-env [appid] [--name NAME]
|
|
223
|
-
delete-env <appname> <--target TARGET> [--name NAME]
|
|
224
|
-
app-log [appid] [--instanceid,--file]
|
|
225
|
-
app-log <appname> <--target TARGET> [--instanceid,--file]
|
|
226
|
-
|
|
190
|
+
projects List created projects
|
|
191
|
+
create-project [project] Create a new project
|
|
192
|
+
delete-project [projectid] Delete the project
|
|
193
|
+
project-events [projectid] List the event info for the project
|
|
194
|
+
project-tags [projectid] List the tags for the project
|
|
195
|
+
project-commits [projectid] List the commit log for the project
|
|
196
|
+
upload [projectid] [--path,--ver,--desc] Upload the war package for java project
|
|
197
|
+
|
|
198
|
+
Application
|
|
199
|
+
apps [--projectid,--target] List deployed applications
|
|
200
|
+
create-app [appname] Create a new application
|
|
201
|
+
delete-app [appid] Delete the application
|
|
202
|
+
delete-app <appname> <--target TARGET> Delete the application
|
|
203
|
+
start-app [appid] Start the application
|
|
204
|
+
start-app <appname> <--target TARGET> Start the application
|
|
205
|
+
stop-app [appid] Stop the application
|
|
206
|
+
stop-app <appname> <--target TARGET> Stop the application
|
|
207
|
+
stop-app --graceful Stop the application in a graceful mode
|
|
208
|
+
restart-app [appid] Restart the application
|
|
209
|
+
restart-app <appname> <--target TARGET> Restart the application
|
|
210
|
+
restart-app --graceful Restart the application in a graceful mode
|
|
211
|
+
scale-app [appid] [--instance N] Scale the application instances up or down
|
|
212
|
+
scale-app <appname> <--target TARGET> [--instance N] Scale the application instances up or down
|
|
213
|
+
update-app [appid] [--ver VERSION] Update the application
|
|
214
|
+
update-app <appname> <--target TARGET> [--ver VERSION] Update the application
|
|
215
|
+
update-app --graceful Update the application in a graceful mode
|
|
216
|
+
status [appid] Display resource usage for the application
|
|
217
|
+
status <appname> <--target TARGET> Display resource usage for the application
|
|
218
|
+
app-env [appid] Display the environments for the application
|
|
219
|
+
app-env <appname> <--target TARGET> Display the environments for the application
|
|
220
|
+
create-env [appid] [--name,--value] Create the environment for the application
|
|
221
|
+
create-env <appname> <--target TARGET> [--name,--value] Create the environment for the application
|
|
222
|
+
delete-env [appid] [--name NAME] Delete the environment for the application
|
|
223
|
+
delete-env <appname> <--target TARGET> [--name NAME] Delete the environment for the application
|
|
224
|
+
app-log [appid] [--instanceid,--file] List the logs for the application
|
|
225
|
+
app-log <appname> <--target TARGET> [--instanceid,--file] List the logs for the application
|
|
226
|
+
|
|
227
227
|
Service
|
|
228
|
-
app-service [appid]
|
|
229
|
-
app-service <appname> <--target TARGET>
|
|
230
|
-
bind-service [appid] [--service SERVICE]
|
|
231
|
-
bind-service <appname> <--target TARGET> [--service]
|
|
232
|
-
unbind-service [appid] [--service SERVICE]
|
|
233
|
-
unbind-service <appname> <--target TARGET> [--service]
|
|
234
|
-
services
|
|
235
|
-
service [serviceid]
|
|
236
|
-
export-service [serviceid]
|
|
237
|
-
import-service [url]
|
|
238
|
-
check-service [serviceid]
|
|
239
|
-
delete-service [serviceid]
|
|
240
|
-
register-service [serviceid] [--target TARGET]
|
|
241
|
-
deregister-service [serviceid] [--target TARGET]
|
|
242
|
-
|
|
228
|
+
app-service [appid] Display the binded services for the application
|
|
229
|
+
app-service <appname> <--target TARGET> Display the binded services for the application
|
|
230
|
+
bind-service [appid] [--service SERVICE] Bind the services for the application
|
|
231
|
+
bind-service <appname> <--target TARGET> [--service] Bind the services for the application
|
|
232
|
+
unbind-service [appid] [--service SERVICE] Unbind the services for the application
|
|
233
|
+
unbind-service <appname> <--target TARGET> [--service] Unbind the services for the application
|
|
234
|
+
services List dedicated services
|
|
235
|
+
service [serviceid] List the connection info for the service
|
|
236
|
+
export-service [serviceid] Export dedicated service url
|
|
237
|
+
import-service [url] Import dedicated service
|
|
238
|
+
check-service [serviceid] Check availability for the service
|
|
239
|
+
delete-service [serviceid] Delete the service
|
|
240
|
+
register-service [serviceid] [--target TARGET] Register to target
|
|
241
|
+
deregister-service [serviceid] [--target TARGET] Deregister to target
|
|
242
|
+
|
|
243
243
|
DNS
|
|
244
|
-
app-dns [appid]
|
|
245
|
-
app-dns <appname> <--target TARGET>
|
|
246
|
-
map-dns [appid] [--dns DNS]
|
|
247
|
-
map-dns <appname> <--target TARGET> [--dns DNS]
|
|
248
|
-
unmap-dns [appid] [--dns DNS]
|
|
249
|
-
unmap-dns <appname> <--target TARGET> [--dns DNS]
|
|
250
|
-
dns
|
|
251
|
-
zones
|
|
252
|
-
dns-records [dnsid]
|
|
253
|
-
create-dns [dnsname] [--zoneid,--projectid,--desc]
|
|
254
|
-
register-dns [dnsid] [--target,--continent,--country]
|
|
255
|
-
deregister-dns [dnsid] [--recordid ID]
|
|
256
|
-
delete-dns [dnsid]
|
|
244
|
+
app-dns [appid] Display the mapped urls for the application
|
|
245
|
+
app-dns <appname> <--target TARGET> Display the mapped urls for the application
|
|
246
|
+
map-dns [appid] [--dns DNS] Map the urls for the application
|
|
247
|
+
map-dns <appname> <--target TARGET> [--dns DNS] Map the urls for the application
|
|
248
|
+
unmap-dns [appid] [--dns DNS] Unmap the urls for the application
|
|
249
|
+
unmap-dns <appname> <--target TARGET> [--dns DNS] Unmap the urls for the application
|
|
250
|
+
dns List the dns
|
|
251
|
+
zones List the dns zones
|
|
252
|
+
dns-records [dnsid] List the record info for the registered dns
|
|
253
|
+
create-dns [dnsname] [--zoneid,--projectid,--desc] Create a new dns
|
|
254
|
+
register-dns [dnsid] [--target,--continent,--country,--region] Register to target
|
|
255
|
+
deregister-dns [dnsid] [--recordid ID] Deregister to target
|
|
256
|
+
delete-dns [dnsid] Delete the dns
|
|
257
257
|
|
|
258
258
|
wangjing@wangjing-pc:~$ pi help options
|
|
259
259
|
|
|
260
260
|
Available options:
|
|
261
261
|
|
|
262
|
-
|
|
262
|
+
--user USER
|
|
263
263
|
--password PASS
|
|
264
264
|
--name NAME
|
|
265
265
|
--email EMAIL
|
|
@@ -273,6 +273,7 @@ Available options:
|
|
|
273
273
|
--service SERVICE
|
|
274
274
|
--dns DNS
|
|
275
275
|
--zoneid ID
|
|
276
|
+
--region REGION
|
|
276
277
|
--instanceid N
|
|
277
278
|
--file FILE
|
|
278
279
|
--continent CONT
|
|
@@ -299,13 +300,12 @@ Github Account Email: ruanzhimin@gmail.com
|
|
|
299
300
|
|
|
300
301
|
wangjing@wangjing-pc:~$ pi targets
|
|
301
302
|
|
|
302
|
-
|
|
303
|
-
| Name | URL
|
|
304
|
-
|
|
305
|
-
| bst-dev | http://bst-dev.samsungcloud.org
|
|
306
|
-
| target-hq | http://target-hq.
|
|
307
|
-
|
|
308
|
-
+-----------+-----------------------------------+
|
|
303
|
+
+-----------+---------------------------------+
|
|
304
|
+
| Name | URL |
|
|
305
|
+
+-----------+---------------------------------+
|
|
306
|
+
| bst-dev | http://bst-dev.samsungcloud.org |
|
|
307
|
+
| target-hq | http://target-hq.cloudtao.net |
|
|
308
|
+
+-----------+---------------------------------+
|
|
309
309
|
|
|
310
310
|
wangjing@wangjing-pc:~$ pi runtimes
|
|
311
311
|
|
|
@@ -528,6 +528,26 @@ Select continent: 4
|
|
|
528
528
|
Select continent: Default
|
|
529
529
|
OK
|
|
530
530
|
|
|
531
|
+
wangjing@wangjing-pc:~$ pi register-dns
|
|
532
|
+
1: wangjingtest.samsungpaas.com
|
|
533
|
+
2: picture.samsungpaas.com
|
|
534
|
+
3: testapp.cloudtao.net
|
|
535
|
+
Select DNS: 3
|
|
536
|
+
1: bst-dev
|
|
537
|
+
2: target-hq
|
|
538
|
+
Select target: 2
|
|
539
|
+
1: eu-west-1
|
|
540
|
+
2: sa-east-1
|
|
541
|
+
3: us-east-1
|
|
542
|
+
4: ap-northeast-1
|
|
543
|
+
5: us-west-2
|
|
544
|
+
6: us-west-1
|
|
545
|
+
7: ap-southeast-1
|
|
546
|
+
8: ap-southeast-2
|
|
547
|
+
9: DEFAULT
|
|
548
|
+
Select region: 1
|
|
549
|
+
OK
|
|
550
|
+
|
|
531
551
|
wangjing@wangjing-pc:~$ pi map-dns
|
|
532
552
|
1: all
|
|
533
553
|
2: project
|
data/lib/cli/commands/dns.rb
CHANGED
|
@@ -215,13 +215,14 @@ module PI::Cli::Command
|
|
|
215
215
|
|
|
216
216
|
def register_dns(dnsid=nil)
|
|
217
217
|
all_opts = total_opts
|
|
218
|
-
all_opts_except_valid_opts = all_opts.delete_if{ |key,value| key.to_s =~ /(target|continent|country)/i}
|
|
218
|
+
all_opts_except_valid_opts = all_opts.delete_if{ |key,value| key.to_s =~ /(target|continent|country|region)/i}
|
|
219
219
|
all_opts_except_valid_opts.each_value do |value|
|
|
220
220
|
err "Invalid options" if value != nil
|
|
221
221
|
end
|
|
222
222
|
client.check_login_status
|
|
223
223
|
target = @options[:target]
|
|
224
224
|
continent = @options[:continent]
|
|
225
|
+
region = @options[:region]
|
|
225
226
|
if continent
|
|
226
227
|
continents = client.dns_continents
|
|
227
228
|
err "Invalid continent" unless continents.has_key?(continent.to_sym)
|
|
@@ -230,44 +231,73 @@ module PI::Cli::Command
|
|
|
230
231
|
if country && continent
|
|
231
232
|
countries = client.dns_country(continent)
|
|
232
233
|
err "Invalid country" unless countries.has_key?(country.to_sym)
|
|
233
|
-
end
|
|
234
|
+
end
|
|
235
|
+
if region
|
|
236
|
+
unless dnsid
|
|
237
|
+
dnsid = choose_dnsid
|
|
238
|
+
end
|
|
239
|
+
regions = client.regions(dnsid)
|
|
240
|
+
if regions.empty?
|
|
241
|
+
err "Invalid option, usage: pi register-dns [dnsid] [--target,--continent,--country]"
|
|
242
|
+
else
|
|
243
|
+
err "Invalid region" unless regions.include?(region)
|
|
244
|
+
end
|
|
245
|
+
end
|
|
234
246
|
unless dnsid
|
|
235
247
|
dnsid = choose_dnsid
|
|
236
248
|
end
|
|
249
|
+
dns = client.dns
|
|
250
|
+
zoneid = nil
|
|
251
|
+
dns.each do |d|
|
|
252
|
+
zoneid = d[:zoneId] if dnsid == d[:id]
|
|
253
|
+
end
|
|
254
|
+
zones = client.dns_zone_list
|
|
255
|
+
zonetype = nil
|
|
256
|
+
zones.each do |z|
|
|
257
|
+
zonetype = z[:zoneType] if z[:id] == zoneid
|
|
258
|
+
end
|
|
237
259
|
unless target
|
|
238
260
|
targets = client.usable_dns_target(dnsid)
|
|
239
261
|
target = ask"Select target", :choices => targets.collect { |t| t[:targetName] }, :indexed => true
|
|
240
262
|
end
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
display "Select continent: #{continent}"
|
|
248
|
-
continent = continents.invert["#{continent}"]
|
|
249
|
-
end
|
|
250
|
-
if continent.to_s == "DEFAULT"
|
|
251
|
-
manifest = {
|
|
252
|
-
:continentCode => continent,
|
|
253
|
-
:countryCode => "DEFAULT"
|
|
254
|
-
}
|
|
255
|
-
else
|
|
256
|
-
unless country
|
|
257
|
-
countries = client.dns_country(continent)
|
|
258
|
-
err "No countries" if countries.nil? || countries.empty?
|
|
259
|
-
tmp = countries.values
|
|
263
|
+
|
|
264
|
+
if zonetype == "cloudpidns"
|
|
265
|
+
unless continent
|
|
266
|
+
continents = client.dns_continents
|
|
267
|
+
err "No continents" if continents.nil? || continents.empty?
|
|
268
|
+
tmp = continents.values
|
|
260
269
|
tmp.sort! {|a, b| a <=> b }
|
|
261
|
-
|
|
262
|
-
display "Select
|
|
263
|
-
|
|
270
|
+
continent = ask"Select continent", :choices => tmp.collect { |t| t }, :indexed => true
|
|
271
|
+
display "Select continent: #{continent}"
|
|
272
|
+
continent = continents.invert["#{continent}"]
|
|
273
|
+
end
|
|
274
|
+
if continent.to_s == "DEFAULT"
|
|
275
|
+
manifest = {
|
|
276
|
+
:continentCode => continent,
|
|
277
|
+
:countryCode => "DEFAULT"
|
|
278
|
+
}
|
|
279
|
+
else
|
|
280
|
+
unless country
|
|
281
|
+
countries = client.dns_country(continent)
|
|
282
|
+
err "No countries" if countries.nil? || countries.empty?
|
|
283
|
+
tmp = countries.values
|
|
284
|
+
tmp.sort! {|a, b| a <=> b }
|
|
285
|
+
country = ask"Select country", :choices => tmp.collect { |t| t }, :indexed => true
|
|
286
|
+
display "Select country: #{country}"
|
|
287
|
+
country = countries.invert["#{country}"]
|
|
288
|
+
end
|
|
289
|
+
manifest = {
|
|
290
|
+
:continentCode => continent,
|
|
291
|
+
:countryCode => country
|
|
292
|
+
}
|
|
293
|
+
end
|
|
294
|
+
else
|
|
295
|
+
unless region
|
|
296
|
+
regions = client.regions(dnsid)
|
|
297
|
+
region = ask"Select region", :choices => regions, :indexed => true
|
|
264
298
|
end
|
|
265
|
-
manifest = {
|
|
266
|
-
:continentCode => continent,
|
|
267
|
-
:countryCode => country
|
|
268
|
-
}
|
|
269
299
|
end
|
|
270
|
-
client.register_dns(dnsid, target, manifest)
|
|
300
|
+
client.register_dns(dnsid, target, region, manifest)
|
|
271
301
|
display "OK".green
|
|
272
302
|
end
|
|
273
303
|
|
|
@@ -278,11 +308,11 @@ module PI::Cli::Command
|
|
|
278
308
|
err "Invalid options" if value != nil
|
|
279
309
|
end
|
|
280
310
|
client.check_login_status
|
|
281
|
-
recordid = @options[:recordid]
|
|
282
|
-
unless dnsid
|
|
283
|
-
dnsid = choose_dnsid
|
|
284
|
-
end
|
|
311
|
+
recordid = @options[:recordid]
|
|
285
312
|
unless recordid
|
|
313
|
+
unless dnsid
|
|
314
|
+
dnsid = choose_dnsid
|
|
315
|
+
end
|
|
286
316
|
targets = client.usable_dns_target(dnsid)
|
|
287
317
|
target = ask"Select target", :choices => targets.collect { |t| t[:targetName] }, :indexed => true
|
|
288
318
|
record = Array.new
|
data/lib/cli/runner.rb
CHANGED
|
@@ -41,6 +41,7 @@ class PI::Cli::Runner
|
|
|
41
41
|
opts.on('--service SERVICE') { |service| @options[:service] = service }
|
|
42
42
|
opts.on('--dns DNS') { |dns| @options[:dns] = dns }
|
|
43
43
|
opts.on('--zoneid ID') { |id| @options[:zoneid] = id }
|
|
44
|
+
opts.on('--region REGION') { |region| @options[:region] = region }
|
|
44
45
|
opts.on('--instanceid N') { |inst| @options[:instanceid] = inst }
|
|
45
46
|
opts.on('--file FILE') { |file| @options[:file] = file }
|
|
46
47
|
opts.on('--continent CONT') { |cont| @options[:continent] = cont }
|
|
@@ -355,7 +356,7 @@ class PI::Cli::Runner
|
|
|
355
356
|
set_cmd(:dns, :delete_dns, @args.size == 1 ? 1 : 0)
|
|
356
357
|
|
|
357
358
|
when 'register-dns'
|
|
358
|
-
usage('pi register-dns [dnsid] [--target,--continent,--country]')
|
|
359
|
+
usage('pi register-dns [dnsid] [--target,--continent,--country,--region]')
|
|
359
360
|
set_cmd(:dns, :register_dns, @args.size == 1 ? 1 : 0)
|
|
360
361
|
|
|
361
362
|
when 'dns-records'
|
data/lib/cli/usage.rb
CHANGED
|
@@ -25,87 +25,87 @@ class PI::Cli::Runner
|
|
|
25
25
|
Currently available pi commands are:
|
|
26
26
|
|
|
27
27
|
User
|
|
28
|
-
login [env] [--user,--password]
|
|
29
|
-
logout
|
|
30
|
-
info
|
|
31
|
-
user
|
|
32
|
-
targets
|
|
33
|
-
password [oldpassword] [--password PASS]
|
|
34
|
-
github [name] [--email,--password]
|
|
35
|
-
runtimes
|
|
36
|
-
frameworks
|
|
37
|
-
version
|
|
38
|
-
help [command]
|
|
39
|
-
help options
|
|
28
|
+
login [env] [--user,--password] Login
|
|
29
|
+
logout Logs current user out of the system
|
|
30
|
+
info List system information
|
|
31
|
+
user Display user information
|
|
32
|
+
targets List available targets infomation
|
|
33
|
+
password [oldpassword] [--password PASS] Change the password for the current user
|
|
34
|
+
github [name] [--email,--password] Bind to the github account
|
|
35
|
+
runtimes Display the supported runtimes of the system
|
|
36
|
+
frameworks Display the supported frameworks of the system
|
|
37
|
+
version Display version information
|
|
38
|
+
help [command] Get general help or help on a specific command
|
|
39
|
+
help options Get help on available options
|
|
40
40
|
|
|
41
41
|
Project
|
|
42
|
-
projects
|
|
43
|
-
create-project [project]
|
|
44
|
-
delete-project [projectid]
|
|
45
|
-
project-events [projectid]
|
|
46
|
-
project-tags [projectid]
|
|
47
|
-
project-commits [projectid]
|
|
48
|
-
upload [projectid] [--path,--ver,--desc]
|
|
42
|
+
projects List created projects
|
|
43
|
+
create-project [project] Create a new project
|
|
44
|
+
delete-project [projectid] Delete the project
|
|
45
|
+
project-events [projectid] List the event info for the project
|
|
46
|
+
project-tags [projectid] List the tags for the project
|
|
47
|
+
project-commits [projectid] List the commit log for the project
|
|
48
|
+
upload [projectid] [--path,--ver,--desc] Upload the war package for java project
|
|
49
49
|
|
|
50
50
|
Application
|
|
51
|
-
apps [--projectid,--target]
|
|
52
|
-
create-app [appname]
|
|
53
|
-
delete-app [appid]
|
|
54
|
-
delete-app <appname> <--target TARGET>
|
|
55
|
-
start-app [appid]
|
|
56
|
-
start-app <appname> <--target TARGET>
|
|
57
|
-
stop-app [appid]
|
|
58
|
-
stop-app <appname> <--target TARGET>
|
|
59
|
-
stop-app --graceful
|
|
60
|
-
restart-app [appid]
|
|
61
|
-
restart-app <appname> <--target TARGET>
|
|
62
|
-
restart-app --graceful
|
|
63
|
-
scale-app [appid] [--instance N]
|
|
64
|
-
scale-app <appname> <--target TARGET> [--instance N]
|
|
65
|
-
update-app [appid] [--ver VERSION]
|
|
66
|
-
update-app <appname> <--target TARGET> [--ver VERSION]
|
|
67
|
-
update-app --graceful
|
|
68
|
-
status [appid]
|
|
69
|
-
status <appname> <--target TARGET>
|
|
70
|
-
app-env [appid]
|
|
71
|
-
app-env <appname> <--target TARGET>
|
|
72
|
-
create-env [appid] [--name,--value]
|
|
73
|
-
create-env <appname> <--target TARGET> [--name,--value]
|
|
74
|
-
delete-env [appid] [--name NAME]
|
|
75
|
-
delete-env <appname> <--target TARGET> [--name NAME]
|
|
76
|
-
app-log [appid] [--instanceid,--file]
|
|
77
|
-
app-log <appname> <--target TARGET> [--instanceid,--file]
|
|
51
|
+
apps [--projectid,--target] List deployed applications
|
|
52
|
+
create-app [appname] Create a new application
|
|
53
|
+
delete-app [appid] Delete the application
|
|
54
|
+
delete-app <appname> <--target TARGET> Delete the application
|
|
55
|
+
start-app [appid] Start the application
|
|
56
|
+
start-app <appname> <--target TARGET> Start the application
|
|
57
|
+
stop-app [appid] Stop the application
|
|
58
|
+
stop-app <appname> <--target TARGET> Stop the application
|
|
59
|
+
stop-app --graceful Stop the application in a graceful mode
|
|
60
|
+
restart-app [appid] Restart the application
|
|
61
|
+
restart-app <appname> <--target TARGET> Restart the application
|
|
62
|
+
restart-app --graceful Restart the application in a graceful mode
|
|
63
|
+
scale-app [appid] [--instance N] Scale the application instances up or down
|
|
64
|
+
scale-app <appname> <--target TARGET> [--instance N] Scale the application instances up or down
|
|
65
|
+
update-app [appid] [--ver VERSION] Update the application
|
|
66
|
+
update-app <appname> <--target TARGET> [--ver VERSION] Update the application
|
|
67
|
+
update-app --graceful Update the application in a graceful mode
|
|
68
|
+
status [appid] Display resource usage for the application
|
|
69
|
+
status <appname> <--target TARGET> Display resource usage for the application
|
|
70
|
+
app-env [appid] Display the environments for the application
|
|
71
|
+
app-env <appname> <--target TARGET> Display the environments for the application
|
|
72
|
+
create-env [appid] [--name,--value] Create the environment for the application
|
|
73
|
+
create-env <appname> <--target TARGET> [--name,--value] Create the environment for the application
|
|
74
|
+
delete-env [appid] [--name NAME] Delete the environment for the application
|
|
75
|
+
delete-env <appname> <--target TARGET> [--name NAME] Delete the environment for the application
|
|
76
|
+
app-log [appid] [--instanceid,--file] List the logs for the application
|
|
77
|
+
app-log <appname> <--target TARGET> [--instanceid,--file] List the logs for the application
|
|
78
78
|
|
|
79
79
|
Service
|
|
80
|
-
app-service [appid]
|
|
81
|
-
app-service <appname> <--target TARGET>
|
|
82
|
-
bind-service [appid] [--service SERVICE]
|
|
83
|
-
bind-service <appname> <--target TARGET> [--service]
|
|
84
|
-
unbind-service [appid] [--service SERVICE]
|
|
85
|
-
unbind-service <appname> <--target TARGET> [--service]
|
|
86
|
-
services
|
|
87
|
-
service [serviceid]
|
|
88
|
-
export-service [serviceid]
|
|
89
|
-
import-service [url]
|
|
90
|
-
check-service [serviceid]
|
|
91
|
-
delete-service [serviceid]
|
|
92
|
-
register-service [serviceid] [--target TARGET]
|
|
93
|
-
deregister-service [serviceid] [--target TARGET]
|
|
80
|
+
app-service [appid] Display the binded services for the application
|
|
81
|
+
app-service <appname> <--target TARGET> Display the binded services for the application
|
|
82
|
+
bind-service [appid] [--service SERVICE] Bind the services for the application
|
|
83
|
+
bind-service <appname> <--target TARGET> [--service] Bind the services for the application
|
|
84
|
+
unbind-service [appid] [--service SERVICE] Unbind the services for the application
|
|
85
|
+
unbind-service <appname> <--target TARGET> [--service] Unbind the services for the application
|
|
86
|
+
services List dedicated services
|
|
87
|
+
service [serviceid] List the connection info for the service
|
|
88
|
+
export-service [serviceid] Export dedicated service url
|
|
89
|
+
import-service [url] Import dedicated service
|
|
90
|
+
check-service [serviceid] Check availability for the service
|
|
91
|
+
delete-service [serviceid] Delete the service
|
|
92
|
+
register-service [serviceid] [--target TARGET] Register to target
|
|
93
|
+
deregister-service [serviceid] [--target TARGET] Deregister to target
|
|
94
94
|
|
|
95
95
|
DNS
|
|
96
|
-
app-dns [appid]
|
|
97
|
-
app-dns <appname> <--target TARGET>
|
|
98
|
-
map-dns [appid] [--dns DNS]
|
|
99
|
-
map-dns <appname> <--target TARGET> [--dns DNS]
|
|
100
|
-
unmap-dns [appid] [--dns DNS]
|
|
101
|
-
unmap-dns <appname> <--target TARGET> [--dns DNS]
|
|
102
|
-
dns
|
|
103
|
-
zones
|
|
104
|
-
dns-records [dnsid]
|
|
105
|
-
create-dns [dnsname] [--zoneid,--projectid,--desc]
|
|
106
|
-
register-dns [dnsid] [--target,--continent,--country]
|
|
107
|
-
deregister-dns [dnsid] [--recordid ID]
|
|
108
|
-
delete-dns [dnsid]
|
|
96
|
+
app-dns [appid] Display the mapped urls for the application
|
|
97
|
+
app-dns <appname> <--target TARGET> Display the mapped urls for the application
|
|
98
|
+
map-dns [appid] [--dns DNS] Map the urls for the application
|
|
99
|
+
map-dns <appname> <--target TARGET> [--dns DNS] Map the urls for the application
|
|
100
|
+
unmap-dns [appid] [--dns DNS] Unmap the urls for the application
|
|
101
|
+
unmap-dns <appname> <--target TARGET> [--dns DNS] Unmap the urls for the application
|
|
102
|
+
dns List the dns
|
|
103
|
+
zones List the dns zones
|
|
104
|
+
dns-records [dnsid] List the record info for the registered dns
|
|
105
|
+
create-dns [dnsname] [--zoneid,--projectid,--desc] Create a new dns
|
|
106
|
+
register-dns [dnsid] [--target,--continent,--country,--region] Register to target
|
|
107
|
+
deregister-dns [dnsid] [--recordid ID] Deregister to target
|
|
108
|
+
delete-dns [dnsid] Delete the dns
|
|
109
109
|
USAGE
|
|
110
110
|
|
|
111
111
|
end
|
data/lib/cli/version.rb
CHANGED
data/lib/pi/client.rb
CHANGED
|
@@ -416,10 +416,16 @@ class PI::Client
|
|
|
416
416
|
json_get("#{PI::DNS_PATH}/country/#{continents}")
|
|
417
417
|
end
|
|
418
418
|
|
|
419
|
-
def register_dns(dnsid, target, manifest={})
|
|
419
|
+
def register_dns(dnsid, target, region=nil, manifest={})
|
|
420
420
|
dnsid = uri_encode(dnsid)
|
|
421
421
|
target = uri_encode(target)
|
|
422
|
-
|
|
422
|
+
region = uri_encode(region)
|
|
423
|
+
json_post("#{PI::DNS_PATH}/view/#{dnsid}/#{target}?region=#{region}", manifest)
|
|
424
|
+
end
|
|
425
|
+
|
|
426
|
+
def regions(dnsid)
|
|
427
|
+
dnsid = uri_encode(dnsid)
|
|
428
|
+
json_get("#{PI::DNS_PATH}/region/#{dnsid}")
|
|
423
429
|
end
|
|
424
430
|
|
|
425
431
|
def deregister_dns(recordid)
|
metadata
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: pi
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
hash:
|
|
4
|
+
hash: 83
|
|
5
5
|
prerelease:
|
|
6
6
|
segments:
|
|
7
7
|
- 0
|
|
8
8
|
- 1
|
|
9
|
-
-
|
|
10
|
-
version: 0.1.
|
|
9
|
+
- 36
|
|
10
|
+
version: 0.1.36
|
|
11
11
|
platform: ruby
|
|
12
12
|
authors:
|
|
13
13
|
- Samsung
|
|
@@ -15,7 +15,7 @@ autorequire:
|
|
|
15
15
|
bindir: bin
|
|
16
16
|
cert_chain: []
|
|
17
17
|
|
|
18
|
-
date:
|
|
18
|
+
date: 2013-02-05 00:00:00 Z
|
|
19
19
|
dependencies:
|
|
20
20
|
- !ruby/object:Gem::Dependency
|
|
21
21
|
name: json_pure
|