c66 0.1.0 → 0.1.5
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of c66 might be problematic. Click here for more details.
- data/.gitignore +1 -0
- data/lib/c66/commands/c66_toolbelt.rb +52 -32
- data/lib/c66/utils/version.rb +1 -1
- metadata +107 -61
- /data/bin/{c66.rb → c66} +0 -0
data/.gitignore
CHANGED
@@ -88,7 +88,7 @@ module C66
|
|
88
88
|
|
89
89
|
def save_config
|
90
90
|
if !File.directory?(c66_path)
|
91
|
-
Dir.
|
91
|
+
Dir.mkdir(c66_path)
|
92
92
|
end
|
93
93
|
|
94
94
|
File.open(config_file,"w") do |f|
|
@@ -96,30 +96,19 @@ module C66
|
|
96
96
|
end
|
97
97
|
end
|
98
98
|
|
99
|
-
def save_stack(stack_id)
|
100
|
-
if !File.directory?(stack_path)
|
101
|
-
Dir.mkdir(stack_path)
|
102
|
-
end
|
103
|
-
@stack_json = { :stack_id => stack_id}
|
104
|
-
File.open(stack_file,"w") do |f|
|
105
|
-
f.write(@stack_json.to_json)
|
106
|
-
end
|
107
|
-
@stack = stack_id
|
108
|
-
say "Stack #{stack_id} saved to #{stack_file}"
|
109
|
-
end
|
110
|
-
|
111
99
|
def load_stack
|
112
100
|
if File.exists?(stack_file)
|
113
101
|
if @stack = JSON.load(IO.read(stack_file))['stack_id']
|
114
102
|
say "Stack #{@stack} loaded."
|
115
|
-
else
|
116
|
-
abort "No stack id found at #{stack_file}"
|
117
103
|
end
|
118
|
-
else
|
119
|
-
say("No stack saved at #{stack_file}.")
|
120
104
|
end
|
121
105
|
end
|
122
106
|
|
107
|
+
def abort_no_stack
|
108
|
+
abort "No stack provided or saved, please use '--stack' or '-s' option. "\
|
109
|
+
"You can also use the 'save' method with '--stack' or '-s' option."
|
110
|
+
end
|
111
|
+
|
123
112
|
def load_params
|
124
113
|
if File.exists?(params_file) && File.size(params_file)!=0
|
125
114
|
begin
|
@@ -147,7 +136,7 @@ module C66
|
|
147
136
|
end
|
148
137
|
|
149
138
|
def get_stack(stack)
|
150
|
-
|
139
|
+
@stack=stack
|
151
140
|
load_stack if stack.nil?
|
152
141
|
end
|
153
142
|
|
@@ -173,6 +162,18 @@ module C66
|
|
173
162
|
end
|
174
163
|
end
|
175
164
|
|
165
|
+
def error_message(error)
|
166
|
+
begin
|
167
|
+
if (error.response.parsed.has_key? 'details')
|
168
|
+
puts error.response.parsed['details']
|
169
|
+
else
|
170
|
+
puts error.response.parsed['error_description']
|
171
|
+
end
|
172
|
+
rescue => e
|
173
|
+
abort e.message
|
174
|
+
end
|
175
|
+
end
|
176
|
+
|
176
177
|
def self.get_version
|
177
178
|
begin
|
178
179
|
JSON.load(HTTParty.get(VERSION_FILE)).fetch("version")
|
@@ -190,7 +191,7 @@ module C66
|
|
190
191
|
when -1
|
191
192
|
puts "There is a new version of Cloud66 Toolbelt. Pease run \"gem update #{CLIENT_NAME}\"."
|
192
193
|
end
|
193
|
-
end
|
194
|
+
end
|
194
195
|
}
|
195
196
|
|
196
197
|
package_name "Cloud 66 Toolbelt"
|
@@ -226,14 +227,18 @@ module C66
|
|
226
227
|
|
227
228
|
desc "list", "Lists all the stacks"
|
228
229
|
def list
|
229
|
-
|
230
|
+
begin
|
231
|
+
response = parse_response(token.get("#{base_url}/stacks.json"))
|
230
232
|
|
231
|
-
|
232
|
-
|
233
|
-
|
233
|
+
if response['count'] != 0
|
234
|
+
response['response'].each do |stack|
|
235
|
+
say "#{stack['name']} (#{stack['uid']}) : #{stack['environment']} - #{STATUS[stack['status']]}"
|
236
|
+
end
|
237
|
+
else
|
238
|
+
say "No stacks found"
|
234
239
|
end
|
235
|
-
|
236
|
-
|
240
|
+
rescue OAuth2::Error => e
|
241
|
+
error_message(e)
|
237
242
|
end
|
238
243
|
end
|
239
244
|
|
@@ -242,7 +247,7 @@ module C66
|
|
242
247
|
def settings()
|
243
248
|
begin
|
244
249
|
get_stack(options[:stack])
|
245
|
-
|
250
|
+
abort_no_stack if @stack.nil?
|
246
251
|
response = token.get("#{base_url}/stacks/#{@stack}/settings.json")
|
247
252
|
settings = JSON.parse(response.body)['response']
|
248
253
|
|
@@ -252,7 +257,7 @@ module C66
|
|
252
257
|
say "#{setting['key']}\t\t#{setting['value']}\t#{setting['readonly'] ? '(readonly)' : ''}\r\n"
|
253
258
|
end
|
254
259
|
rescue OAuth2::Error => e
|
255
|
-
|
260
|
+
error_message(e)
|
256
261
|
end
|
257
262
|
end
|
258
263
|
|
@@ -263,11 +268,11 @@ module C66
|
|
263
268
|
def set()
|
264
269
|
begin
|
265
270
|
get_stack(options[:stack])
|
266
|
-
|
271
|
+
abort_no_stack if @stack.nil?
|
267
272
|
response = token.post("#{base_url}/stacks/#{@stack}/setting.json", { :body => { :setting_name => options[:setting_name], :setting_value => options[:value] }})
|
268
|
-
say "Setting applied" if JSON.parse(response.body)['response']['ok']
|
273
|
+
say "Setting applied: '#{options[:value]}' to '#{options[:setting_name]}'" if JSON.parse(response.body)['response']['ok']
|
269
274
|
rescue OAuth2::Error => e
|
270
|
-
|
275
|
+
error_message(e)
|
271
276
|
end
|
272
277
|
end
|
273
278
|
|
@@ -276,12 +281,27 @@ module C66
|
|
276
281
|
def deploy()
|
277
282
|
begin
|
278
283
|
get_stack(options[:stack])
|
279
|
-
|
284
|
+
abort_no_stack if @stack.nil?
|
280
285
|
response = token.post("#{base_url}/stacks/#{@stack}/redeploy.json", {})
|
281
286
|
say JSON.parse(response.body)['response']['message']
|
282
287
|
rescue OAuth2::Error => e
|
283
|
-
|
288
|
+
error_message(e)
|
289
|
+
end
|
290
|
+
end
|
291
|
+
|
292
|
+
desc "save", "Save the given stack to simplify following commands"
|
293
|
+
option :stack, :aliases => "-s", :required => true
|
294
|
+
def save()
|
295
|
+
if !File.directory?(stack_path)
|
296
|
+
Dir.mkdir(stack_path)
|
297
|
+
end
|
298
|
+
@stack_json = { :stack_id => options[:stack]}
|
299
|
+
File.open(stack_file,"w") do |f|
|
300
|
+
f.write(@stack_json.to_json)
|
284
301
|
end
|
302
|
+
@stack = options[:stack]
|
303
|
+
say "Linked stack #{options[:stack]} to #{stack_file}. "\
|
304
|
+
"You are now able to use other commands without specify the stack UID."
|
285
305
|
end
|
286
306
|
end
|
287
307
|
end
|
data/lib/c66/utils/version.rb
CHANGED
metadata
CHANGED
@@ -1,123 +1,169 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: c66
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
hash: 17
|
5
5
|
prerelease:
|
6
|
+
segments:
|
7
|
+
- 0
|
8
|
+
- 1
|
9
|
+
- 5
|
10
|
+
version: 0.1.5
|
6
11
|
platform: ruby
|
7
|
-
authors:
|
12
|
+
authors:
|
8
13
|
- Cloud 66
|
9
14
|
autorequire:
|
10
15
|
bindir: bin
|
11
16
|
cert_chain: []
|
12
|
-
|
13
|
-
|
14
|
-
|
17
|
+
|
18
|
+
date: 2013-07-12 00:00:00 Z
|
19
|
+
dependencies:
|
20
|
+
- !ruby/object:Gem::Dependency
|
15
21
|
name: bundler
|
16
|
-
|
22
|
+
prerelease: false
|
23
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
17
24
|
none: false
|
18
|
-
requirements:
|
25
|
+
requirements:
|
19
26
|
- - ~>
|
20
|
-
- !ruby/object:Gem::Version
|
21
|
-
|
27
|
+
- !ruby/object:Gem::Version
|
28
|
+
hash: 9
|
29
|
+
segments:
|
30
|
+
- 1
|
31
|
+
- 3
|
32
|
+
version: "1.3"
|
22
33
|
type: :runtime
|
23
|
-
|
24
|
-
|
25
|
-
- !ruby/object:Gem::Dependency
|
34
|
+
version_requirements: *id001
|
35
|
+
- !ruby/object:Gem::Dependency
|
26
36
|
name: rake
|
27
|
-
|
37
|
+
prerelease: false
|
38
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
28
39
|
none: false
|
29
|
-
requirements:
|
40
|
+
requirements:
|
30
41
|
- - ~>
|
31
|
-
- !ruby/object:Gem::Version
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
hash: 75
|
44
|
+
segments:
|
45
|
+
- 10
|
46
|
+
- 1
|
47
|
+
- 0
|
32
48
|
version: 10.1.0
|
33
49
|
type: :runtime
|
34
|
-
|
35
|
-
|
36
|
-
- !ruby/object:Gem::Dependency
|
50
|
+
version_requirements: *id002
|
51
|
+
- !ruby/object:Gem::Dependency
|
37
52
|
name: thor
|
38
|
-
|
53
|
+
prerelease: false
|
54
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
39
55
|
none: false
|
40
|
-
requirements:
|
56
|
+
requirements:
|
41
57
|
- - ~>
|
42
|
-
- !ruby/object:Gem::Version
|
58
|
+
- !ruby/object:Gem::Version
|
59
|
+
hash: 85
|
60
|
+
segments:
|
61
|
+
- 0
|
62
|
+
- 18
|
63
|
+
- 1
|
43
64
|
version: 0.18.1
|
44
65
|
type: :runtime
|
45
|
-
|
46
|
-
|
47
|
-
- !ruby/object:Gem::Dependency
|
66
|
+
version_requirements: *id003
|
67
|
+
- !ruby/object:Gem::Dependency
|
48
68
|
name: oauth2
|
49
|
-
|
69
|
+
prerelease: false
|
70
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
50
71
|
none: false
|
51
|
-
requirements:
|
72
|
+
requirements:
|
52
73
|
- - ~>
|
53
|
-
- !ruby/object:Gem::Version
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
hash: 63
|
76
|
+
segments:
|
77
|
+
- 0
|
78
|
+
- 9
|
79
|
+
- 2
|
54
80
|
version: 0.9.2
|
55
81
|
type: :runtime
|
56
|
-
|
57
|
-
|
58
|
-
- !ruby/object:Gem::Dependency
|
82
|
+
version_requirements: *id004
|
83
|
+
- !ruby/object:Gem::Dependency
|
59
84
|
name: json
|
60
|
-
|
85
|
+
prerelease: false
|
86
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
61
87
|
none: false
|
62
|
-
requirements:
|
88
|
+
requirements:
|
63
89
|
- - ~>
|
64
|
-
- !ruby/object:Gem::Version
|
90
|
+
- !ruby/object:Gem::Version
|
91
|
+
hash: 5
|
92
|
+
segments:
|
93
|
+
- 1
|
94
|
+
- 7
|
95
|
+
- 7
|
65
96
|
version: 1.7.7
|
66
97
|
type: :runtime
|
67
|
-
|
68
|
-
|
69
|
-
- !ruby/object:Gem::Dependency
|
98
|
+
version_requirements: *id005
|
99
|
+
- !ruby/object:Gem::Dependency
|
70
100
|
name: httparty
|
71
|
-
|
101
|
+
prerelease: false
|
102
|
+
requirement: &id006 !ruby/object:Gem::Requirement
|
72
103
|
none: false
|
73
|
-
requirements:
|
104
|
+
requirements:
|
74
105
|
- - ~>
|
75
|
-
- !ruby/object:Gem::Version
|
106
|
+
- !ruby/object:Gem::Version
|
107
|
+
hash: 51
|
108
|
+
segments:
|
109
|
+
- 0
|
110
|
+
- 11
|
111
|
+
- 0
|
76
112
|
version: 0.11.0
|
77
113
|
type: :runtime
|
78
|
-
|
79
|
-
version_requirements: *70093107962820
|
114
|
+
version_requirements: *id006
|
80
115
|
description: See https://www.cloud66.com for more info
|
81
|
-
email:
|
116
|
+
email:
|
82
117
|
- hello@cloud66.com
|
83
|
-
executables:
|
84
|
-
- c66
|
118
|
+
executables:
|
119
|
+
- c66
|
85
120
|
extensions: []
|
121
|
+
|
86
122
|
extra_rdoc_files: []
|
87
|
-
|
123
|
+
|
124
|
+
files:
|
88
125
|
- .gitignore
|
89
126
|
- Gemfile
|
90
127
|
- LICENSE.txt
|
91
128
|
- README.md
|
92
129
|
- Rakefile
|
93
|
-
- bin/c66
|
130
|
+
- bin/c66
|
94
131
|
- c66.gemspec
|
95
132
|
- lib/c66.rb
|
96
133
|
- lib/c66/commands/c66_toolbelt.rb
|
97
134
|
- lib/c66/utils/version.rb
|
98
135
|
homepage: https://www.cloud66.com
|
99
|
-
licenses:
|
136
|
+
licenses:
|
100
137
|
- MIT
|
101
138
|
post_install_message:
|
102
139
|
rdoc_options: []
|
103
|
-
|
140
|
+
|
141
|
+
require_paths:
|
104
142
|
- lib
|
105
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
143
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
106
144
|
none: false
|
107
|
-
requirements:
|
108
|
-
- -
|
109
|
-
- !ruby/object:Gem::Version
|
110
|
-
|
111
|
-
|
145
|
+
requirements:
|
146
|
+
- - ">="
|
147
|
+
- !ruby/object:Gem::Version
|
148
|
+
hash: 3
|
149
|
+
segments:
|
150
|
+
- 0
|
151
|
+
version: "0"
|
152
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
112
153
|
none: false
|
113
|
-
requirements:
|
114
|
-
- -
|
115
|
-
- !ruby/object:Gem::Version
|
116
|
-
|
154
|
+
requirements:
|
155
|
+
- - ">="
|
156
|
+
- !ruby/object:Gem::Version
|
157
|
+
hash: 3
|
158
|
+
segments:
|
159
|
+
- 0
|
160
|
+
version: "0"
|
117
161
|
requirements: []
|
162
|
+
|
118
163
|
rubyforge_project:
|
119
|
-
rubygems_version: 1.8.
|
164
|
+
rubygems_version: 1.8.12
|
120
165
|
signing_key:
|
121
166
|
specification_version: 3
|
122
167
|
summary: Cloud 66 Toolbelt
|
123
168
|
test_files: []
|
169
|
+
|
/data/bin/{c66.rb → c66}
RENAMED
File without changes
|