nex_client 0.11.0 → 0.12.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +5 -0
- data/lib/nex_client/cli.rb +6 -1
- data/lib/nex_client/commands/apps.rb +9 -2
- data/lib/nex_client/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 15ebf0a5c81f16a7120e2b3c916c72b1ce6ed859
|
4
|
+
data.tar.gz: 1163c034dec77183d99efddb20d2d40d2c2941dc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b1125e3402abca995c63030136e73779489f09c71ccb1bd7f9409a9938c1fbe0f979b8bdde12b23fb30d87f0dbcc1da942ddc84822b6d8e24543e86bd240726a
|
7
|
+
data.tar.gz: 41e4b4c6b438b2870a2eb7ad1ab0876afb63d5437ff6c74c9aefc1e249347fec49f3c8eb20b827a5b5cb245e3a5adf483145d53fcfe153c16a1d42e06283709d
|
data/README.md
CHANGED
@@ -15,6 +15,11 @@ You can install the gem by running:
|
|
15
15
|
gem install nex_client
|
16
16
|
```
|
17
17
|
|
18
|
+
or update an existing version by running
|
19
|
+
```bash
|
20
|
+
gem update nex_client
|
21
|
+
```
|
22
|
+
|
18
23
|
## Getting started with the cli
|
19
24
|
|
20
25
|
Configure your environment and get started with the tool
|
data/lib/nex_client/cli.rb
CHANGED
@@ -106,13 +106,14 @@ module NexClient
|
|
106
106
|
c.example 'list all active apps for owner myorg', 'nex-cli apps --owner myorg'
|
107
107
|
c.example 'list all my terminated apps', 'nex-cli apps --status terminated'
|
108
108
|
c.example 'list all terminated apps for owner myorg', 'nex-cli apps --status terminated --owner myorg'
|
109
|
+
c.example 'list all apps tagged ruby and rails', 'nex-cli apps --tags ruby,rails'
|
109
110
|
c.option '--all', 'list all apps (no filtering)'
|
110
111
|
c.option '--status <active|terminated>', String, 'list all apps in a given status'
|
111
112
|
c.option '--ssl', 'list all apps with SSL enabled'
|
112
113
|
c.option '--storage', 'list all apps with persistent storage'
|
113
114
|
c.option '--owner HANDLE', 'list all apps for the specified owner'
|
114
115
|
c.option '--image IMAGE', 'list the app with this image'
|
115
|
-
|
116
|
+
c.option '--tags TAG_LIST', Array, 'comma separated list of tags to filter on'
|
116
117
|
c.action do |args, options|
|
117
118
|
NexClient::Commands::Apps.list(args,options)
|
118
119
|
end
|
@@ -130,6 +131,8 @@ module NexClient
|
|
130
131
|
c.option '--size SIZE', Integer, 'specify container size (default: 2, min: 1, max: 20). Container will have N shares of CPU and N*128M of memory.'
|
131
132
|
c.option '--storage', 'enable persistent storage (/!\ only one node allowed)'
|
132
133
|
c.option '--owner ORGANIZATION_HANDLE', 'specify an organisation as owner (organization admin only)'
|
134
|
+
c.option '--desc DESCRIPTION', String, 'description for this application (140 characters max)'
|
135
|
+
c.option '--tags TAG_LIST', Array, 'comma separated list of tags describing this app'
|
133
136
|
c.action do |args, options|
|
134
137
|
NexClient::Commands::Apps.create(args,options)
|
135
138
|
end
|
@@ -240,6 +243,8 @@ module NexClient
|
|
240
243
|
c.description = 'Update application settings'
|
241
244
|
c.example 'change container size to 4', 'nex-cli apps:update myapp --size 4'
|
242
245
|
c.option '--size SIZE', Integer, 'change container size (default: 2, min: 1, max: 20). Container will have N shares of CPU and N*128M of memory.'
|
246
|
+
c.option '--desc DESCRIPTION', String, 'update the application description'
|
247
|
+
c.option '--tags TAG_LIST', String, 'comma separated list of tags to use to describe the app'
|
243
248
|
c.action do |args, options|
|
244
249
|
NexClient::Commands::Apps.update(args,options)
|
245
250
|
end
|
@@ -8,7 +8,7 @@ module NexClient
|
|
8
8
|
|
9
9
|
SCALING_DIRECTIONS = [:up,:down]
|
10
10
|
APPS_TITLE = "App Details".colorize(:green)
|
11
|
-
APPS_HEADERS = ['name','status','image','ssl','storage','preferred region','size','nodes','owner'].map(&:upcase)
|
11
|
+
APPS_HEADERS = ['name','status','image','ssl','storage','preferred region','size','nodes','owner','description','tags'].map(&:upcase)
|
12
12
|
|
13
13
|
VARS_TITLE = "Environment Variables".colorize(:blue)
|
14
14
|
VARS_HEADERS = ['key','value'].map(&:upcase)
|
@@ -23,6 +23,7 @@ module NexClient
|
|
23
23
|
filters[:persistent_storage] = opts.storage if opts.storage.present?
|
24
24
|
filters[:'owner.handle'] = opts.owner || '@self'
|
25
25
|
filters[:image] = opts.image if opts.image.present?
|
26
|
+
filters[:tags] = opts.tags if opts.tags.present?
|
26
27
|
|
27
28
|
# All option
|
28
29
|
filters = {} if opts.all
|
@@ -103,6 +104,8 @@ module NexClient
|
|
103
104
|
attrs[:ssl_enabled] = !opts.no_ssl if opts.no_ssl.present?
|
104
105
|
attrs[:persistent_storage] = opts.storage if opts.storage.present?
|
105
106
|
attrs[:container_size] = opts.size if opts.size.present?
|
107
|
+
attrs[:description] = opts.desc if opts.desc.present?
|
108
|
+
attrs[:tag_list] = opts.tags if opts.tags.present?
|
106
109
|
|
107
110
|
# Env variables via command line
|
108
111
|
if opts.env.present?
|
@@ -160,6 +163,8 @@ module NexClient
|
|
160
163
|
# Attributes
|
161
164
|
attrs = {}
|
162
165
|
attrs[:container_size] = opts.size if opts.size.present?
|
166
|
+
attrs[:description] = opts.desc if opts.desc.present?
|
167
|
+
attrs[:tag_list] = opts.tags if opts.tags.present?
|
163
168
|
|
164
169
|
# Update
|
165
170
|
e.update_attributes(attrs)
|
@@ -395,7 +400,9 @@ module NexClient
|
|
395
400
|
record.preferred_region,
|
396
401
|
record.container_size,
|
397
402
|
node_count,
|
398
|
-
owner
|
403
|
+
owner,
|
404
|
+
record.description,
|
405
|
+
(record.tag_list || []).join(',')
|
399
406
|
]
|
400
407
|
end
|
401
408
|
|
data/lib/nex_client/version.rb
CHANGED