From 74b76a70a3276e971b6b3d597e23c6f0e6a19dc8 Mon Sep 17 00:00:00 2001 From: echarp Date: Thu, 26 Jun 2014 21:31:17 +0200 Subject: [PATCH] =?UTF-8?q?Essai=20de=20configuration=20smtp,=20pour=20g?= =?UTF-8?q?=C3=A9rer=20soucis=20de=20certificat?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/events_controller.rb | 6 ++--- config/environments/production.rb | 1 + deploy/after_push | 17 ++++++++++++ deploy/before_restart | 39 ++++++++++++++++++++++++++++ deploy/restart | 3 +++ 5 files changed, 63 insertions(+), 3 deletions(-) create mode 100755 deploy/after_push create mode 100755 deploy/before_restart create mode 100755 deploy/restart diff --git a/app/controllers/events_controller.rb b/app/controllers/events_controller.rb index 7d347091..28ff837b 100644 --- a/app/controllers/events_controller.rb +++ b/app/controllers/events_controller.rb @@ -102,12 +102,12 @@ class EventsController < ApplicationController private # Use callbacks to share common setup or constraints between actions. def set_event - if (params[:secret].present?) - @event = Event.where(secret: params[:secret]) + if params[:secret].present? + @event = Event.where secret: params[:secret] else @event = Event.moderated end - @event = @event.find(params[:id]) + @event = @event.find params[:id] end # Never trust parameters from the scary internet, only allow the white list through. diff --git a/config/environments/production.rb b/config/environments/production.rb index 47d3553b..232df2f8 100644 --- a/config/environments/production.rb +++ b/config/environments/production.rb @@ -64,6 +64,7 @@ Rails.application.configure do # Ignore bad email addresses and do not raise email delivery errors. # Set this to true and configure the email server for immediate delivery to raise delivery errors. # config.action_mailer.raise_delivery_errors = false + config.action_mailer.smtp_settings.openssl_verify_mode = 'none' # Enable locale fallbacks for I18n (makes lookups for any locale fall back to # the I18n.default_locale when a translation cannot be found). diff --git a/deploy/after_push b/deploy/after_push new file mode 100755 index 00000000..32e9847a --- /dev/null +++ b/deploy/after_push @@ -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 diff --git a/deploy/before_restart b/deploy/before_restart new file mode 100755 index 00000000..8f75b7f5 --- /dev/null +++ b/deploy/before_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" diff --git a/deploy/restart b/deploy/restart new file mode 100755 index 00000000..6094ade8 --- /dev/null +++ b/deploy/restart @@ -0,0 +1,3 @@ +#!/bin/sh +touch tmp/restart.txt +echo "restarting Passenger app"