shelly 0.1.8 → 0.1.9

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.
@@ -84,7 +84,7 @@ module Shelly
84
84
  ask_to_restore_database
85
85
  app.restore_backup(filename)
86
86
  say_new_line
87
- say "Restore has been scheduled. Wait a few minutes till database is restored."
87
+ say "Restore has been scheduled. Wait a few minutes till database is restored.", :green
88
88
  rescue Client::NotFoundException => e
89
89
  case e.resource
90
90
  when :cloud
@@ -53,7 +53,7 @@ module Shelly
53
53
  when :cloud
54
54
  say_error "You have no access to '#{app.code_name}' cloud defined in Cloudfile"
55
55
  when :log
56
- say_error "Log not found, list all deploy logs using `shelly deploys list --cloud=#{app.code_name}`"
56
+ say_error "Log not found, list all deploy logs using `shelly deploys list --cloud=#{app.code_name}`"
57
57
  else raise
58
58
  end
59
59
  end
@@ -62,7 +62,7 @@ module Shelly
62
62
  def specify_log(log)
63
63
  unless log
64
64
  say_error "Specify log by passing date value or to see last log use:", :with_exit => false
65
- say " shelly deploys show last"
65
+ say "`shelly deploys show last`"
66
66
  exit 1
67
67
  end
68
68
  end
@@ -39,8 +39,8 @@ module Shelly
39
39
  say_error "No such file or directory - #{user.ssh_key_path}", :with_exit => false
40
40
  say_error "Use ssh-keygen to generate ssh key pair, after that use: `shelly login`", :with_exit => false
41
41
  end
42
- say "Successfully registered!"
43
- say "Check you mailbox for email address confirmation"
42
+ say "Successfully registered!", :green
43
+ say "Check you mailbox for email address confirmation", :green
44
44
  rescue Client::ValidationException => e
45
45
  e.each_error { |error| say_error "#{error}", :with_exit => false }
46
46
  exit 1
@@ -53,7 +53,7 @@ module Shelly
53
53
  user.email = email || ask_for_email
54
54
  user.password = ask_for_password(:with_confirmation => false)
55
55
  user.login
56
- say "Login successful"
56
+ say "Login successful", :green
57
57
  user.upload_ssh_key
58
58
  say "Uploading your public SSH key"
59
59
  list
@@ -183,7 +183,7 @@ module Shelly
183
183
  when "no_code"
184
184
  say_error "Not starting: no source code provided", :with_exit => false
185
185
  say_error "Push source code using:", :with_exit => false
186
- say " git push #{app} master"
186
+ say "`git push #{app} master`"
187
187
  when "deploy_failed", "configuration_failed"
188
188
  say_error "Not starting: deployment failed", :with_exit => false
189
189
  say_error "Support has been notified", :with_exit => false
@@ -1,3 +1,3 @@
1
1
  module Shelly
2
- VERSION = "0.1.8"
2
+ VERSION = "0.1.9"
3
3
  end
data/lib/thor/thor.rb CHANGED
@@ -32,7 +32,7 @@ class Thor
32
32
  # We overwrite this method so namespace is show
33
33
  # shelly *backup* restore FILENAME
34
34
  def handle_argument_error(task, error)
35
- raise InvocationError, "#{task.name.inspect} was called incorrectly. Call as #{self.banner(task, nil, self != 'Shelly::CLI::Main').inspect}."
35
+ raise InvocationError, "#{task.name.inspect} was called incorrectly. Call as #{self.banner(task, nil, self.to_s != 'Shelly::CLI::Main').inspect}."
36
36
  end
37
37
  end
38
38
  end
@@ -186,7 +186,7 @@ describe Shelly::CLI::Backup do
186
186
  $stdout.should_receive(:puts).with("\n")
187
187
  @client.stub(:restore_backup).with("todo-list-test","better.tar.gz")
188
188
  $stdout.should_receive(:puts).with("\n")
189
- $stdout.should_receive(:puts).with("Restore has been scheduled. Wait a few minutes till database is restored.")
189
+ $stdout.should_receive(:puts).with(green "Restore has been scheduled. Wait a few minutes till database is restored.")
190
190
 
191
191
  fake_stdin(["yes"]) do
192
192
  invoke(@backup, :restore, "better.tar.gz")
@@ -82,7 +82,7 @@ describe Shelly::CLI::Deploys do
82
82
  it "should exit 1 with message" do
83
83
  exception = Shelly::Client::NotFoundException.new("resource" => "log")
84
84
  @client.stub(:deploy_log).and_raise(exception)
85
- $stdout.should_receive(:puts).with(red "Log not found, list all deploy logs using `shelly deploys list --cloud=foo-staging`")
85
+ $stdout.should_receive(:puts).with(red "Log not found, list all deploy logs using `shelly deploys list --cloud=foo-staging`")
86
86
  lambda { @deploys.show("last") }.should raise_error(SystemExit)
87
87
  end
88
88
  end
@@ -156,8 +156,8 @@ OUT
156
156
  context "on successful registration" do
157
157
  it "should display message about registration and email address confirmation" do
158
158
  @client.stub(:register_user).and_return(true)
159
- $stdout.should_receive(:puts).with("Successfully registered!")
160
- $stdout.should_receive(:puts).with("Check you mailbox for email address confirmation")
159
+ $stdout.should_receive(:puts).with(green "Successfully registered!")
160
+ $stdout.should_receive(:puts).with(green "Check you mailbox for email address confirmation")
161
161
  fake_stdin(["kate@example.com", "pass", "pass", "yes"]) do
162
162
  invoke(@main, :register)
163
163
  end
@@ -211,14 +211,14 @@ OUT
211
211
 
212
212
  context "on successful login" do
213
213
  it "should display message about successful login" do
214
- $stdout.should_receive(:puts).with("Login successful")
214
+ $stdout.should_receive(:puts).with(green "Login successful")
215
215
  fake_stdin(["megan@example.com", "secret"]) do
216
216
  invoke(@main, :login)
217
217
  end
218
218
  end
219
219
 
220
220
  it "should accept email as parameter" do
221
- $stdout.should_receive(:puts).with("Login successful")
221
+ $stdout.should_receive(:puts).with(green "Login successful")
222
222
  fake_stdin(["secret"]) do
223
223
  invoke(@main, :login, "megan@example.com")
224
224
  end
@@ -640,7 +640,7 @@ OUT
640
640
  raise_conflict("state" => "no_code")
641
641
  $stdout.should_receive(:puts).with(red "Not starting: no source code provided")
642
642
  $stdout.should_receive(:puts).with(red "Push source code using:")
643
- $stdout.should_receive(:puts).with(" git push foo-production master")
643
+ $stdout.should_receive(:puts).with("`git push foo-production master`")
644
644
  lambda { invoke(@main, :start) }.should raise_error(SystemExit)
645
645
  end
646
646
 
metadata CHANGED
@@ -1,234 +1,280 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: shelly
3
- version: !ruby/object:Gem::Version
4
- hash: 11
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.9
5
5
  prerelease:
6
- segments:
7
- - 0
8
- - 1
9
- - 8
10
- version: 0.1.8
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Shelly Cloud team
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2012-05-29 00:00:00 Z
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
21
- version_requirements: &id001 !ruby/object:Gem::Requirement
12
+ date: 2012-06-04 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: rspec
16
+ requirement: !ruby/object:Gem::Requirement
22
17
  none: false
23
- requirements:
18
+ requirements:
24
19
  - - ~>
25
- - !ruby/object:Gem::Version
26
- hash: 47
27
- segments:
28
- - 2
29
- - 8
30
- - 0
20
+ - !ruby/object:Gem::Version
31
21
  version: 2.8.0
32
- requirement: *id001
22
+ type: :development
33
23
  prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ version: 2.8.0
30
+ - !ruby/object:Gem::Dependency
31
+ name: rake
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
34
38
  type: :development
35
- name: rspec
36
- - !ruby/object:Gem::Dependency
37
- version_requirements: &id002 !ruby/object:Gem::Requirement
38
- none: false
39
- requirements:
40
- - - ">="
41
- - !ruby/object:Gem::Version
42
- hash: 3
43
- segments:
44
- - 0
45
- version: "0"
46
- requirement: *id002
47
39
  prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
46
+ - !ruby/object:Gem::Dependency
47
+ name: guard
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
48
54
  type: :development
49
- name: rake
50
- - !ruby/object:Gem::Dependency
51
- version_requirements: &id003 !ruby/object:Gem::Requirement
52
- none: false
53
- requirements:
54
- - - ">="
55
- - !ruby/object:Gem::Version
56
- hash: 3
57
- segments:
58
- - 0
59
- version: "0"
60
- requirement: *id003
61
55
  prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ - !ruby/object:Gem::Dependency
63
+ name: guard-rspec
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ! '>='
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
62
70
  type: :development
63
- name: guard
64
- - !ruby/object:Gem::Dependency
65
- version_requirements: &id004 !ruby/object:Gem::Requirement
66
- none: false
67
- requirements:
68
- - - ">="
69
- - !ruby/object:Gem::Version
70
- hash: 3
71
- segments:
72
- - 0
73
- version: "0"
74
- requirement: *id004
75
71
  prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
78
+ - !ruby/object:Gem::Dependency
79
+ name: simplecov
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ! '>='
84
+ - !ruby/object:Gem::Version
85
+ version: '0'
76
86
  type: :development
77
- name: guard-rspec
78
- - !ruby/object:Gem::Dependency
79
- version_requirements: &id005 !ruby/object:Gem::Requirement
80
- none: false
81
- requirements:
82
- - - ">="
83
- - !ruby/object:Gem::Version
84
- hash: 3
85
- segments:
86
- - 0
87
- version: "0"
88
- requirement: *id005
89
87
  prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
94
+ - !ruby/object:Gem::Dependency
95
+ name: ruby_gntp
96
+ requirement: !ruby/object:Gem::Requirement
97
+ none: false
98
+ requirements:
99
+ - - ! '>='
100
+ - !ruby/object:Gem::Version
101
+ version: '0'
90
102
  type: :development
91
- name: simplecov
92
- - !ruby/object:Gem::Dependency
93
- version_requirements: &id006 !ruby/object:Gem::Requirement
94
- none: false
95
- requirements:
96
- - - ">="
97
- - !ruby/object:Gem::Version
98
- hash: 3
99
- segments:
100
- - 0
101
- version: "0"
102
- requirement: *id006
103
103
  prerelease: false
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
110
+ - !ruby/object:Gem::Dependency
111
+ name: rb-fsevent
112
+ requirement: !ruby/object:Gem::Requirement
113
+ none: false
114
+ requirements:
115
+ - - ! '>='
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
104
118
  type: :development
105
- name: fakefs
106
- - !ruby/object:Gem::Dependency
107
- version_requirements: &id007 !ruby/object:Gem::Requirement
108
- none: false
109
- requirements:
110
- - - ">="
111
- - !ruby/object:Gem::Version
112
- hash: 3
113
- segments:
114
- - 0
115
- version: "0"
116
- requirement: *id007
117
119
  prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ! '>='
124
+ - !ruby/object:Gem::Version
125
+ version: '0'
126
+ - !ruby/object:Gem::Dependency
127
+ name: fakefs
128
+ requirement: !ruby/object:Gem::Requirement
129
+ none: false
130
+ requirements:
131
+ - - ! '>='
132
+ - !ruby/object:Gem::Version
133
+ version: '0'
118
134
  type: :development
135
+ prerelease: false
136
+ version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
138
+ requirements:
139
+ - - ! '>='
140
+ - !ruby/object:Gem::Version
141
+ version: '0'
142
+ - !ruby/object:Gem::Dependency
119
143
  name: fakeweb
120
- - !ruby/object:Gem::Dependency
121
- version_requirements: &id008 !ruby/object:Gem::Requirement
144
+ requirement: !ruby/object:Gem::Requirement
145
+ none: false
146
+ requirements:
147
+ - - ! '>='
148
+ - !ruby/object:Gem::Version
149
+ version: '0'
150
+ type: :development
151
+ prerelease: false
152
+ version_requirements: !ruby/object:Gem::Requirement
153
+ none: false
154
+ requirements:
155
+ - - ! '>='
156
+ - !ruby/object:Gem::Version
157
+ version: '0'
158
+ - !ruby/object:Gem::Dependency
159
+ name: wijet-thor
160
+ requirement: !ruby/object:Gem::Requirement
122
161
  none: false
123
- requirements:
162
+ requirements:
124
163
  - - ~>
125
- - !ruby/object:Gem::Version
126
- hash: 41
127
- segments:
128
- - 0
129
- - 14
130
- - 7
164
+ - !ruby/object:Gem::Version
131
165
  version: 0.14.7
132
- requirement: *id008
133
- prerelease: false
134
166
  type: :runtime
135
- name: wijet-thor
136
- - !ruby/object:Gem::Dependency
137
- version_requirements: &id009 !ruby/object:Gem::Requirement
138
- none: false
139
- requirements:
140
- - - ">="
141
- - !ruby/object:Gem::Version
142
- hash: 3
143
- segments:
144
- - 0
145
- version: "0"
146
- requirement: *id009
147
167
  prerelease: false
148
- type: :runtime
168
+ version_requirements: !ruby/object:Gem::Requirement
169
+ none: false
170
+ requirements:
171
+ - - ~>
172
+ - !ruby/object:Gem::Version
173
+ version: 0.14.7
174
+ - !ruby/object:Gem::Dependency
149
175
  name: rest-client
150
- - !ruby/object:Gem::Dependency
151
- version_requirements: &id010 !ruby/object:Gem::Requirement
152
- none: false
153
- requirements:
154
- - - ">="
155
- - !ruby/object:Gem::Version
156
- hash: 3
157
- segments:
158
- - 0
159
- version: "0"
160
- requirement: *id010
161
- prerelease: false
176
+ requirement: !ruby/object:Gem::Requirement
177
+ none: false
178
+ requirements:
179
+ - - ! '>='
180
+ - !ruby/object:Gem::Version
181
+ version: '0'
162
182
  type: :runtime
163
- name: json
164
- - !ruby/object:Gem::Dependency
165
- version_requirements: &id011 !ruby/object:Gem::Requirement
166
- none: false
167
- requirements:
168
- - - ">="
169
- - !ruby/object:Gem::Version
170
- hash: 3
171
- segments:
172
- - 0
173
- version: "0"
174
- requirement: *id011
175
183
  prerelease: false
184
+ version_requirements: !ruby/object:Gem::Requirement
185
+ none: false
186
+ requirements:
187
+ - - ! '>='
188
+ - !ruby/object:Gem::Version
189
+ version: '0'
190
+ - !ruby/object:Gem::Dependency
191
+ name: json
192
+ requirement: !ruby/object:Gem::Requirement
193
+ none: false
194
+ requirements:
195
+ - - ! '>='
196
+ - !ruby/object:Gem::Version
197
+ version: '0'
176
198
  type: :runtime
177
- name: progressbar
178
- - !ruby/object:Gem::Dependency
179
- version_requirements: &id012 !ruby/object:Gem::Requirement
180
- none: false
181
- requirements:
182
- - - ">="
183
- - !ruby/object:Gem::Version
184
- hash: 3
185
- segments:
186
- - 0
187
- version: "0"
188
- requirement: *id012
189
199
  prerelease: false
200
+ version_requirements: !ruby/object:Gem::Requirement
201
+ none: false
202
+ requirements:
203
+ - - ! '>='
204
+ - !ruby/object:Gem::Version
205
+ version: '0'
206
+ - !ruby/object:Gem::Dependency
207
+ name: progressbar
208
+ requirement: !ruby/object:Gem::Requirement
209
+ none: false
210
+ requirements:
211
+ - - ! '>='
212
+ - !ruby/object:Gem::Version
213
+ version: '0'
190
214
  type: :runtime
191
- name: grit
192
- - !ruby/object:Gem::Dependency
193
- version_requirements: &id013 !ruby/object:Gem::Requirement
194
- none: false
195
- requirements:
196
- - - ">="
197
- - !ruby/object:Gem::Version
198
- hash: 3
199
- segments:
200
- - 0
201
- version: "0"
202
- requirement: *id013
203
215
  prerelease: false
216
+ version_requirements: !ruby/object:Gem::Requirement
217
+ none: false
218
+ requirements:
219
+ - - ! '>='
220
+ - !ruby/object:Gem::Version
221
+ version: '0'
222
+ - !ruby/object:Gem::Dependency
223
+ name: grit
224
+ requirement: !ruby/object:Gem::Requirement
225
+ none: false
226
+ requirements:
227
+ - - ! '>='
228
+ - !ruby/object:Gem::Version
229
+ version: '0'
204
230
  type: :runtime
231
+ prerelease: false
232
+ version_requirements: !ruby/object:Gem::Requirement
233
+ none: false
234
+ requirements:
235
+ - - ! '>='
236
+ - !ruby/object:Gem::Version
237
+ version: '0'
238
+ - !ruby/object:Gem::Dependency
205
239
  name: launchy
206
- - !ruby/object:Gem::Dependency
207
- version_requirements: &id014 !ruby/object:Gem::Requirement
240
+ requirement: !ruby/object:Gem::Requirement
241
+ none: false
242
+ requirements:
243
+ - - ! '>='
244
+ - !ruby/object:Gem::Version
245
+ version: '0'
246
+ type: :runtime
247
+ prerelease: false
248
+ version_requirements: !ruby/object:Gem::Requirement
208
249
  none: false
209
- requirements:
250
+ requirements:
251
+ - - ! '>='
252
+ - !ruby/object:Gem::Version
253
+ version: '0'
254
+ - !ruby/object:Gem::Dependency
255
+ name: shelly-dependencies
256
+ requirement: !ruby/object:Gem::Requirement
257
+ none: false
258
+ requirements:
210
259
  - - ~>
211
- - !ruby/object:Gem::Version
212
- hash: 25
213
- segments:
214
- - 0
215
- - 1
216
- - 1
260
+ - !ruby/object:Gem::Version
217
261
  version: 0.1.1
218
- requirement: *id014
219
- prerelease: false
220
262
  type: :runtime
221
- name: shelly-dependencies
263
+ prerelease: false
264
+ version_requirements: !ruby/object:Gem::Requirement
265
+ none: false
266
+ requirements:
267
+ - - ~>
268
+ - !ruby/object:Gem::Version
269
+ version: 0.1.1
222
270
  description: Tool for managing applications and clouds at shellycloud.com
223
- email:
271
+ email:
224
272
  - support@shellycloud.com
225
- executables:
273
+ executables:
226
274
  - shelly
227
275
  extensions: []
228
-
229
276
  extra_rdoc_files: []
230
-
231
- files:
277
+ files:
232
278
  - .gitignore
233
279
  - .travis.yml
234
280
  - Gemfile
@@ -283,36 +329,44 @@ files:
283
329
  - spec/thor/options_spec.rb
284
330
  homepage: http://shellycloud.com
285
331
  licenses: []
286
-
287
332
  post_install_message:
288
333
  rdoc_options: []
289
-
290
- require_paths:
334
+ require_paths:
291
335
  - lib
292
- required_ruby_version: !ruby/object:Gem::Requirement
336
+ required_ruby_version: !ruby/object:Gem::Requirement
293
337
  none: false
294
- requirements:
295
- - - ">="
296
- - !ruby/object:Gem::Version
297
- hash: 3
298
- segments:
299
- - 0
300
- version: "0"
301
- required_rubygems_version: !ruby/object:Gem::Requirement
338
+ requirements:
339
+ - - ! '>='
340
+ - !ruby/object:Gem::Version
341
+ version: '0'
342
+ required_rubygems_version: !ruby/object:Gem::Requirement
302
343
  none: false
303
- requirements:
304
- - - ">="
305
- - !ruby/object:Gem::Version
306
- hash: 3
307
- segments:
308
- - 0
309
- version: "0"
344
+ requirements:
345
+ - - ! '>='
346
+ - !ruby/object:Gem::Version
347
+ version: '0'
310
348
  requirements: []
311
-
312
349
  rubyforge_project: shelly
313
- rubygems_version: 1.8.10
350
+ rubygems_version: 1.8.24
314
351
  signing_key:
315
352
  specification_version: 3
316
353
  summary: Shelly Cloud command line tool
317
- test_files: []
318
-
354
+ test_files:
355
+ - spec/helpers.rb
356
+ - spec/input_faker.rb
357
+ - spec/shelly/app_spec.rb
358
+ - spec/shelly/backup_spec.rb
359
+ - spec/shelly/cli/backup_spec.rb
360
+ - spec/shelly/cli/config_spec.rb
361
+ - spec/shelly/cli/deploys_spec.rb
362
+ - spec/shelly/cli/main_spec.rb
363
+ - spec/shelly/cli/runner_spec.rb
364
+ - spec/shelly/cli/user_spec.rb
365
+ - spec/shelly/client_spec.rb
366
+ - spec/shelly/cloudfile_spec.rb
367
+ - spec/shelly/download_progress_bar_spec.rb
368
+ - spec/shelly/model_spec.rb
369
+ - spec/shelly/structure_validator_spec.rb
370
+ - spec/shelly/user_spec.rb
371
+ - spec/spec_helper.rb
372
+ - spec/thor/options_spec.rb