From f8704605fba212b3951e9322fb4599d1c57bf321 Mon Sep 17 00:00:00 2001 From: Maciej Szulik Date: Thu, 12 Feb 2015 17:40:16 +0100 Subject: [PATCH] Bug 1191517 - Passenger is not hiding ErrorPages even when production is specified. Added additional logic to force hiding ErrorPages when not in development. --- cartridges/openshift-origin-cartridge-ruby/bin/control | 2 ++ cartridges/openshift-origin-cartridge-ruby/bin/setup | 2 +- cartridges/openshift-origin-cartridge-ruby/bin/upgrade | 5 +++++ .../metadata/managed_files.yml | 1 - .../versions/1.8/etc/conf.d/openshift.conf.erb | 7 ++++++- .../versions/1.9/etc/conf.d/openshift.conf.erb | 7 +++++-- .../versions/2.0/etc/conf.d/openshift.conf.erb | 5 ++++- 7 files changed, 23 insertions(+), 6 deletions(-) diff --git a/cartridges/openshift-origin-cartridge-ruby/bin/control b/cartridges/openshift-origin-cartridge-ruby/bin/control index ada5d849fd8..d0eb908f112 100755 --- a/cartridges/openshift-origin-cartridge-ruby/bin/control +++ b/cartridges/openshift-origin-cartridge-ruby/bin/control @@ -6,6 +6,7 @@ source "${OPENSHIFT_RUBY_DIR}/lib/ruby_context" HTTPD_CFG_DIR=${OPENSHIFT_RUBY_DIR}/etc/conf.d HTTPD_CFG_FILE=$OPENSHIFT_RUBY_DIR/etc/conf/httpd_nolog.conf +ERB_HTTPD_CFG_DIR=${OPENSHIFT_RUBY_DIR}versions/${OPENSHIFT_RUBY_VERSION}/etc/conf.d/ HTTPD_PASSENV_FILE=${HTTPD_CFG_DIR}/passenv.conf HTTPD_PID_FILE=$OPENSHIFT_RUBY_DIR/run/httpd.pid RAILS_ENV=${RAILS_ENV:-production} @@ -64,6 +65,7 @@ function restart() { echo "${1}ing Ruby cartridge" mkdir -p ${OPENSHIFT_REPO_DIR}public write_httpd_passenv $HTTPD_PASSENV_FILE + oo-erb ${ERB_HTTPD_CFG_DIR}openshift.conf.erb > ${HTTPD_CFG_DIR}/openshift.conf oo-erb ${OPENSHIFT_RUBY_DIR}conf/performance.conf.erb.hidden > $HTTPD_CFG_DIR/performance.conf [ -d ${OPENSHIFT_REPO_DIR}/tmp ] && touch ${OPENSHIFT_REPO_DIR}/tmp/restart.txt ensure_httpd_restart_succeed "$HTTPD_PID_FILE" "$HTTPD_CFG_FILE" diff --git a/cartridges/openshift-origin-cartridge-ruby/bin/setup b/cartridges/openshift-origin-cartridge-ruby/bin/setup index b1820148c6b..a434d0f4746 100755 --- a/cartridges/openshift-origin-cartridge-ruby/bin/setup +++ b/cartridges/openshift-origin-cartridge-ruby/bin/setup @@ -20,7 +20,7 @@ done # Create/truncate Apache PassEnv configuration file echo > $OPENSHIFT_RUBY_DIR/etc/conf.d/passenv.conf - +echo > $OPENSHIFT_RUBY_DIR/etc/conf.d/openshift.conf echo > $OPENSHIFT_RUBY_DIR/etc/conf.d/server-status.conf if [ $version == '1.9' ]; then diff --git a/cartridges/openshift-origin-cartridge-ruby/bin/upgrade b/cartridges/openshift-origin-cartridge-ruby/bin/upgrade index c7dd4203b0f..3757f3fbc81 100755 --- a/cartridges/openshift-origin-cartridge-ruby/bin/upgrade +++ b/cartridges/openshift-origin-cartridge-ruby/bin/upgrade @@ -13,3 +13,8 @@ if [[ "$next" == "0.0.14" ]]; then rm -f ${OPENSHIFT_RUBY_DIR}env/LD_LIBRARY_PATH fi fi + +if [[ "$next" == "0.0.24" ]]; then + chown $OPENSHIFT_GEAR_UUID:$OPENSHIFT_GEAR_UUID ${OPENSHIFT_RUBY_DIR}etc/conf.d/openshift.conf + chcon -u unconfined_u ${OPENSHIFT_RUBY_DIR}etc/conf.d/openshift.conf +fi diff --git a/cartridges/openshift-origin-cartridge-ruby/metadata/managed_files.yml b/cartridges/openshift-origin-cartridge-ruby/metadata/managed_files.yml index 84ffe538362..f7b2a2cfa0f 100644 --- a/cartridges/openshift-origin-cartridge-ruby/metadata/managed_files.yml +++ b/cartridges/openshift-origin-cartridge-ruby/metadata/managed_files.yml @@ -12,7 +12,6 @@ locked_files: - etc/conf/ - etc/conf/* - etc/conf.d/ -- etc/conf.d/openshift.conf - env/ - env/OPENSHIFT_RUBY_DIR - env/PASSENGER_TEMP_DIR diff --git a/cartridges/openshift-origin-cartridge-ruby/versions/1.8/etc/conf.d/openshift.conf.erb b/cartridges/openshift-origin-cartridge-ruby/versions/1.8/etc/conf.d/openshift.conf.erb index e8cd6c9bcd0..b64a64dced7 100644 --- a/cartridges/openshift-origin-cartridge-ruby/versions/1.8/etc/conf.d/openshift.conf.erb +++ b/cartridges/openshift-origin-cartridge-ruby/versions/1.8/etc/conf.d/openshift.conf.erb @@ -1,4 +1,5 @@ LoadModule passenger_module modules/mod_passenger.so + PassengerRoot NativelyPackaged PassengerRuby /usr/bin/ruby @@ -19,8 +20,12 @@ PassengerPreStart http://<%= ENV['OPENSHIFT_RUBY_IP'] %>:<%= ENV['OPENSHIFT_RUBY PassengerSpawnIPAddress <%= ENV['OPENSHIFT_RUBY_IP'] %> PassengerUseGlobalQueue off PassengerTempDir /tmp/passenger + +<% unless ENV['RAILS_ENV'] == "development" %> +PassengerFriendlyErrorPages off +<% end %> + /public/> AllowOverride All Options -Multiviews - diff --git a/cartridges/openshift-origin-cartridge-ruby/versions/1.9/etc/conf.d/openshift.conf.erb b/cartridges/openshift-origin-cartridge-ruby/versions/1.9/etc/conf.d/openshift.conf.erb index bf8f61d0a7f..87fa874bcca 100644 --- a/cartridges/openshift-origin-cartridge-ruby/versions/1.9/etc/conf.d/openshift.conf.erb +++ b/cartridges/openshift-origin-cartridge-ruby/versions/1.9/etc/conf.d/openshift.conf.erb @@ -6,7 +6,6 @@ LoadModule passenger_module /usr/lib64/httpd/modules/ruby193-mod_passenger.so PassengerSpawnMethod conservative - ServerRoot "<%= ENV['OPENSHIFT_RUBY_DIR'] %>" DocumentRoot "<%= ENV['OPENSHIFT_REPO_DIR'] %>/public" Listen <%= ENV['OPENSHIFT_RUBY_IP'] %>:<%= ENV['OPENSHIFT_RUBY_PORT'] %> @@ -21,8 +20,12 @@ PassengerPreStart http://<%= ENV['OPENSHIFT_RUBY_IP'] %>:<%= ENV['OPENSHIFT_RUBY PassengerSpawnIPAddress <%= ENV['OPENSHIFT_RUBY_IP'] %> PassengerUseGlobalQueue off PassengerTempDir /tmp/passenger + +<% unless ENV['RAILS_ENV'] == "development" %> +PassengerFriendlyErrorPages off +<% end %> + /public/> AllowOverride All Options -Multiviews - diff --git a/cartridges/openshift-origin-cartridge-ruby/versions/2.0/etc/conf.d/openshift.conf.erb b/cartridges/openshift-origin-cartridge-ruby/versions/2.0/etc/conf.d/openshift.conf.erb index 2bc5a363605..46d99e9614f 100644 --- a/cartridges/openshift-origin-cartridge-ruby/versions/2.0/etc/conf.d/openshift.conf.erb +++ b/cartridges/openshift-origin-cartridge-ruby/versions/2.0/etc/conf.d/openshift.conf.erb @@ -23,6 +23,10 @@ PassengerUser <%= ENV['OPENSHIFT_GEAR_UUID'] %> PassengerPreStart http://<%= ENV['OPENSHIFT_RUBY_IP'] %>:<%= ENV['OPENSHIFT_RUBY_PORT'] %>/ PassengerTempDir /tmp/passenger +<% unless ENV['RAILS_ENV'] == "development" %> +PassengerFriendlyErrorPages off +<% end %> + <% if ENV['RAILS_ENV'] == "development" %> PassengerLogLevel 1 <% end %> @@ -31,4 +35,3 @@ PassengerLogLevel 1 AllowOverride All Options -Multiviews -