engineyard-serverside 1.5.1 → 1.5.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -54,9 +54,11 @@ module EY
54
54
  def check_repository
55
55
  if gemfile? && lockfile
56
56
  unless lockfile.any_database_adapter?
57
- info "!> WARNING: Gemfile.lock does not contain any recognized database adapter!"
58
- info "!> We expected to find mysql2, mysql or other database adapter gem."
59
- info "!> This could prevent booting of applications that use MySQL or Postgres."
57
+ warning <<-WARN
58
+ Gemfile.lock does not contain a recognized databaseadapter.
59
+ A database-adapter gem such as mysql2, mysql, or do_mysql was expected.
60
+ This can prevent applications that use MySQL or PostreSQL from booting.
61
+ WARN
60
62
  end
61
63
  end
62
64
  end
@@ -173,10 +175,10 @@ module EY
173
175
  run_with_callbacks(:symlink)
174
176
  sudo "rm -rf #{rolled_back_release}"
175
177
  bundle
176
- info "~> Restarting with previous release"
178
+ info "~> Restarting with previous release."
177
179
  with_maintenance_page { run_with_callbacks(:restart) }
178
180
  else
179
- info "~> Already at oldest release, nothing to roll back to"
181
+ info "~> Already at oldest release, nothing to roll back to."
180
182
  exit(1)
181
183
  end
182
184
  end
@@ -197,7 +199,7 @@ module EY
197
199
  info "~> Copying to #{c.release_path}"
198
200
  run("mkdir -p #{c.release_path} && rsync -aq #{c.exclusions} #{c.repository_cache}/ #{c.release_path}")
199
201
 
200
- info "~> Ensuring proper ownership"
202
+ info "~> Ensuring proper ownership."
201
203
  sudo("chown -R #{c.user}:#{c.group} #{c.deploy_to}")
202
204
  end
203
205
 
@@ -206,7 +208,7 @@ module EY
206
208
  end
207
209
 
208
210
  def symlink_configs(release_to_link=c.release_path)
209
- info "~> Preparing shared resources for release"
211
+ info "~> Preparing shared resources for release."
210
212
  symlink_tasks(release_to_link).each do |what, cmd|
211
213
  info "~> #{what}"
212
214
  run(cmd)
@@ -235,7 +237,7 @@ module EY
235
237
 
236
238
  # task
237
239
  def symlink(release_to_link=c.release_path)
238
- info "~> Symlinking code"
240
+ info "~> Symlinking code."
239
241
  run "rm -f #{c.current_path} && ln -nfs #{release_to_link} #{c.current_path} && chown -R #{c.user}:#{c.group} #{c.current_path}"
240
242
  @symlink_changed = true
241
243
  rescue Exception
@@ -279,19 +281,21 @@ module EY
279
281
 
280
282
  def puts_deploy_failure
281
283
  if @cleanup_failed
282
- info "~> [Relax] Your site is running new code, but cleaning up old deploys failed"
284
+ info "~> [Relax] Your site is running new code, but clean up of old deploys failed."
283
285
  elsif @maintenance_up
284
286
  info "~> [Attention] Maintenance page still up, consider the following before removing:"
285
- info " * any deploy hooks ran, be careful if they were destructive" if @callbacks_reached
286
- info " * any migrations ran, be careful if they were destructive" if @migrations_reached
287
+ info " * Deploy hooks ran. This might cause problems for reverting to old code." if @callbacks_reached
288
+ info " * Migrations ran. This might cause problems for reverting to old code." if @migrations_reached
287
289
  if @symlink_changed
288
- info " * your new code is symlinked as current"
290
+ info " * Your new code is symlinked as current."
289
291
  else
290
- info " * your old code is still symlinked as current"
292
+ info " * Your old code is still symlinked as current."
291
293
  end
292
- info " * application servers failed to restart" if @restart_failed
294
+ info " * Application servers failed to restart." if @restart_failed
295
+ info ""
296
+ info "~> Need help? File a ticket for support."
293
297
  else
294
- info "~> [Relax] Your site is still running old code and nothing destructive could have occurred"
298
+ info "~> [Relax] Your site is still running old code and nothing destructive has occurred."
295
299
  end
296
300
  end
297
301
 
@@ -309,17 +313,14 @@ module EY
309
313
  end
310
314
 
311
315
  def warn_about_missing_lockfile
312
- info "!>"
313
- info "!> WARNING: Gemfile.lock is missing!"
314
- info "!> You can get different gems in production than what you tested with."
315
- info "!> You can get different gems on every deployment even if your Gemfile hasn't changed."
316
- info "!> Deploying may take a long time."
317
- info "!> There is a slight, but very serious chance of a Zerg rush overtaking your base."
318
- info "!>"
319
- info "!> Fix this by running \"git add Gemfile.lock; git commit\" and deploying again."
320
- info "!>"
321
- info "!> This deployment will use bundler #{LockfileParser.default_version} to run 'bundle install'."
322
- info "!>"
316
+ warning <<-WARN
317
+ Gemfile.lock is missing!
318
+ You can get different versions of gems in production than what you tested with.
319
+ You can get different versions of gems on every deployment even if your Gemfile hasn't changed.
320
+ Deploying will take longer.
321
+
322
+ To fix this problem, commit your Gemfile.lock to your repository.
323
+ WARN
323
324
  end
324
325
 
325
326
  def get_bundler_installer
@@ -41,6 +41,10 @@ module EY
41
41
  EY::Serverside::LoggedOutput.verbose?
42
42
  end
43
43
 
44
+ def warning(msg)
45
+ info "\nWARNING: #{msg}\n".gsub(/^/,'!> ')
46
+ end
47
+
44
48
  def info(msg)
45
49
  with_logfile do |log|
46
50
  Tee.new($stdout, log) << (msg + "\n")
@@ -11,7 +11,7 @@ module EY
11
11
  if rails_version
12
12
  info "~> Precompiling assets for rails v#{rails_version}"
13
13
  else
14
- info "~> [WARN] Precompiling assets even though Rails was not bundled."
14
+ warning "Precompiling assets even though Rails was not bundled."
15
15
  end
16
16
  run(cmd)
17
17
  end
@@ -1,5 +1,5 @@
1
1
  module EY
2
2
  module Serverside
3
- VERSION = '1.5.1'
3
+ VERSION = '1.5.2'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: engineyard-serverside
3
3
  version: !ruby/object:Gem::Version
4
- hash: 1
4
+ hash: 7
5
5
  prerelease:
6
6
  segments:
7
7
  - 1
8
8
  - 5
9
- - 1
10
- version: 1.5.1
9
+ - 2
10
+ version: 1.5.2
11
11
  platform: ruby
12
12
  authors:
13
13
  - EY Cloud Team
@@ -15,13 +15,13 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-10-13 00:00:00 -04:00
18
+ date: 2011-10-18 00:00:00 -07:00
19
19
  default_executable: engineyard-serverside
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
+ name: rspec
22
23
  prerelease: false
23
24
  type: :development
24
- name: rspec
25
25
  version_requirements: &id001 !ruby/object:Gem::Requirement
26
26
  none: false
27
27
  requirements:
@@ -35,9 +35,9 @@ dependencies:
35
35
  version: 1.3.2
36
36
  requirement: *id001
37
37
  - !ruby/object:Gem::Dependency
38
+ name: rake
38
39
  prerelease: false
39
40
  type: :development
40
- name: rake
41
41
  version_requirements: &id002 !ruby/object:Gem::Requirement
42
42
  none: false
43
43
  requirements:
@@ -324,7 +324,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
324
324
  requirements: []
325
325
 
326
326
  rubyforge_project:
327
- rubygems_version: 1.5.2
327
+ rubygems_version: 1.5.0
328
328
  signing_key:
329
329
  specification_version: 3
330
330
  summary: A gem that deploys ruby applications on EY Cloud instances