parent
71a050bc93
commit
74b76a70a3
@ -0,0 +1,17 @@
|
||||
#!/usr/bin/env bash
|
||||
set -e
|
||||
oldrev=$1
|
||||
newrev=$2
|
||||
|
||||
run() {
|
||||
[ -x $1 ] && $1 $oldrev $newrev
|
||||
}
|
||||
|
||||
echo files changed: $(git diff $oldrev $newrev --diff-filter=ACDMR --name-only | wc -l)
|
||||
|
||||
umask 002
|
||||
|
||||
git submodule sync && git submodule update --init --recursive
|
||||
|
||||
run deploy/before_restart
|
||||
run deploy/restart && run deploy/after_restart
|
@ -0,0 +1,39 @@
|
||||
#!/usr/bin/env ruby
|
||||
oldrev, newrev = ARGV
|
||||
|
||||
def run(cmd)
|
||||
exit($?.exitstatus) unless system "umask 002 && #{cmd}"
|
||||
end
|
||||
|
||||
RAILS_ENV = ENV['RAILS_ENV'] || 'production'
|
||||
use_bundler = File.file? 'Gemfile'
|
||||
rake_cmd = use_bundler ? 'bundle exec rake' : 'rake'
|
||||
|
||||
if use_bundler
|
||||
bundler_args = ['--deployment']
|
||||
BUNDLE_WITHOUT = ENV['BUNDLE_WITHOUT'] || 'development:test'
|
||||
bundler_args << '--without' << BUNDLE_WITHOUT unless BUNDLE_WITHOUT.empty?
|
||||
|
||||
# update gem bundle
|
||||
run "bundle install #{bundler_args.join(' ')}"
|
||||
end
|
||||
|
||||
if File.file? 'Rakefile'
|
||||
tasks = []
|
||||
|
||||
num_migrations = `git diff #{oldrev} #{newrev} --diff-filter=A --name-only -z db/migrate`.split("\0").size
|
||||
# run migrations if new ones have been added
|
||||
tasks << "db:migrate" if num_migrations > 0
|
||||
|
||||
# precompile assets
|
||||
changed_assets = `git diff #{oldrev} #{newrev} --name-only -z app/assets`.split("\0")
|
||||
tasks << "assets:precompile" if changed_assets.size > 0
|
||||
|
||||
run "#{rake_cmd} #{tasks.join(' ')} RAILS_ENV=#{RAILS_ENV}" if tasks.any?
|
||||
end
|
||||
|
||||
# clear cached assets (unversioned/ignored files)
|
||||
run "git clean -x -f -- public/stylesheets public/javascripts"
|
||||
|
||||
# clean unversioned files from vendor/plugins (e.g. old submodules)
|
||||
run "git clean -d -f -- vendor/plugins"
|
@ -0,0 +1,3 @@
|
||||
#!/bin/sh
|
||||
touch tmp/restart.txt
|
||||
echo "restarting Passenger app"
|
Loading…
Reference in new issue