umbreo_cli 1.0.141

Sign up to get free protection for your applications and to get access to all the features.
Files changed (38) hide show
  1. checksums.yaml +7 -0
  2. data/.env +2 -0
  3. data/Gemfile +23 -0
  4. data/Gemfile.lock +106 -0
  5. data/README.md +1625 -0
  6. data/Rakefile +44 -0
  7. data/bin/manifests/init.pp +20 -0
  8. data/bin/umbreo +1684 -0
  9. data/bin/umbreo.json +34 -0
  10. data/lib/umbreo.rb +49 -0
  11. data/lib/umbreo/helpers/alert_message.rb +58 -0
  12. data/lib/umbreo/helpers/error_exception.rb +15 -0
  13. data/lib/umbreo/helpers/file_generator.rb +13 -0
  14. data/lib/umbreo/helpers/json_base_convert.rb +30 -0
  15. data/lib/umbreo/helpers/table.rb +45 -0
  16. data/lib/umbreo/models/amazon_web_service_provider.rb +260 -0
  17. data/lib/umbreo/models/authentication.rb +99 -0
  18. data/lib/umbreo/models/blueprint.rb +241 -0
  19. data/lib/umbreo/models/cloud_provider.rb +143 -0
  20. data/lib/umbreo/models/configuration.rb +98 -0
  21. data/lib/umbreo/models/digital_ocean_provider.rb +204 -0
  22. data/lib/umbreo/models/google_compute_engine_provider.rb +232 -0
  23. data/lib/umbreo/models/instance.rb +170 -0
  24. data/lib/umbreo/models/module.rb +61 -0
  25. data/lib/umbreo/models/openstack_provider.rb +260 -0
  26. data/lib/umbreo/models/profile.rb +61 -0
  27. data/lib/umbreo/models/provider.rb +164 -0
  28. data/lib/umbreo/models/service.rb +244 -0
  29. data/lib/umbreo/models/service_provider.rb +185 -0
  30. data/lib/umbreo/models/stack.rb +181 -0
  31. data/lib/umbreo/models/system.rb +43 -0
  32. data/lib/umbreo/models/umbreo_stack_template.rb +163 -0
  33. data/lib/umbreo/models/xenserver_provider.rb +200 -0
  34. data/lib/umbreo/version.rb +3 -0
  35. data/manifests/init.pp +20 -0
  36. data/manifests1/init.pp +9 -0
  37. data/umbreo.gemspec +28 -0
  38. metadata +241 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 365c82073d094680f26a3c9842eca0c85b50caed
4
+ data.tar.gz: 6a32423d894299ced3129d6dd16fce9a595a3e7a
5
+ SHA512:
6
+ metadata.gz: 42aac4563d883a469edb6f2976b4b37e04c552b4e43153291bd6166a448e7e337a08cfdc6d6f0fb1601fc8aac80f672b7410058695d7284c7dbb06daa89d0aff
7
+ data.tar.gz: ea1c02a8a2eec07ccada7751b07aac6c456d4c34865e288d3c57c1b2dc3b38fdac77a9ef31ca0a8612f89c125764a1144aaa77a76c0efd2cbde39013d9f3d3d6
data/.env ADDED
@@ -0,0 +1,2 @@
1
+ SERVER_END_POINT=https://beta.umbreo.com
2
+ FILE_CONFIG=$(eval echo ~$USER)/.umbreoconfig
data/Gemfile ADDED
@@ -0,0 +1,23 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec
4
+
5
+ gem 'gli'
6
+ gem 'contracts'
7
+ gem 'gherkin'
8
+ gem 'activesupport'
9
+
10
+ # Fetch API
11
+ gem "typhoeus"
12
+ # Debuging
13
+ gem 'byebug'
14
+ # Tabling Terminal
15
+ gem 'terminal-table'
16
+ # Colouring terminal
17
+ gem 'rainbow'
18
+
19
+ gem 'highline'
20
+ gem 'parseconfig'
21
+ gem 'progress_bar'
22
+ gem 'puppet-parse'
23
+ gem 'json'
data/Gemfile.lock ADDED
@@ -0,0 +1,106 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ umbreo_cli (1.0.14)
5
+ activesupport (= 5.0.0)
6
+ aruba (~> 0.14.1)
7
+ contracts (~> 0.14.0)
8
+ gherkin (~> 4.0, >= 4.0.0)
9
+ gli (= 2.13.4)
10
+ rainbow (~> 2.1, >= 2.1.0)
11
+ rake (~> 11.1, >= 11.1.2)
12
+ terminal-table (~> 1.5, >= 1.5.2)
13
+ typhoeus (~> 1.0, >= 1.0.2)
14
+
15
+ GEM
16
+ remote: https://rubygems.org/
17
+ specs:
18
+ CFPropertyList (2.2.8)
19
+ activesupport (5.0.0)
20
+ concurrent-ruby (~> 1.0, >= 1.0.2)
21
+ i18n (~> 0.7)
22
+ minitest (~> 5.1)
23
+ tzinfo (~> 1.1)
24
+ aruba (0.14.2)
25
+ childprocess (~> 0.5.6)
26
+ contracts (~> 0.9)
27
+ cucumber (>= 1.3.19)
28
+ ffi (~> 1.9.10)
29
+ rspec-expectations (>= 2.99)
30
+ thor (~> 0.19)
31
+ builder (3.2.2)
32
+ byebug (9.0.5)
33
+ childprocess (0.5.9)
34
+ ffi (~> 1.0, >= 1.0.11)
35
+ concurrent-ruby (1.0.2)
36
+ contracts (0.14.0)
37
+ cucumber (2.4.0)
38
+ builder (>= 2.1.2)
39
+ cucumber-core (~> 1.5.0)
40
+ cucumber-wire (~> 0.0.1)
41
+ diff-lcs (>= 1.1.3)
42
+ gherkin (~> 4.0)
43
+ multi_json (>= 1.7.5, < 2.0)
44
+ multi_test (>= 0.1.2)
45
+ cucumber-core (1.5.0)
46
+ gherkin (~> 4.0)
47
+ cucumber-wire (0.0.1)
48
+ diff-lcs (1.2.5)
49
+ ethon (0.9.0)
50
+ ffi (>= 1.3.0)
51
+ facter (2.4.6)
52
+ CFPropertyList (~> 2.2.6)
53
+ ffi (1.9.14)
54
+ gherkin (4.0.0)
55
+ gli (2.13.4)
56
+ highline (1.7.8)
57
+ i18n (0.7.0)
58
+ json (1.8.3)
59
+ minitest (5.9.0)
60
+ multi_json (1.12.1)
61
+ multi_test (0.1.2)
62
+ options (2.3.2)
63
+ parseconfig (1.0.8)
64
+ progress_bar (1.0.5)
65
+ highline (~> 1.6)
66
+ options (~> 2.3.0)
67
+ puppet-parse (0.1.4)
68
+ facter
69
+ rdoc (~> 3.12)
70
+ rainbow (2.1.0)
71
+ rake (11.2.2)
72
+ rdoc (3.12.2)
73
+ json (~> 1.4)
74
+ rspec-expectations (3.5.0)
75
+ diff-lcs (>= 1.2.0, < 2.0)
76
+ rspec-support (~> 3.5.0)
77
+ rspec-support (3.5.0)
78
+ terminal-table (1.6.0)
79
+ thor (0.19.1)
80
+ thread_safe (0.3.5)
81
+ typhoeus (1.1.0)
82
+ ethon (>= 0.9.0)
83
+ tzinfo (1.2.2)
84
+ thread_safe (~> 0.1)
85
+
86
+ PLATFORMS
87
+ ruby
88
+
89
+ DEPENDENCIES
90
+ activesupport
91
+ byebug
92
+ contracts
93
+ gherkin
94
+ gli
95
+ highline
96
+ json
97
+ parseconfig
98
+ progress_bar
99
+ puppet-parse
100
+ rainbow
101
+ terminal-table
102
+ typhoeus
103
+ umbreo_cli!
104
+
105
+ BUNDLED WITH
106
+ 1.12.5
data/README.md ADDED
@@ -0,0 +1,1625 @@
1
+ # List Umbreo Command CLI
2
+
3
+ ### We have 2 ways to call action command:
4
+
5
+ * command-suite
6
+ * command-form
7
+
8
+ ### Wiki Umbreo Command CLI
9
+
10
+ 1. [Endpoint Configuration](#1-endpoint-configuration)
11
+ 2. [Authentication](#2-authentication)
12
+ * [Login](#login)
13
+ * [Logout](#logout)
14
+ 3. [Instance](#3-instance)
15
+ * [List or filter](#list-or-filter)
16
+ * [Search](#search)
17
+ * [Show detail](#show-detail)
18
+ * [Deploy Blueprint](#deploy-blueprint)
19
+ 4. [Module](#4-module)
20
+ * [List](#list)
21
+ * [Search](#search-1)
22
+ 5. [Profile](#5-profile)
23
+ * [List](#list-1)
24
+ * [Search](#search-2)
25
+ 6. [System](#6-system)
26
+ * [List](#list-2)
27
+ 7. [Blueprint](#7-blueprint)
28
+ * [List or filter](#list-or-filter-1)
29
+ * [Search](#search-3)
30
+ * [Show detail](#show-detail-1)
31
+ * [Delete my custom blueprint](#delete-my-custom-blueprint)
32
+ * [Create custom blueprint](#create-custom-blueprint)
33
+ * [Deploy blueprint](#deploy-blueprint)
34
+ * [Export blueprint json](#export-blueprint-json)
35
+ * [Validate blueprint json](#validate-blueprint-json)
36
+ 8. [Stack Template](#8-stack-template)
37
+ * [List or filter](#list-or-filter-2)
38
+ * [Search](#search-4)
39
+ * [Show detail](#show-detail-2)
40
+ * [Export stack template json](#export-stack-template-json)
41
+ * [Export blueprints of stack template json](#export-blueprinst-of-stack-template-json)
42
+ 9. [Stack](#9-stack)
43
+ * [List](#list-3)
44
+ * [Search](#search-5)
45
+ * [Show detail](#show-detail-3)
46
+ * [Create stack](#create-stack)
47
+ 10. [Cloud Provider](#10-cloud-provider)
48
+ * [List](#list-4)
49
+ * [Export cloud provider json](#export-cloud-provider-json)
50
+ * [Validate cloud provider json](#validate-cloud-provider-json)
51
+ 11. [Provider](#11-provider)
52
+ * [List or filter](#list-or-filter-3)
53
+ * [Search](#search-6)
54
+ * [Show detail](#show-detail-4)
55
+ * [Create provider](#create-provider)
56
+ * [Get Data Credential](#get-data-credential)
57
+ 12. [Service Provider](#12-service-provider)
58
+ * [List or filter](#list-or-filter-4)
59
+ * [Search](#search-7)
60
+ * [Show detail](#show-detail-5)
61
+ * [Export service provider json](#export-service-provider-json)
62
+ * [Validate service provider json](#validate-service-provider-json)
63
+ 13. [Service](#13-service)
64
+ * [List or filter](#list-or-filter-5)
65
+ * [Search](#search-8)
66
+ * [Show detail](#show-detail-6)
67
+ * [Create Service](#create-service)
68
+ * [Export service json](#export-service-json)
69
+ * [Validate service json](#validate-service-json)
70
+
71
+ Getting Started
72
+ ====================
73
+ This guide will help you to setup and run CLI
74
+
75
+ # Step1: install bundler
76
+ ```ruby
77
+ $ gem install bundler
78
+ ```
79
+
80
+ # Step2: Run bundle install
81
+ ```console
82
+ $ bundle install
83
+ ```
84
+
85
+ # How to Run CLI
86
+ ## You can simply go run this command
87
+ ### For first time
88
+ ```console
89
+ $ bundle exec bin/umbreo [command] [arg]
90
+ ```
91
+
92
+ ### For secondtime
93
+ ```console
94
+ $ umbreo [command] [arg]
95
+ ```
96
+
97
+ # Below are current lists command on CLI
98
+
99
+ ## 1. Endpoint Configuration
100
+
101
+ We can switch host endpoint for development mode
102
+
103
+ #### command-suite
104
+ ```console
105
+ $ umbreo endpoint configure --url endpoint_url
106
+ ```
107
+ ```console
108
+ $ umbreo endpoint configure --url https://beta.umbreo.com
109
+ ```
110
+ #### command-form
111
+ ```console
112
+ $ umbreo endpoint configure
113
+ $ Enter your Endpoint (URL): https://beta.umbreo.com
114
+ ```
115
+ #### output
116
+ ```console
117
+ {:email=>"", :api_key=>"", :name=>"", :end_point=>"https://beta.umbreo.com"}
118
+ End point updated, you have to resign in to your app.
119
+ ```
120
+
121
+ ## 2. Authentication
122
+
123
+ ### Login
124
+
125
+ File Credential will be created on ~/.umbreoconfig file
126
+
127
+ #### command-suite
128
+ ```console
129
+ $ umbreo login --email your_email --password your_password
130
+ ```
131
+ ```console
132
+ $ umbreo login --email foo@umbreo.com --password foobar
133
+ ```
134
+
135
+ #### command-form
136
+ ```console
137
+ $ umbreo endpoint login
138
+
139
+ Enter your Umbreo credentials.
140
+ $ Email: foobar@umbreo.com
141
+ $ Password (Typing will be hidden):
142
+ ```
143
+
144
+ #### output
145
+ ```console
146
+ Setting up configuration file at ~/.umbreoconfig...
147
+ {:email=>"foo@umbreo.com", :api_key=>"EangroBEk_**_**", :name=>"foobar", :end_point=>"https://beta.umbreo.com"}
148
+ Logged in as foo@umbreo.com
149
+ ```
150
+
151
+ ### Logout
152
+ ```console
153
+ $ umbreo logout
154
+ Local credentials cleared.
155
+ ```
156
+
157
+ ## 3. Instance
158
+
159
+ ### List or filter
160
+
161
+ #### command-suite
162
+ ```console
163
+ $ umbreo instance list --register_type |all|registered|unregistered| --type |all|test|manual|provider| --cloud |aws|gcompute|docean|openstack|XenServer| --page |number_of_page|
164
+ ```
165
+ ```console
166
+ $ umbreo instance list --register_type all --type test --cloud aws --page 2
167
+ ```
168
+
169
+ #### command-form
170
+ ```console
171
+ $ umbreo instance list
172
+
173
+ 1. all
174
+ 2. registered
175
+ 3. unregistered
176
+ $ Please choose filter of register type? all
177
+
178
+ 1. all
179
+ 2. test
180
+ 3. manual
181
+ 4. provider
182
+ $ Please choose filter of instance deployment type? test
183
+ ```
184
+
185
+ #### output
186
+ ```console
187
+ +-------+------------------+----------+-------------+
188
+ | List My Instance | Page: 1 |
189
+ +-------+------------------+----------+-------------+
190
+ | ID | Name | Hostname | Description |
191
+ +-------+------------------+----------+-------------+
192
+ | 61 | Instance1 | ? | |
193
+ | 62 | Instance2 | ? | test |
194
+ | 63 | Instance3 | ? | test |
195
+ | 64 | Instance4 | ? | test |
196
+ | 65 | Instance5 | ? | test |
197
+ | 66 | Instance6 | ? | |
198
+ +-------+------------------+----------+-------------+
199
+ ```
200
+
201
+ ### Search
202
+
203
+ #### command-suite
204
+ ```console
205
+ $ umbreo instance search --keyword |search_keyword| --register_type |all|registered|unregistered| --type |all|test|manual|provider| --cloud |aws|gcompute|docean|openstack|XenServer| --page |number_of_page|
206
+ ```
207
+ ```console
208
+ $ umbreo instance search --keyword 'Foo Instance' --register_type all --type test --cloud aws
209
+ ```
210
+
211
+ #### command-form
212
+ ```console
213
+ $ umbreo instance search
214
+
215
+ 1. all
216
+ 2. registered
217
+ 3. unregistered
218
+ $ Please choose filter of register type? all
219
+
220
+ 1. all
221
+ 2. test
222
+ 3. manual
223
+ 4. provider
224
+ $ Please choose filter of instance deployment type? test
225
+
226
+ $ Search keyword: Foo Instance
227
+ ```
228
+
229
+ #### output
230
+ ```console
231
+ +----+------------------+----------+-------------+
232
+ | List My Instance |
233
+ +----+------------------+----------+-------------+
234
+ | ID | Name | Hostname | Description |
235
+ +----+------------------+----------+-------------+
236
+ | 61 | Foo Instance | ? | |
237
+ +----+------------------+----------+-------------+
238
+ ```
239
+
240
+ ### Show detail
241
+
242
+ #### command-suite
243
+ ```console
244
+ $ umbreo instance show --id |id_or_name|
245
+ ```
246
+ ```console
247
+ $ umbreo instance show --id 'foo instance'
248
+ ```
249
+
250
+ #### command-form
251
+ ```console
252
+ $ umbreo instance show
253
+ $ Name or ID of Instance: foo instance
254
+ ```
255
+
256
+ #### output
257
+ ```console
258
+ ID: 61
259
+ Name: Foo Instance
260
+ Description:
261
+ Blueprint: Apache Webserver with PHP
262
+ Deployment type: provider
263
+ Hostname: ?
264
+ Created At: 2016-07-09
265
+ ```
266
+
267
+ ### Deploy Blueprint
268
+
269
+ #### command-suite
270
+ ```console
271
+ $ umbreo instance deploy --custom |optional_to_get_custom_or_umbreo_blueprints| --name |name_of_instance| --desc |desc_of_instance| --blueprint |directory_blueprint_json_file| --service_logging |directory_my_service_logging_json_file| --service_monitoring |directory_service_monitoring_json_file| --service_backup |directory_service_backup_json_file| --type |test|manual|provider| --provider |directory_my_provider_json_file|
272
+ ```
273
+ ```console
274
+ $ umbreo instance deploy --name 'Foo Instance' --desc 'My first instance' --type provider --blueprint apache_webserver_with_php.json --provider digital_ocean_provider.json --service_backup baculaexternal.json
275
+ ```
276
+
277
+ #### command-form
278
+ ```console
279
+ $ umbreo instance deploy --custom
280
+
281
+ $ Name of new instance: Foo Instance
282
+ $ Description of new instance: My First instance
283
+ $ Blueprint directory File JSON: custom_apache_webserver_with_php.json
284
+ $ Service logging directory File JSON (optional):
285
+ $ Service monitoring directory File JSON (optional):
286
+ $ Service backup directory File JSON (optional):
287
+
288
+ 1. test
289
+ 2. manual
290
+ 3. provider
291
+ $ Please choose deployment type? 1
292
+
293
+ ```
294
+
295
+ #### output
296
+ ```console
297
+ Instance foo instance successfully created
298
+ ```
299
+
300
+ ## 4. Module
301
+
302
+ All command that's associated to Module
303
+
304
+ ### List
305
+
306
+ #### command-suite
307
+ ```console
308
+ $ umbreo module list --page |number_of_page|
309
+ ```
310
+ ```console
311
+ $ umbreo module list
312
+ ```
313
+
314
+ #### output
315
+ ```console
316
+ +-----------+--------------+-------------+
317
+ | List Module | Page: 1 of 2 pages |
318
+ +-----------+--------------+-------------+
319
+ | ID | Name | Description |
320
+ +-----------+--------------+-------------+
321
+ | 1 | php | |
322
+ | 3 | tomcat | |
323
+ | 4 | jetty | |
324
+ | 6 | postgresql | |
325
+ | 8 | jenkins | |
326
+ | 13 | mongodb | |
327
+ | 19 | apache | |
328
+ | 20 | rails | |
329
+ +-----------+--------------+-------------+
330
+ ```
331
+
332
+ ### Search
333
+
334
+ #### command-suite
335
+ ```console
336
+ $ umbreo module search --keyword |search_keyword| --page |number_of_page|
337
+ ```
338
+ ```console
339
+ $ umbreo module search --keyword php
340
+ ```
341
+
342
+ #### output
343
+ ```console
344
+ +-----------+--------------+-------------+
345
+ | List Module | Page: 1 of 2 pages |
346
+ +-----------+--------------+-------------+
347
+ | ID | Name | Description |
348
+ +-----------+--------------+-------------+
349
+ | 1 | php | |
350
+ +-----------+--------------+-------------+
351
+ ```
352
+
353
+ ## 5. Profile
354
+
355
+ All command that's associated to Profile
356
+
357
+ ### List
358
+
359
+ #### command-suite
360
+ ```console
361
+ $ umbreo profile list --page |number_of_page|
362
+ ```
363
+ ```console
364
+ $ umbreo profile list
365
+ ```
366
+
367
+ #### output
368
+ ```console
369
+ +-----------+----------------+-------------+
370
+ | List Profile | Page: 1 of 3 pages |
371
+ +-----------+----------------+-------------+
372
+ | ID | Name | Description |
373
+ +-----------+----------------+-------------+
374
+ | 1 | rails | |
375
+ | 34 | msvisualstudio | for windows |
376
+ | 35 | mssql | for windows |
377
+ | 36 | jdk7 | for windows |
378
+ | 37 | jdk8 | for windows |
379
+ +-----------+----------------+-------------+
380
+ ```
381
+
382
+ ### Search
383
+
384
+ #### command-suite
385
+ ```console
386
+ $ umbreo profile search --keyword |search_keyword| --page |number_of_page|
387
+ ```
388
+ ```console
389
+ $ umbreo profile search --keyword rails
390
+ ```
391
+
392
+ #### output
393
+ ```console
394
+ +-----------+----------------+-------------+
395
+ | List Profile | Page: 1 of 3 pages |
396
+ +-----------+----------------+-------------+
397
+ | ID | Name | Description |
398
+ +-----------+----------------+-------------+
399
+ | 1 | rails | |
400
+ +-----------+----------------+-------------+
401
+ ```
402
+
403
+ ## 6. System
404
+
405
+ ### List
406
+
407
+ #### command-suite
408
+ ```console
409
+ $ umbreo system list
410
+ ```
411
+
412
+ #### output
413
+ ```console
414
+ +------+--------------+
415
+ | List System |
416
+ +------+--------------+
417
+ | ID | Name |
418
+ +------+--------------+
419
+ | 1 | Ubuntu |
420
+ | 2 | CentOS |
421
+ | 3 | Fedora |
422
+ | 4 | Ubuntu 12.04 |
423
+ | 5 | Ubuntu 14.04 |
424
+ | 6 | CentOS 5 |
425
+ | 7 | CentOS 6 |
426
+ | 8 | CentOS 7 |
427
+ | 9 | Fedora 19 |
428
+ | 10 | Fedora 20 |
429
+ | 11 | Ubuntu 10.04 |
430
+ | 12 | Windows |
431
+ +------+--------------+
432
+ ```
433
+
434
+ ## 7. Blueprint
435
+
436
+ All command that's associated to Blueprint
437
+
438
+ ### List or filter
439
+
440
+ #### command-suite
441
+ ```console
442
+ $ umbreo blueprint list --custom |optional_to_get_custom_or_umbreo_blueprints| --os |all|linux|windows| --page |number_of_page|
443
+ ```
444
+ ```console
445
+ $ umbreo blueprint list --os all
446
+ ```
447
+
448
+ #### command-form
449
+ ```console
450
+ $ umbreo blueprint list
451
+
452
+ 1. all
453
+ 2. linux
454
+ 3. windows
455
+ $ Please choose filter of instance provider? all
456
+ ```
457
+
458
+ #### output
459
+ ```console
460
+ +-------+-----------------------------+----------------------------+---------+--------------------------------+
461
+ | List Blueprint | Page: 1 of 3 pages |
462
+ +-------+-----------------------------+----------------------------+---------+--------------------------------+
463
+ | ID | Name | Slug | OS | Description |
464
+ +-------+-----------------------------+----------------------------+---------+--------------------------------+
465
+ | 3 | LAMP Server | lamp-server | linux | |
466
+ | 4 | Apache Webserver with PHP | apache-webserver-with-php | linux | Apache Webserver with PHP S... |
467
+ | 5 | Apache Webserver | apache-webserver | linux | A standard Apache Webserver. |
468
+ | 6 | Postgresql Server | postgresql-server | linux | |
469
+ | 8 | Tomcat Application Server | tomcat-application-server | linux | |
470
+ | 9 | Jetty Application Server | jetty-application-server | linux | Jetty Application Server, a... |
471
+ | 10 | Rails, Apache and Passenger | rails-apache-and-passenger | linux | This blueprint will set-up ... |
472
+ | 13 | Jenkins CI Server | jenkins-ci-server | linux | |
473
+ | 17 | Docker | docker | linux | |
474
+ | 18 | NodeJS | nodejs | linux | |
475
+ +-------+-----------------------------+----------------------------+---------+--------------------------------+
476
+ ```
477
+
478
+ ### Search
479
+
480
+ #### command-suite
481
+ ```console
482
+ $ umbreo blueprint search --keyword |search_keyword| --custom |optional_to_get_custom_or_umbreo_blueprints| --os |all|linux|windows| --page |number_of_page|
483
+ ```
484
+ ```console
485
+ $ umbreo blueprint search --keyword 'lamp server' --os all
486
+ ```
487
+
488
+ #### command-form
489
+ ```console
490
+ $ umbreo blueprint search
491
+
492
+ 1. all
493
+ 2. linux
494
+ 3. windows
495
+ $ Please choose filter of instance provider? all
496
+
497
+ $ Search keyword: lamp server
498
+ ```
499
+
500
+ #### output
501
+ ```console
502
+ +----+-------------+-------------+-------+-------------+
503
+ | List Blueprint |
504
+ +----+-------------+-------------+-------+-------------+
505
+ | ID | Name | Slug | OS | Description |
506
+ +----+-------------+-------------+-------+-------------+
507
+ | 3 | LAMP Server | lamp-server | linux | |
508
+ +----+-------------+-------------+-------+-------------+
509
+ ```
510
+
511
+ ### Show detail
512
+
513
+ #### command-suite
514
+ ```console
515
+ $ umbreo blueprint show --id |id_or_slug| --custom |optional_to_get_custom_or_umbreo_blueprints|
516
+ ```
517
+ ```console
518
+ $ umbreo blueprint show --id lamp-server
519
+ ```
520
+
521
+ #### command-form
522
+ ```console
523
+ $ umbreo blueprint show
524
+ $ ID or Slug of blueprint: lamp-server
525
+ ```
526
+
527
+ #### output
528
+ ```console
529
+ ID: 3
530
+ Name: LAMP Server
531
+ Description:
532
+ OS: linux
533
+ ```
534
+
535
+ ### Delete my custom blueprint
536
+
537
+ Delete bluprient can bse used if a custom blueprint didn't have instance.
538
+
539
+ #### command-suite
540
+ ```console
541
+ $ umbreo delete --id |id_or_slug|
542
+ ```
543
+ ```console
544
+ $ umbreo delete --id foo-blueprint
545
+ ```
546
+
547
+ #### command-form
548
+ ```console
549
+ $ umbreo blueprint delete
550
+ Id or Slug Custom Blueprint: foo-blueprint
551
+ ```
552
+
553
+ #### output
554
+ ```console
555
+ Success delete Foo blueprint.
556
+ ```
557
+
558
+ ### Create custom blueprint
559
+
560
+ #### command-suite
561
+ ```console
562
+ $ umbreo blueprint create --name |name_blueprint| --operating_system |linux|windows| --system |name_ofsystem| --profile |profiles|
563
+ ```
564
+ ```console
565
+ $ umbreo blueprint create --name 'foo blueprint' --operating_system linux --system 'Ubuntu 12.04' --profile 'Ruby, Postgresql'
566
+ ```
567
+
568
+ #### command-form
569
+ ```console
570
+ $ umbreo blueprint create
571
+
572
+ $ Name of blueprint: Foo Blueprint
573
+
574
+ 1. linux
575
+ 2. windows
576
+ $ Please choose your blueprint operating system? linux
577
+
578
+ $ Description: My first blueprint
579
+
580
+ 1. Ubuntu
581
+ 2. CentOS
582
+ 3. Fedora
583
+ 4. Ubuntu 12.04
584
+ 5. Ubuntu 14.04
585
+ 6. CentOS 5
586
+ 7. CentOS 6
587
+ 8. CentOS 7
588
+ 9. Fedora 19
589
+ 10. Fedora 20
590
+ 11. Ubuntu 10.04
591
+ 12. Windows
592
+ $ Please choose your blueprint system? Ubuntu 10.04
593
+
594
+ $ Add profiles (call list_profiles to show profiles) eg: 'Ruby, Postgresql': Ruby, Postgresql
595
+ ```
596
+
597
+ #### output
598
+ ```console
599
+ Success Create Blueprint - Your Blueprint ID 9 - Use this ID to deploy
600
+ ```
601
+
602
+ ### Deploy blueprint
603
+
604
+ ### Export blueprint json
605
+
606
+ #### command-suite
607
+ ```console
608
+ $ umbreo blueprint export --custom |optional_to_get_custom_or_umbreo_blueprints| --id |id_or_name_of_blueprint|
609
+ ```
610
+ ```console
611
+ $ umbreo blueprint export --custom --id 'foo-blueprint'
612
+ ```
613
+
614
+ #### command-form
615
+ ```console
616
+ $ umbreo blueprint export --custom
617
+ ID or Slug of Blueprint: foo-blueprint
618
+ ```
619
+
620
+ #### output
621
+ ```console
622
+ Success export blueprint. your blueprint is saved on json file with name foo_blueprint.json
623
+ ```
624
+
625
+ ### Validate blueprint json
626
+
627
+ #### command-suite
628
+ ```console
629
+ $ umbreo blueprint valid --file |directory_of_json_file|
630
+ ```
631
+ ```console
632
+ $ umbreo blueprint valid --file foo_blueprint.json
633
+ ```
634
+
635
+ #### command-form
636
+ ```console
637
+ $ umbreo blueprint validate
638
+ $ Directory of Blueprint: foo_blueprint.json
639
+ ```
640
+
641
+ #### output
642
+ ```console
643
+ Success export blueprint. your blueprint is saved on json file with name foo_blueprint.json
644
+ ```
645
+
646
+ ## 8. Stack Template
647
+
648
+ All command that's associated to Stack Template
649
+
650
+ ### List or filter
651
+
652
+ #### command-suite
653
+ ```console
654
+ $ umbreo stack_template list
655
+ ```
656
+
657
+ #### output
658
+ ```console
659
+ +---------+---------------------------+----------------------+
660
+ | List Umbreo Stack Template |
661
+ +---------+---------------------------+----------------------+
662
+ | ID | Name | Blueprints |
663
+ +---------+---------------------------+----------------------+
664
+ | 1 | Load Balanced Lamp Server | Apache + MySQL + PHP |
665
+ +---------+---------------------------+----------------------+
666
+ ```
667
+
668
+ ### Search
669
+
670
+ #### command-suite
671
+ ```console
672
+ $ umbreo stack_template search --keyword |search_keyword|
673
+ ```
674
+ ```console
675
+ $ umbreo stack_template search --keyword php
676
+ ```
677
+
678
+ #### command-form
679
+ ```console
680
+ $ umbreo stack_template search
681
+ $ Keyword of Stack Template: php
682
+ ```
683
+
684
+ #### output
685
+ ```console
686
+ +--------------+---------------------------+----------------------+
687
+ | List Search Result Umbreo Stack Template |
688
+ +--------------+---------------------------+----------------------+
689
+ | ID | Name | Description |
690
+ +--------------+---------------------------+----------------------+
691
+ | 1 | Load Balanced Lamp Server | Apache + MySQL + PHP |
692
+ +--------------+---------------------------+----------------------+
693
+ ```
694
+
695
+ ### Show detail
696
+
697
+ #### command-suite
698
+ ```console
699
+ $ umbreo stack_template show --id |id_or_name|
700
+ ```
701
+ ```console
702
+ $ umbreo stack_template show --id 'Load Balanced Lamp Server'
703
+ ```
704
+
705
+ #### command-form
706
+ ```console
707
+ $ umbreo stack_template show
708
+ $ Name or id of Stack Template: Load Balanced Lamp Server
709
+ ```
710
+
711
+ #### output
712
+ ```console
713
+ ID: 1
714
+ Name: Load Balanced Lamp Server
715
+ Description: Apache + MySQL + PHP
716
+ +--------------------+---------------------------+--------------------+
717
+ | List Blueprints of Load Balanced Lamp Server stack template |
718
+ +--------------------+---------------------------+--------------------+
719
+ | ID Blueprint | Name | Max Server |
720
+ +--------------------+---------------------------+--------------------+
721
+ | 26 | Nginx Webserver | 1 |
722
+ | 4 | Apache Webserver with PHP | 1 |
723
+ | 19 | MySQL Server | 1 |
724
+ +--------------------+---------------------------+--------------------+
725
+ ```
726
+
727
+ ### Export stack template json
728
+
729
+ #### command-suite
730
+ ```console
731
+ $ umbreo stack_template export --id |id_or_name_of_blueprint|
732
+ ```
733
+ ```console
734
+ $ umbreo stack_template export --id 'Load Balanced Lamp Server'
735
+ ```
736
+
737
+ #### command-form
738
+ ```console
739
+ $ umbreo stack_template export
740
+ Name or ID of Stack Template: Load Balanced Lamp Server
741
+ ```
742
+
743
+ #### output
744
+ ```console
745
+ Success export umbreo stack template. your stack template is saved on json file with name load_balanced_lamp_server.json
746
+ ```
747
+
748
+ ### Export blueprints of stack template json
749
+
750
+ #### command-suite
751
+ ```console
752
+ $ umbreo stack_template blueprint_export --id |id_or_name_of_blueprint|
753
+ ```
754
+ ```console
755
+ $ umbreo stack_template blueprint_export --id 'Load Balanced Lamp Server'
756
+ ```
757
+
758
+ #### command-form
759
+ ```console
760
+ $ umbreo stack_template blueprint_export
761
+ Name or ID of Stack Template: Load Balanced Lamp Server
762
+ ```
763
+
764
+ #### output
765
+ ```console
766
+ Creating JSON Files ...
767
+ Success export blueprint. your blueprint is saved on json file with name nginx_webserver.json
768
+ Success export blueprint. your blueprint is saved on json file with name apache_webserver_with_php.json
769
+ Success export blueprint. your blueprint is saved on json file with name mysql_server.json
770
+ JSON Blueprints of 1 stack template already created.
771
+ ```
772
+
773
+ ## 9. Stack
774
+
775
+ All command that's associated to Stack
776
+
777
+ ### List
778
+
779
+ #### command-suite
780
+ ```console
781
+ $ umbreo stack list
782
+ ```
783
+
784
+ #### output
785
+ ```console
786
+ +----+----------------+-------------+---------------------------+
787
+ | List My Stack |
788
+ +----+----------------+-------------+---------------------------+
789
+ | ID | Name | Description | Umbreo Stack |
790
+ +----+----------------+-------------+---------------------------+
791
+ | 1 | Stack One | test | Load Balanced Lamp Server |
792
+ | 2 | First Stack #1 | test | Load Balanced Lamp Server |
793
+ | 3 | Load Balance | test | Load Balanced Lamp Server |
794
+ | 4 | test | test | Load Balanced Lamp Server |
795
+ +----+----------------+-------------+---------------------------+
796
+ ```
797
+
798
+ ### Search
799
+
800
+ #### command-suite
801
+ ```console
802
+ $ umbreo stack search --keyword |search_keyword|
803
+ ```
804
+ ```console
805
+ $ umbreo stack search --keyword 'Stack One'
806
+ ```
807
+
808
+ #### command-form
809
+ ```console
810
+ $ umbreo stack search
811
+ $ Keyword of Stack: one
812
+ ```
813
+
814
+ #### output
815
+ ```console
816
+ +----+----------------+-------------+---------------------------+
817
+ | List My Stack |
818
+ +----+----------------+-------------+---------------------------+
819
+ | ID | Name | Description | Umbreo Stack |
820
+ +----+----------------+-------------+---------------------------+
821
+ | 1 | Stack One | test | Load Balanced Lamp Server |
822
+ +----+----------------+-------------+---------------------------+
823
+ ```
824
+
825
+ ### Show detail
826
+
827
+ #### command-suite
828
+ ```console
829
+ $ umbreo stack show --id |id_or_name_stack|
830
+ ```
831
+ ```console
832
+ $ umbreo stack show --id 'Foo Stack'
833
+ ```
834
+
835
+ #### command-form
836
+ ```console
837
+ $ umbreo stack show
838
+ $ Name or ID of Stack: Foo Stack
839
+ ```
840
+
841
+ #### output
842
+ ```console
843
+ ID: 1
844
+ Name: Foo Stack
845
+ Description: My first stack
846
+ Stack Template: Load Balanced Lamp Server
847
+ +----------+----------+-------------+
848
+ | List Nodes of Stack One stack |
849
+ +----------+----------+-------------+
850
+ | ID | Name | Description |
851
+ +----------+----------+-------------+
852
+ | 81 | FooN1 | test |
853
+ | 82 | FooN2 | test |
854
+ | 83 | FooN3 | test |
855
+ | 84 | FooN4 | test |
856
+ +----------+----------+-------------+
857
+ ```
858
+
859
+ ### Create stack
860
+
861
+ ```console
862
+ $ umbreo stack create --id |id_or_name_stack_template| --name |name_of_stack| --desc |desc_of_stack|
863
+ ```
864
+ ```console
865
+ $ umbreo stack create --id 1 --name 'Foo Stack' --desc 'My first Foo Stack'
866
+
867
+ 1. yes
868
+ 2. no
869
+ $ Will you add Nginx Webserver? yes
870
+ $ Description of new instance: My first node stack
871
+ $ Blueprint directory File JSON: /Users/foo/Documents/json/nginx_webserver.json
872
+ $ Service logging directory File JSON (optional):
873
+ $ Service monitoring directory File JSON (optional):
874
+ $ Service backup directory File JSON (optional):
875
+
876
+ 1. test
877
+ 2. manual
878
+ 3. provider
879
+ $ Please choose deployment type? 3
880
+ $ Compute provider directory File JSON: /Users/foo/Documents/json/digital_ocean_provider.json
881
+ ```
882
+
883
+ #### output
884
+ ```console
885
+ Stack successfully created.
886
+ ```
887
+
888
+ ## 10. Cloud Provider
889
+
890
+ All command that's associated to Stack
891
+
892
+ ### List
893
+
894
+ #### command-suite
895
+ ```console
896
+ $ umbreo cloud_provider list
897
+ ```
898
+
899
+ #### output
900
+ ```console
901
+ +-----+---------------------------+-----------+--------------------------------+
902
+ | List Cloud Provider |
903
+ +-----+---------------------------+-----------+--------------------------------+
904
+ | ID | Name | Slug | Description |
905
+ +-----+---------------------------+-----------+--------------------------------+
906
+ | 1 | Amazon Web Services (AWS) | aws | EC2 Instances |
907
+ | 2 | Google Compute Engine | gcompute | GCE Instances |
908
+ | 3 | OpenStack | openstack | OpenStack IaaS |
909
+ | 4 | Digital Ocean | docean | Digital Ocean will be avail... |
910
+ | 6 | Xenserver / XCP | XenServer | Xenserver / XCP |
911
+ +-----+---------------------------+-----------+--------------------------------+
912
+ ```
913
+
914
+ ### Export cloud provider json
915
+
916
+ #### command-suite
917
+ ```console
918
+ $ umbreo cloud_provider export --id |id_or_slug_of_cloud_provider|
919
+ ```
920
+ ```console
921
+ $ umbreo cloud_provider export --id aws
922
+ ```
923
+
924
+ #### command-form
925
+ ```console
926
+ $ umbreo cloud_provider export
927
+ $ ID or Slug of Cloud Provider: aws
928
+ ```
929
+
930
+ #### output
931
+ ```console
932
+ Success export cloud provider. your cloud_provider is saved on json file with name amazon_web_services(aws).json
933
+ ```
934
+
935
+ ### Validate cloud provider json
936
+
937
+ #### command-suite
938
+ ```console
939
+ $ umbreo cloud_provider valid --file |directory_of_json_file|
940
+ ```
941
+ ```console
942
+ $ umbreo cloud_provider valid --file amazon_web_services(aws).json
943
+ ```
944
+
945
+ #### command-form
946
+ ```console
947
+ $ umbreo blueprint validate
948
+ $ Directory File JSON: amazon_web_services(aws).json
949
+ ```
950
+
951
+ #### output
952
+ ```console
953
+ Validate passed.
954
+ ```
955
+
956
+ ## 11. Provider
957
+
958
+ ### List or filter
959
+
960
+ #### command-suite
961
+ ```console
962
+ $ umbreo provider list --cloud |slug_cloud_provider| --page |number_of_page|
963
+ ```
964
+ ```console
965
+ $ umbreo provider list --cloud all --page 2
966
+ ```
967
+
968
+ #### command-form
969
+ ```console
970
+ $ umbreo provider list --page 2
971
+
972
+ 1. all
973
+ 2. aws
974
+ 3. gcompute
975
+ 4. docean
976
+ 5. openstack
977
+ 6. XenServer
978
+ $ Please choose Cloud Provider filter? all
979
+ ```
980
+
981
+ #### output
982
+ ```console
983
+ +---------+-------------+---------------------------+-------------+
984
+ | List My Provider | Page: 2 of 2 pages |
985
+ +---------+-------------+---------------------------+-------------+
986
+ | ID | Name | Cloud Provider | Description |
987
+ +---------+-------------+---------------------------+-------------+
988
+ | 26 | FooPro1 | Digital Ocean | |
989
+ | 27 | FooPro2 | Digital Ocean | |
990
+ | 28 | FooPro3 | Digital Ocean | |
991
+ | 29 | FooPro4 | Digital Ocean | |
992
+ +---------+-------------+---------------------------+-------------+
993
+ ```
994
+
995
+ ### Search
996
+
997
+ #### command-suite
998
+ ```console
999
+ $ umbreo provider search --cloud |slug_cloud_provider| --keyword |search_keyword| --page |number_of_page|
1000
+ ```
1001
+ ```console
1002
+ $ umbreo provider search --cloud docean --keyword foo
1003
+ ```
1004
+
1005
+ #### command-form
1006
+ ```console
1007
+ $ umbreo provider search
1008
+
1009
+ 1. all
1010
+ 2. aws
1011
+ 3. gcompute
1012
+ 4. docean
1013
+ 5. openstack
1014
+ 6. XenServer
1015
+ $ Please choose Cloud Provider filter? docean
1016
+
1017
+ $ Search keyword: FooPro1
1018
+ ```
1019
+
1020
+ #### output
1021
+ ```console
1022
+ +---------+-------------+---------------------------+-------------+
1023
+ | List My Provider |
1024
+ +---------+-------------+---------------------------+-------------+
1025
+ | ID | Name | Cloud Provider | Description |
1026
+ +---------+-------------+---------------------------+-------------+
1027
+ | 26 | FooPro1 | Digital Ocean | |
1028
+ +---------+-------------+---------------------------+-------------+
1029
+ ```
1030
+
1031
+ ### Show detail
1032
+
1033
+ #### command-suite
1034
+ ```console
1035
+ $ umbreo provider show --id |id_or_name|
1036
+ ```
1037
+ ```console
1038
+ $ umbreo provider show --id 'FooPro1'
1039
+ ```
1040
+
1041
+ #### command-form
1042
+ ```console
1043
+ $ umbreo provider show
1044
+ $ Name or ID of Provider: FooPro1
1045
+ ```
1046
+
1047
+ #### output
1048
+ ```console
1049
+ ID: 19
1050
+ Name: FooPro1
1051
+ Description:
1052
+ Cloud provider: Digital Ocean
1053
+ Created At: 2016-07-01
1054
+ ```
1055
+
1056
+ ### Create provider
1057
+
1058
+ For create provider, we have to export cloud provider json first
1059
+
1060
+ #### command-suite
1061
+ ```console
1062
+ $ umbreo provider:create |aws|gcompute|docean|openstack|xenserver| --file |directory_of_json_file| --name |provider_name| --desc |provider_description|
1063
+ ```
1064
+ ```console
1065
+ $ umbreo provider:create digital_ocean --file digital_ocean.json --name 'Foo Instance'
1066
+ ```
1067
+
1068
+ #### command-form
1069
+ ```console
1070
+ $ umbreo cloud_provider:create digital_ocean
1071
+ $ Provider Name: Foo Instance
1072
+ $ Description (optional): test
1073
+ $ Directory of File: digital_ocean.json
1074
+ ```
1075
+
1076
+ #### output
1077
+ ```console
1078
+ Creating provider ...
1079
+ Success create provider
1080
+ ```
1081
+
1082
+ ### Get Data Credential
1083
+
1084
+ For create instance, we need data credential from if we choose provider as deployment type
1085
+
1086
+ #### Digital Ocean
1087
+
1088
+ Get Images for Digital Ocean Provider
1089
+
1090
+ ```console
1091
+ $ umbreo provider:digital_ocean images --id |id_or_name_provider|
1092
+ ```
1093
+ ```console
1094
+ $ umbreo provider:digital_ocean images --id 'Foo Provider'
1095
+ ```
1096
+
1097
+ Get Flavors for Digital Ocean Provider
1098
+
1099
+ ```console
1100
+ $ umbreo provider:digital_ocean flavors --id |id_or_name_provider| --image |id_image_digital_ocean_provider|
1101
+ ```
1102
+ ```console
1103
+ $ umbreo provider:digital_ocean flavors --id 'Foo Provider' --image 18830380
1104
+ ```
1105
+
1106
+ Get Regions for Digital Ocean Provider
1107
+
1108
+ ```console
1109
+ $ umbreo provider:digital_ocean regions --id |id_or_name_provider| --image |id_image_digital_ocean_provider|
1110
+ ```
1111
+ ```console
1112
+ $ umbreo provider:digital_ocean regions --id 'Foo Provider' --image 18830380
1113
+ ```
1114
+
1115
+ Get Compute Params JSON file
1116
+
1117
+ ```console
1118
+ $ umbreo provider:digital_ocean export --id |id_or_name_provider|
1119
+ ```
1120
+ ```console
1121
+ $ umbreo provider:digital_ocean export --id 'Foo Provider'
1122
+ ```
1123
+
1124
+ Check valid Compute Params JSON file
1125
+
1126
+ ```console
1127
+ $ umbreo provider:digital_ocean valid --file |directory_of_json_file|
1128
+ ```
1129
+ ```console
1130
+ $ umbreo provider:digital_ocean valid --file digital_ocean_compute_params.json
1131
+ ```
1132
+
1133
+ #### Openstack
1134
+
1135
+ Get Zone for Openstack
1136
+
1137
+ ```console
1138
+ $ umbreo provider:openstack zones --id |id_or_name_provider|
1139
+ ```
1140
+ ```console
1141
+ $ umbreo provider:openstack zones --id 'Openstack Foo Provider'
1142
+ ```
1143
+
1144
+ Get Flavor for Openstack
1145
+
1146
+ ```console
1147
+ $ umbreo provider:openstack flavors --id |id_or_name_provider|
1148
+ ```
1149
+ ```console
1150
+ $ umbreo provider:openstack flavors --id 'Openstack Foo Provider'
1151
+ ```
1152
+
1153
+ Get Image for Openstack
1154
+
1155
+ ```console
1156
+ $ umbreo provider:openstack images --id |id_or_name_provider|
1157
+ ```
1158
+ ```console
1159
+ $ umbreo provider:openstack images --id 'Openstack Foo Provider'
1160
+ ```
1161
+
1162
+ Get Group for Openstack
1163
+
1164
+ ```console
1165
+ $ umbreo provider:openstack groups --id |id_or_name_provider|
1166
+ ```
1167
+ ```console
1168
+ $ umbreo provider:openstack groups --id 'Openstack Foo Provider'
1169
+ ```
1170
+
1171
+ Get Keypair for Openstack
1172
+
1173
+ ```console
1174
+ $ umbreo provider:openstack keypairs --id |id_or_name_provider|
1175
+ ```
1176
+ ```console
1177
+ $ umbreo provider:openstack keypairs --id 'Openstack Foo Provider'
1178
+ ```
1179
+
1180
+ Get Export for Openstack
1181
+
1182
+ ```console
1183
+ $ umbreo provider:openstack export --id |id_or_name_provider|
1184
+ ```
1185
+ ```console
1186
+ $ umbreo provider:openstack export --id 'Openstack Foo Provider'
1187
+ ```
1188
+
1189
+ Get Validate for Openstack
1190
+
1191
+ ```console
1192
+ $ umbreo provider:openstack valid --file |directory_of_json_file|
1193
+ ```
1194
+ ```console
1195
+ $ umbreo provider:openstack valid --file openstack_provider.json
1196
+ ```
1197
+
1198
+ #### Google Cloud Engine
1199
+
1200
+ Get Image for Google Compute Engine
1201
+
1202
+ ```console
1203
+ $ umbreo provider:google_ce images --id |id_or_name_provider|
1204
+ ```
1205
+ ```console
1206
+ $ umbreo provider:google_ce images --id 'GCE Foo Provider'
1207
+ ```
1208
+
1209
+ Get Region for Google Compute Engine
1210
+
1211
+ ```console
1212
+ $ umbreo provider:google_ce regions --id |id_or_name_provider|
1213
+ ```
1214
+ ```console
1215
+ $ umbreo provider:google_ce regions --id 'GCE Foo Provider'
1216
+ ```
1217
+
1218
+ Get Machine for Google Compute Engine
1219
+
1220
+ ```console
1221
+ $ umbreo provider:google_ce machines --id |id_or_name_provider|
1222
+ ```
1223
+ ```console
1224
+ $ umbreo provider:google_ce machines --id 'GCE Foo Provider'
1225
+ ```
1226
+
1227
+ Get Network for Google Compute Engine
1228
+
1229
+ ```console
1230
+ $ umbreo provider:google_ce networks --id |id_or_name_provider|
1231
+ ```
1232
+ ```console
1233
+ $ umbreo provider:google_ce networks --id 'GCE Foo Provider'
1234
+ ```
1235
+
1236
+ Get Export for Google Compute Engine
1237
+
1238
+ ```console
1239
+ $ umbreo provider:google_ce export --id |id_or_name_provider|
1240
+ ```
1241
+ ```console
1242
+ $ umbreo provider:google_ce export --id 'GCE Foo Provider'
1243
+ ```
1244
+
1245
+ Get Validate for Google Compute Engine
1246
+
1247
+ ```console
1248
+ $ umbreo provider:google_ce valid --file |directory_of_json_file|
1249
+ ```
1250
+ ```console
1251
+ $ umbreo provider:google_ce valid --file google_compute_engine_service_provider.json
1252
+ ```
1253
+
1254
+ #### Amazon Web Service
1255
+
1256
+ Get Images for AWS Provider
1257
+
1258
+ ```console
1259
+ $ umbreo provider:amazon_web_service images --id |id_or_name_provider|
1260
+ ```
1261
+ ```console
1262
+ $ umbreo provider:amazon_web_service images --id 'AWS Foo Provider'
1263
+ ```
1264
+
1265
+ Get Size Storage for AWS Provider
1266
+
1267
+ ```console
1268
+ $ umbreo provider:amazon_web_service sizes --id |id_or_name_provider|
1269
+ ```
1270
+ ```console
1271
+ $ umbreo provider:amazon_web_service sizes --id 'AWS Foo Provider'
1272
+ ```
1273
+
1274
+ Get Region for AWS Provider
1275
+
1276
+ ```console
1277
+ $ umbreo provider:amazon_web_service regions --id |id_or_name_provider|
1278
+ ```
1279
+ ```console
1280
+ $ umbreo provider:amazon_web_service regions --id 'AWS Foo Provider'
1281
+ ```
1282
+
1283
+ Get Keypair for AWS Provider
1284
+
1285
+ ```console
1286
+ $ umbreo provider:amazon_web_service keypairs --id |id_or_name_provider|
1287
+ ```
1288
+ ```console
1289
+ $ umbreo provider:amazon_web_service keypairs --id 'AWS Foo Provider'
1290
+ ```
1291
+
1292
+ Get Security Group for AWS Provider
1293
+
1294
+ ```console
1295
+ $ umbreo provider:amazon_web_service security_groups --id |id_or_name_provider|
1296
+ ```
1297
+ ```console
1298
+ $ umbreo provider:amazon_web_service security_groups --id 'AWS Foo Provider'
1299
+ ```
1300
+
1301
+ Get Compute Params JSON file
1302
+
1303
+ ```console
1304
+ $ umbreo provider:amazon_web_service export --id |id_or_name_provider|
1305
+ ```
1306
+ ```console
1307
+ $ umbreo provider:amazon_web_service export --id 'AWS Foo Provider'
1308
+ ```
1309
+
1310
+ Check valid Compute Params JSON file
1311
+
1312
+ ```console
1313
+ $ umbreo provider:amazon_web_service valid --file |directory_of_json_file|
1314
+ ```
1315
+ ```console
1316
+ $ umbreo provider:amazon_web_service valid --file amazon_web_service_compute_params.json
1317
+ ```
1318
+
1319
+ ## 12. Service Provider
1320
+
1321
+ ### List or filter
1322
+
1323
+ #### command-suite
1324
+ ```console
1325
+ $ umbreo service_provider list --type |all|logging|monitoring|backup| --resource |all|master|client| --page |number_of_page|
1326
+ ```
1327
+ ```console
1328
+ $ umbreo service_provider list --type all --resource all
1329
+ ```
1330
+
1331
+ #### command-form
1332
+ ```console
1333
+ $ umbreo service_provider list
1334
+
1335
+ 1. all
1336
+ 2. logging
1337
+ 3. monitoring
1338
+ 4. backup
1339
+ $ Please choose filter of service provider type? all
1340
+
1341
+ 1. all
1342
+ 2. master
1343
+ 3. client
1344
+ $ Please choose filter of resource? all
1345
+ ```
1346
+
1347
+ #### output
1348
+ ```console
1349
+ +----+----------------+---------------+--------------+---------------+
1350
+ | List Service Provider |
1351
+ +----+----------------+---------------+--------------+---------------+
1352
+ | ID | Name | Resource Type | Service Type | Slug |
1353
+ +----+----------------+---------------+--------------+---------------+
1354
+ | 1 | baculaserver | master | backup | baculaserver |
1355
+ | 2 | graylog2 | master | logging | graylog2 |
1356
+ | 3 | nagios::server | master | monitoring | nagios-server |
1357
+ | 4 | zabbix | master | monitoring | zabbix |
1358
+ +----+----------------+---------------+--------------+---------------+
1359
+ ```
1360
+
1361
+ ### Search
1362
+
1363
+ #### command-suite
1364
+ ```console
1365
+ $ umbreo service_provider search --keyword |search_keyword| --type |all|logging|monitoring|backup| --resource |all|master|client| --page |number_of_page|
1366
+ ```
1367
+ ```console
1368
+ $ umbreo service_provider search --keyword bacula --type all --resource all
1369
+ ```
1370
+
1371
+ #### command-form
1372
+ ```console
1373
+ $ umbreo service_provider search
1374
+
1375
+ 1. all
1376
+ 2. logging
1377
+ 3. monitoring
1378
+ 4. backup
1379
+ $ Please choose filter of service provider type? all
1380
+
1381
+ 1. all
1382
+ 2. master
1383
+ 3. client
1384
+ $ Please choose filter of resource? all
1385
+
1386
+ $ Search Keyword: bacula
1387
+ ```
1388
+
1389
+ #### output
1390
+ ```console
1391
+ +----+----------------+---------------+--------------+---------------+
1392
+ | List Service Provider |
1393
+ +----+----------------+---------------+--------------+---------------+
1394
+ | ID | Name | Resource Type | Service Type | Slug |
1395
+ +----+----------------+---------------+--------------+---------------+
1396
+ | 1 | baculaserver | master | backup | baculaserver |
1397
+ +----+----------------+---------------+--------------+---------------+
1398
+ ```
1399
+
1400
+ ### Show detail
1401
+
1402
+ #### command-suite
1403
+ ```console
1404
+ $ umbreo service_provider show --id |id_or_name|
1405
+ ```
1406
+ ```console
1407
+ $ umbreo service_provider show --id baculaserver
1408
+ ```
1409
+
1410
+ #### command-form
1411
+ ```console
1412
+ $ umbreo cloud_provider show
1413
+ $ Name or ID of Service Provider: baculaserver
1414
+ ```
1415
+
1416
+ #### output
1417
+ ```console
1418
+ ID: 1
1419
+ Name: baculaserver
1420
+ Resource type: master
1421
+ Service Type: backup
1422
+ Slug: baculaserver
1423
+ Description: bacula backup client
1424
+ ```
1425
+
1426
+ ### Export service provider json
1427
+
1428
+ #### command-suite
1429
+ ```console
1430
+ $ umbreo service_provider export --id |id_or_name|
1431
+ ```
1432
+ ```console
1433
+ $ umbreo service_provider export --id baculaserver
1434
+ ```
1435
+
1436
+ #### command-form
1437
+ ```console
1438
+ $ umbreo cloud_provider export
1439
+ $ Name or ID of Service provider: baculaserver
1440
+ ```
1441
+
1442
+ #### output
1443
+ ```console
1444
+ Success export umbreo service provider. your service provider is saved on json file with name baculaserver.json
1445
+ ```
1446
+
1447
+ ### Validate service provider json
1448
+
1449
+ #### command-suite
1450
+ ```console
1451
+ $ umbreo service_provider valid --file |directory_of_json_file|
1452
+ ```
1453
+ ```console
1454
+ $ umbreo service_provider valid --file baculaserver.json
1455
+ ```
1456
+
1457
+ #### command-form
1458
+ ```console
1459
+ $ umbreo service_provider validate
1460
+ $ Directory of Service Provider: baculaserver.json
1461
+ ```
1462
+
1463
+ #### output
1464
+ ```console
1465
+ Validate passed. You can deploy now
1466
+ ```
1467
+
1468
+ ## 13. Service
1469
+
1470
+ All command that's associated to Service
1471
+
1472
+ ### List or filter
1473
+
1474
+ #### command-suite
1475
+ ```console
1476
+ $ umbreo service list --state |all|active|nonactive| --type |optional_id_or_slug_service_provider| --page |number_of_page|
1477
+ ```
1478
+ ```console
1479
+ $ umbreo service list --state all --type baculaserver
1480
+ ```
1481
+
1482
+ #### command-form
1483
+ ```console
1484
+ $ umbreo service list
1485
+
1486
+ 1. all
1487
+ 2. active
1488
+ 3. unactive
1489
+ $ Please choose filter of state service? all
1490
+
1491
+ $ ID or Slug of Service provider: baculaserver
1492
+ ```
1493
+
1494
+ #### output
1495
+ ```console
1496
+ +----+-----------------+------------------+------------+--------+
1497
+ | List Service |
1498
+ +----+-----------------+------------------+------------+--------+
1499
+ | ID | Name | Service Provider | Link Type | Active |
1500
+ +----+-----------------+------------------+------------+--------+
1501
+ | 1 | BaculaExternal | baculaserver | external | Yes |
1502
+ | 2 | BaculaServer | baculaserver | new_server | Yes |
1503
+ | 3 | First #1 | baculaserver | external | Yes |
1504
+ +----+-----------------+------------------+------------+--------+
1505
+ ```
1506
+
1507
+ ### Search
1508
+
1509
+ #### command-suite
1510
+ ```console
1511
+ $ umbreo service search --keyword |search_keyword| --state |all|active|nonactive| --type |optional_id_or_slug_service_provider| --page |number_of_page|
1512
+ ```
1513
+ ```console
1514
+ $ umbreo service search --keyword 'BaculaExternal' --state all --type baculaserver
1515
+ ```
1516
+
1517
+ #### command-form
1518
+ ```console
1519
+ $ umbreo service search
1520
+
1521
+ 1. all
1522
+ 2. active
1523
+ 3. unactive
1524
+ $ Please choose filter of state service? 1
1525
+
1526
+ $ ID or Slug of Service provider: baculaserver
1527
+
1528
+ $ Search keyword: BaculaExternal
1529
+ ```
1530
+
1531
+ #### output
1532
+ ```console
1533
+ +----+-----------------+------------------+------------+--------+
1534
+ | List Service |
1535
+ +----+-----------------+------------------+------------+--------+
1536
+ | ID | Name | Service Provider | Link Type | Active |
1537
+ +----+-----------------+------------------+------------+--------+
1538
+ | 1 | BaculaExternal | baculaserver | external | Yes |
1539
+ +----+-----------------+------------------+------------+--------+
1540
+ ```
1541
+
1542
+ ### Show detail
1543
+
1544
+ #### command-suite
1545
+ ```console
1546
+ $ umbreo service show --id |id_or_name|
1547
+ ```
1548
+ ```console
1549
+ $ umbreo service show --id 'BaculaExternal'
1550
+ ```
1551
+
1552
+ #### command-form
1553
+ ```console
1554
+ $ umbreo service show
1555
+ $ Name or ID of Service: BaculaExternal
1556
+ ```
1557
+
1558
+ #### output
1559
+ ```console
1560
+ ID: 1
1561
+ Name: BaculaExternal
1562
+ Service Provider: baculaserver
1563
+ Link type: external
1564
+ Active: Yes
1565
+ Description: My first Bacula
1566
+ ```
1567
+
1568
+ ### Create Service
1569
+
1570
+ #### command
1571
+ ```console
1572
+ $ umbreo service create --external |optional_to_choose_external| --file |directory_of_json_file| --id |service_template_id_or_slug| --name |name_of_service| --desc |description_for_service|
1573
+ ```
1574
+ ```console
1575
+ $ umbreo service create --external --file baculaclient.json --id bacula --name 'Foo Service' --desc 'My first foo service'
1576
+ ```
1577
+
1578
+ ### Export service json
1579
+
1580
+ #### command-suite
1581
+ ```console
1582
+ $ umbreo service export --id |id_or_name|
1583
+ ```
1584
+ ```console
1585
+ $ umbreo service export --id 'BaculaExternal'
1586
+ ```
1587
+
1588
+ #### command-form
1589
+ ```console
1590
+ $ umbreo service export
1591
+ $ Name or ID of Service: BaculaExternal
1592
+ ```
1593
+
1594
+ #### output
1595
+ ```console
1596
+ Success export service. your service is saved on json file with name baculaexternal.json
1597
+ ```
1598
+
1599
+ ### Validate service json
1600
+
1601
+ #### command-suite
1602
+ ```console
1603
+ $ umbreo service valid --file |directory_of_json_file|
1604
+ ```
1605
+ ```console
1606
+ $ umbreo service valid --file baculaexternal.json
1607
+ ```
1608
+
1609
+ #### command-form
1610
+ ```console
1611
+ $ umbreo service validate
1612
+ $ Directory of Service Provider: baculaexternal.json
1613
+ ```
1614
+
1615
+ #### output
1616
+ ```console
1617
+ Validate passed. You can deploy now
1618
+ ```
1619
+
1620
+ # Help Command To Get Started
1621
+ ### For some reason you might be confuse to get started with CLI, you can simply run this command to get help
1622
+ ```console
1623
+ umbreo help
1624
+ ```
1625
+