X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/58fd098749f3d8cf862c66c2750b0aa8e7b8650e..0519cd0ce431545f1df993e48e976fbf7c99ade9:/build/rails-package-scripts/postinst.sh diff --git a/build/rails-package-scripts/postinst.sh b/build/rails-package-scripts/postinst.sh index 223e99d909..8ac77ab001 100644 --- a/build/rails-package-scripts/postinst.sh +++ b/build/rails-package-scripts/postinst.sh @@ -158,31 +158,17 @@ configure_version() { fi if [ -e /etc/redhat-release ]; then - # Recognize any service that starts with "nginx"; e.g., nginx16. - if [ "$WEB_SERVICE" != "${WEB_SERVICE#nginx}" ]; then - WWW_OWNER=nginx - else - WWW_OWNER=apache - fi + case "$WEB_SERVICE" in + "") ;; + nginx*) WWW_OWNER=nginx ;; + *) WWW_OWNER=apache ;; + esac else # Assume we're on a Debian-based system for now. # Both Apache and Nginx run as www-data by default. WWW_OWNER=www-data fi - echo - echo "Assumption: $WEB_SERVICE is configured to serve Rails from" - echo " $RELEASE_PATH" - echo "Assumption: $WEB_SERVICE and passenger run as $WWW_OWNER" - echo - - echo -n "Creating symlinks to configuration in $CONFIG_PATH ..." - setup_confdirs /etc/arvados "$CONFIG_PATH" - setup_conffile environments/production.rb environments/production.rb.example \ - || true - setup_extra_conffiles - echo "... done." - # Before we do anything else, make sure some directories and files are in place if [ ! -e $SHARED_PATH/log ]; then mkdir -p $SHARED_PATH/log; fi if [ ! -e $RELEASE_PATH/tmp ]; then mkdir -p $RELEASE_PATH/tmp; fi @@ -220,25 +206,40 @@ configure_version() { run_and_report "Running bundle install" "$bundle" install --prefer-local --quiet run_and_report "Verifying bundle is complete" "$bundle" exec true - echo -n "Ensuring directory and file permissions ..." - # Ensure correct ownership of a few files - chown "$WWW_OWNER:" $RELEASE_PATH/config/environment.rb - chown "$WWW_OWNER:" $RELEASE_PATH/config.ru - chown "$WWW_OWNER:" $RELEASE_PATH/Gemfile.lock - chown -R "$WWW_OWNER:" $RELEASE_PATH/tmp || true - chown -R "$WWW_OWNER:" $SHARED_PATH/log - # Make sure postgres doesn't try to use a pager. - export PAGER= - case "$RAILSPKG_DATABASE_LOAD_TASK" in - # db:structure:load was deprecated in Rails 6.1 and shouldn't be used. - db:schema:load | db:structure:load) - chown "$WWW_OWNER:" $RELEASE_PATH/db/schema.rb || true - chown "$WWW_OWNER:" $RELEASE_PATH/db/structure.sql || true - ;; - esac - chmod 644 $SHARED_PATH/log/* - chmod -R 2775 $RELEASE_PATH/tmp || true - echo "... done." + if [ -n "$WWW_OWNER" ]; then + cat <