shelly 0.0.54 → 0.0.55.pre

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.
@@ -154,25 +154,26 @@ module Shelly
154
154
  rescue Client::ConflictException => e
155
155
  case e[:state]
156
156
  when "running"
157
- say_error "Not starting: cloud '#{@app}' is already running"
157
+ say_error "Not starting: cloud '#{@app}' is already running", :with_exit => false
158
158
  when "deploying", "configuring"
159
- say_error "Not starting: cloud '#{@app}' is currently deploying"
159
+ say_error "Not starting: cloud '#{@app}' is currently deploying", :with_exit => false
160
160
  when "no_code"
161
161
  say_error "Not starting: no source code provided", :with_exit => false
162
162
  say_error "Push source code using:", :with_exit => false
163
- say " git push production master"
163
+ say_error " git push production master", :with_exit => false
164
164
  when "deploy_failed", "configuration_failed"
165
165
  say_error "Not starting: deployment failed", :with_exit => false
166
166
  say_error "Support has been notified", :with_exit => false
167
- say_error "Check `shelly deploys show last --cloud #{@app}` for reasons of failure"
167
+ say_error "Check `shelly deploys show last --cloud #{@app}` for reasons of failure", :with_exit => false
168
168
  when "not_enough_resources"
169
169
  say_error %{Sorry, There are no resources for your servers.
170
- We have been notified about it. We will be adding new resources shortly}
171
- when "no_billing"
172
- say_error "Please fill in billing details to start #{@app}.", :with_exit => false
173
- say_error "Visit: #{@app.edit_billing_url}", :with_exit => false
174
- when "payment_declined"
175
- say_error "Not starting. Invoice for cloud '#{@app}' was declined."
170
+ We have been notified about it. We will be adding new resources shortly}, :with_exit => false
171
+ end
172
+ if !e[:can_be_started] and e[:state] == "turned_off"
173
+ url = "#{@app.shelly.shellyapp_url}/apps/#{@app.code_name}/billing"
174
+ say_error "Not starting.", :with_exit => false
175
+ say_error "For more details please visit:", :with_exit => false
176
+ say_error url
176
177
  end
177
178
  exit 1
178
179
  rescue Client::NotFoundException => e
@@ -285,7 +286,7 @@ We have been notified about it. We will be adding new resources shortly}
285
286
  case e[:state]
286
287
  when "deploying", "configuring"
287
288
  say_error "Your application is being redeployed at the moment"
288
- when "no_code", "no_billing", "turned_off"
289
+ when "no_code", "turned_off"
289
290
  say_error "Cloud #{@app} is not running", :with_exit => false
290
291
  say "Start your cloud with `shelly start --cloud #{@app}`"
291
292
  exit 1
@@ -1,3 +1,3 @@
1
1
  module Shelly
2
- VERSION = "0.0.54"
2
+ VERSION = "0.0.55.pre"
3
3
  end
@@ -613,7 +613,7 @@ OUT
613
613
  raise_conflict("state" => "no_code")
614
614
  $stdout.should_receive(:puts).with(red "Not starting: no source code provided")
615
615
  $stdout.should_receive(:puts).with(red "Push source code using:")
616
- $stdout.should_receive(:puts).with(" git push production master")
616
+ $stdout.should_receive(:puts).with(red " git push production master")
617
617
  lambda { invoke(@main, :start) }.should raise_error(SystemExit)
618
618
  end
619
619
 
@@ -635,23 +635,17 @@ We have been notified about it. We will be adding new resources shortly")
635
635
  lambda { invoke(@main, :start) }.should raise_error(SystemExit)
636
636
  end
637
637
 
638
- it "should show messages about billing" do
639
- raise_conflict("state" => "no_billing")
640
- @app.stub(:edit_billing_url).and_return("http://example.com/billing/edit")
641
- $stdout.should_receive(:puts).with(red "Please fill in billing details to start foo-production.")
642
- $stdout.should_receive(:puts).with(red "Visit: http://example.com/billing/edit")
638
+ it "should show link to billing" do
643
639
  @client.stub(:shellyapp_url).and_return("http://example.com")
644
- lambda { invoke(@main, :start) }.should raise_error(SystemExit)
645
- end
646
-
647
- it "should show messge about payment declined" do
648
- raise_conflict("state" => "payment_declined")
649
- $stdout.should_receive(:puts).with(red "Not starting. Invoice for cloud 'foo-production' was declined.")
640
+ raise_conflict("state" => "turned_off", "can_be_started" => false)
641
+ $stdout.should_receive(:puts).with(red "Not starting.")
642
+ $stdout.should_receive(:puts).with(red "For more details please visit:")
643
+ $stdout.should_receive(:puts).with(red "http://example.com/apps/foo-production/billing")
650
644
  lambda { invoke(@main, :start) }.should raise_error(SystemExit)
651
645
  end
652
646
 
653
647
  def raise_conflict(options = {})
654
- body = {"state" => "no_code"}.merge(options)
648
+ body = {"state" => "no_code", "can_be_started" => true}.merge(options)
655
649
  exception = Shelly::Client::ConflictException.new(body)
656
650
  @client.stub(:start_cloud).and_raise(exception)
657
651
  end
@@ -1178,7 +1172,7 @@ We have been notified about it. We will be adding new resources shortly")
1178
1172
  end
1179
1173
  end
1180
1174
 
1181
- %w(no_code no_billing turned_off).each do |state|
1175
+ %w(no_code turned_off).each do |state|
1182
1176
  context "when application is in #{state} state" do
1183
1177
  it "should display error that cloud is not running" do
1184
1178
  exception = Shelly::Client::ConflictException.new("state" => state)
metadata CHANGED
@@ -1,167 +1,191 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: shelly
3
- version: !ruby/object:Gem::Version
4
- version: 0.0.54
5
- prerelease:
3
+ version: !ruby/object:Gem::Version
4
+ hash: 961916056
5
+ prerelease: 7
6
+ segments:
7
+ - 0
8
+ - 0
9
+ - 55
10
+ - pre
11
+ version: 0.0.55.pre
6
12
  platform: ruby
7
- authors:
13
+ authors:
8
14
  - Shelly Cloud team
9
15
  autorequire:
10
16
  bindir: bin
11
17
  cert_chain: []
12
- date: 2012-03-13 00:00:00.000000000Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
15
- name: rspec
16
- requirement: &70184900694820 !ruby/object:Gem::Requirement
18
+
19
+ date: 2012-03-13 00:00:00 Z
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
22
+ version_requirements: &id001 !ruby/object:Gem::Requirement
17
23
  none: false
18
- requirements:
24
+ requirements:
19
25
  - - ~>
20
- - !ruby/object:Gem::Version
26
+ - !ruby/object:Gem::Version
27
+ hash: 47
28
+ segments:
29
+ - 2
30
+ - 8
31
+ - 0
21
32
  version: 2.8.0
33
+ requirement: *id001
34
+ prerelease: false
22
35
  type: :development
36
+ name: rspec
37
+ - !ruby/object:Gem::Dependency
38
+ version_requirements: &id002 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ hash: 3
44
+ segments:
45
+ - 0
46
+ version: "0"
47
+ requirement: *id002
23
48
  prerelease: false
24
- version_requirements: *70184900694820
25
- - !ruby/object:Gem::Dependency
49
+ type: :development
26
50
  name: rake
27
- requirement: &70184900694340 !ruby/object:Gem::Requirement
51
+ - !ruby/object:Gem::Dependency
52
+ version_requirements: &id003 !ruby/object:Gem::Requirement
28
53
  none: false
29
- requirements:
30
- - - ! '>='
31
- - !ruby/object:Gem::Version
32
- version: '0'
33
- type: :development
54
+ requirements:
55
+ - - ">="
56
+ - !ruby/object:Gem::Version
57
+ hash: 3
58
+ segments:
59
+ - 0
60
+ version: "0"
61
+ requirement: *id003
34
62
  prerelease: false
35
- version_requirements: *70184900694340
36
- - !ruby/object:Gem::Dependency
63
+ type: :development
37
64
  name: guard
38
- requirement: &70184900693880 !ruby/object:Gem::Requirement
65
+ - !ruby/object:Gem::Dependency
66
+ version_requirements: &id004 !ruby/object:Gem::Requirement
39
67
  none: false
40
- requirements:
41
- - - ! '>='
42
- - !ruby/object:Gem::Version
43
- version: '0'
44
- type: :development
68
+ requirements:
69
+ - - ">="
70
+ - !ruby/object:Gem::Version
71
+ hash: 3
72
+ segments:
73
+ - 0
74
+ version: "0"
75
+ requirement: *id004
45
76
  prerelease: false
46
- version_requirements: *70184900693880
47
- - !ruby/object:Gem::Dependency
77
+ type: :development
48
78
  name: guard-rspec
49
- requirement: &70184900693460 !ruby/object:Gem::Requirement
79
+ - !ruby/object:Gem::Dependency
80
+ version_requirements: &id005 !ruby/object:Gem::Requirement
50
81
  none: false
51
- requirements:
52
- - - ! '>='
53
- - !ruby/object:Gem::Version
54
- version: '0'
55
- type: :development
82
+ requirements:
83
+ - - ">="
84
+ - !ruby/object:Gem::Version
85
+ hash: 3
86
+ segments:
87
+ - 0
88
+ version: "0"
89
+ requirement: *id005
56
90
  prerelease: false
57
- version_requirements: *70184900693460
58
- - !ruby/object:Gem::Dependency
59
- name: simplecov
60
- requirement: &70184900693040 !ruby/object:Gem::Requirement
61
- none: false
62
- requirements:
63
- - - ! '>='
64
- - !ruby/object:Gem::Version
65
- version: '0'
66
91
  type: :development
67
- prerelease: false
68
- version_requirements: *70184900693040
69
- - !ruby/object:Gem::Dependency
70
- name: ruby_gntp
71
- requirement: &70184900692580 !ruby/object:Gem::Requirement
92
+ name: simplecov
93
+ - !ruby/object:Gem::Dependency
94
+ version_requirements: &id006 !ruby/object:Gem::Requirement
72
95
  none: false
73
- requirements:
74
- - - ! '>='
75
- - !ruby/object:Gem::Version
76
- version: '0'
77
- type: :development
96
+ requirements:
97
+ - - ">="
98
+ - !ruby/object:Gem::Version
99
+ hash: 3
100
+ segments:
101
+ - 0
102
+ version: "0"
103
+ requirement: *id006
78
104
  prerelease: false
79
- version_requirements: *70184900692580
80
- - !ruby/object:Gem::Dependency
81
- name: rb-fsevent
82
- requirement: &70184900692100 !ruby/object:Gem::Requirement
83
- none: false
84
- requirements:
85
- - - ! '>='
86
- - !ruby/object:Gem::Version
87
- version: '0'
88
105
  type: :development
89
- prerelease: false
90
- version_requirements: *70184900692100
91
- - !ruby/object:Gem::Dependency
92
106
  name: fakefs
93
- requirement: &70184900691620 !ruby/object:Gem::Requirement
107
+ - !ruby/object:Gem::Dependency
108
+ version_requirements: &id007 !ruby/object:Gem::Requirement
94
109
  none: false
95
- requirements:
96
- - - ! '>='
97
- - !ruby/object:Gem::Version
98
- version: '0'
99
- type: :development
110
+ requirements:
111
+ - - ">="
112
+ - !ruby/object:Gem::Version
113
+ hash: 3
114
+ segments:
115
+ - 0
116
+ version: "0"
117
+ requirement: *id007
100
118
  prerelease: false
101
- version_requirements: *70184900691620
102
- - !ruby/object:Gem::Dependency
103
- name: fakeweb
104
- requirement: &70184900691080 !ruby/object:Gem::Requirement
105
- none: false
106
- requirements:
107
- - - ! '>='
108
- - !ruby/object:Gem::Version
109
- version: '0'
110
119
  type: :development
111
- prerelease: false
112
- version_requirements: *70184900691080
113
- - !ruby/object:Gem::Dependency
114
- name: wijet-thor
115
- requirement: &70184900690380 !ruby/object:Gem::Requirement
120
+ name: fakeweb
121
+ - !ruby/object:Gem::Dependency
122
+ version_requirements: &id008 !ruby/object:Gem::Requirement
116
123
  none: false
117
- requirements:
124
+ requirements:
118
125
  - - ~>
119
- - !ruby/object:Gem::Version
126
+ - !ruby/object:Gem::Version
127
+ hash: 41
128
+ segments:
129
+ - 0
130
+ - 14
131
+ - 7
120
132
  version: 0.14.7
133
+ requirement: *id008
134
+ prerelease: false
121
135
  type: :runtime
136
+ name: wijet-thor
137
+ - !ruby/object:Gem::Dependency
138
+ version_requirements: &id009 !ruby/object:Gem::Requirement
139
+ none: false
140
+ requirements:
141
+ - - ">="
142
+ - !ruby/object:Gem::Version
143
+ hash: 3
144
+ segments:
145
+ - 0
146
+ version: "0"
147
+ requirement: *id009
122
148
  prerelease: false
123
- version_requirements: *70184900690380
124
- - !ruby/object:Gem::Dependency
149
+ type: :runtime
125
150
  name: rest-client
126
- requirement: &70184900689600 !ruby/object:Gem::Requirement
151
+ - !ruby/object:Gem::Dependency
152
+ version_requirements: &id010 !ruby/object:Gem::Requirement
127
153
  none: false
128
- requirements:
129
- - - ! '>='
130
- - !ruby/object:Gem::Version
131
- version: '0'
132
- type: :runtime
154
+ requirements:
155
+ - - ">="
156
+ - !ruby/object:Gem::Version
157
+ hash: 3
158
+ segments:
159
+ - 0
160
+ version: "0"
161
+ requirement: *id010
133
162
  prerelease: false
134
- version_requirements: *70184900689600
135
- - !ruby/object:Gem::Dependency
163
+ type: :runtime
136
164
  name: json
137
- requirement: &70184900689140 !ruby/object:Gem::Requirement
165
+ - !ruby/object:Gem::Dependency
166
+ version_requirements: &id011 !ruby/object:Gem::Requirement
138
167
  none: false
139
- requirements:
140
- - - ! '>='
141
- - !ruby/object:Gem::Version
142
- version: '0'
143
- type: :runtime
168
+ requirements:
169
+ - - ">="
170
+ - !ruby/object:Gem::Version
171
+ hash: 3
172
+ segments:
173
+ - 0
174
+ version: "0"
175
+ requirement: *id011
144
176
  prerelease: false
145
- version_requirements: *70184900689140
146
- - !ruby/object:Gem::Dependency
147
- name: progressbar
148
- requirement: &70184900688700 !ruby/object:Gem::Requirement
149
- none: false
150
- requirements:
151
- - - ! '>='
152
- - !ruby/object:Gem::Version
153
- version: '0'
154
177
  type: :runtime
155
- prerelease: false
156
- version_requirements: *70184900688700
178
+ name: progressbar
157
179
  description: Tool for managing applications and clouds at shellycloud.com
158
- email:
180
+ email:
159
181
  - support@shellycloud.com
160
- executables:
182
+ executables:
161
183
  - shelly
162
184
  extensions: []
185
+
163
186
  extra_rdoc_files: []
164
- files:
187
+
188
+ files:
165
189
  - .gitignore
166
190
  - .travis.yml
167
191
  - Gemfile
@@ -213,43 +237,38 @@ files:
213
237
  - spec/thor/options_spec.rb
214
238
  homepage: http://shellycloud.com
215
239
  licenses: []
240
+
216
241
  post_install_message:
217
242
  rdoc_options: []
218
- require_paths:
243
+
244
+ require_paths:
219
245
  - lib
220
- required_ruby_version: !ruby/object:Gem::Requirement
246
+ required_ruby_version: !ruby/object:Gem::Requirement
221
247
  none: false
222
- requirements:
223
- - - ! '>='
224
- - !ruby/object:Gem::Version
225
- version: '0'
226
- required_rubygems_version: !ruby/object:Gem::Requirement
248
+ requirements:
249
+ - - ">="
250
+ - !ruby/object:Gem::Version
251
+ hash: 3
252
+ segments:
253
+ - 0
254
+ version: "0"
255
+ required_rubygems_version: !ruby/object:Gem::Requirement
227
256
  none: false
228
- requirements:
229
- - - ! '>='
230
- - !ruby/object:Gem::Version
231
- version: '0'
257
+ requirements:
258
+ - - ">"
259
+ - !ruby/object:Gem::Version
260
+ hash: 25
261
+ segments:
262
+ - 1
263
+ - 3
264
+ - 1
265
+ version: 1.3.1
232
266
  requirements: []
267
+
233
268
  rubyforge_project: shelly
234
269
  rubygems_version: 1.8.10
235
270
  signing_key:
236
271
  specification_version: 3
237
272
  summary: Shelly Cloud command line tool
238
- test_files:
239
- - spec/helpers.rb
240
- - spec/input_faker.rb
241
- - spec/shelly/app_spec.rb
242
- - spec/shelly/backup_spec.rb
243
- - spec/shelly/cli/backup_spec.rb
244
- - spec/shelly/cli/config_spec.rb
245
- - spec/shelly/cli/deploys_spec.rb
246
- - spec/shelly/cli/main_spec.rb
247
- - spec/shelly/cli/runner_spec.rb
248
- - spec/shelly/cli/user_spec.rb
249
- - spec/shelly/client_spec.rb
250
- - spec/shelly/cloudfile_spec.rb
251
- - spec/shelly/download_progress_bar_spec.rb
252
- - spec/shelly/model_spec.rb
253
- - spec/shelly/user_spec.rb
254
- - spec/spec_helper.rb
255
- - spec/thor/options_spec.rb
273
+ test_files: []
274
+