From 4a4a221846573947de46c66fa428d7b850eb50d7 Mon Sep 17 00:00:00 2001 From: Praveen Arimbrathodiyil Date: Fri, 17 Mar 2017 22:27:14 +0530 Subject: [PATCH] use source and export only required variables --- debian/conf/gitlab | 5 ++--- debian/gitlab-check.sh | 10 +++++----- debian/postinst | 12 ++++++------ debian/postrm | 4 ++-- debian/rake-tasks.sh | 9 +++++---- debian/tests/spec | 3 ++- 6 files changed, 22 insertions(+), 21 deletions(-) diff --git a/debian/conf/gitlab b/debian/conf/gitlab index 57bf8aa27d..c1c86e87ac 100755 --- a/debian/conf/gitlab +++ b/debian/conf/gitlab @@ -7,9 +7,8 @@ # Normal values are "production", "test" and "development". RAILS_ENV="production" -# Read and export debian specific configuration -# Only exported variables will be passed on to gitlab app -export $(cat /etc/gitlab/gitlab-debian.conf) +# Read debian specific configuration +. /etc/gitlab/gitlab-debian.conf # app_user defines the user that GitLab is run as. # The default is "git". diff --git a/debian/gitlab-check.sh b/debian/gitlab-check.sh index b8b85af374..bbfd6bb0f4 100755 --- a/debian/gitlab-check.sh +++ b/debian/gitlab-check.sh @@ -2,12 +2,12 @@ set -e -# Read and export debian specific configuration -# Only exported variables will be passed on to gitlab app -export $(cat /etc/gitlab/gitlab-debian.conf) +# Read debian specific configuration +. /etc/gitlab/gitlab-debian.conf +export DB RAILS_ENV + cd /usr/share/gitlab # Check gitlab is configured correctly printf "Check if Gitlab is configured correctly...\n" -su ${gitlab_user} -s /bin/sh -c 'bundle exec rake gitlab:check RAILS_ENV=production' - +su ${gitlab_user} -s /bin/sh -c 'bundle exec rake gitlab:check' diff --git a/debian/postinst b/debian/postinst index ec8de0f0c5..f05420d7c3 100755 --- a/debian/postinst +++ b/debian/postinst @@ -40,19 +40,19 @@ gitlab_debian_defaults_copy=/var/lib/gitlab/gitlab-debian.defaults # `abort-remove' or `abort-deconfigure'. ####################################################################### -# Read and export debian specific configuration -# Only exported variables will be passed on to gitlab app +# Read debian specific configuration ####################################################################### # Bootstrap config file - first try -export $(cat ${gitlab_debian_conf_example}) +. ${gitlab_debian_conf_example} # second try test -f ${gitlab_debian_conf_private} || \ cp ${gitlab_debian_conf_example} ${gitlab_debian_conf_private} -export $(cat ${gitlab_debian_conf_private}) +. ${gitlab_debian_conf_private} # If /etc/gitlab/gitlab-debian.conf is already present, use it -test -f ${gitlab_debian_conf} && export $(cat ${gitlab_debian_conf}) +test -f ${gitlab_debian_conf} && . ${gitlab_debian_conf} +export DB RAILS_ENV # Read default values (we cannot do this before gitlab-debian.conf is exported # as we want to override variables set by gitlab-debian.conf in earlier gitlab @@ -76,7 +76,7 @@ fi ####################################################################### # update Gemfile.lock, always ####################################################################### -su ${gitlab_user} -s /bin/sh -c 'truncate -s 0 ${gitlab_data_dir}/Gemfile.lock' +su ${gitlab_user} -s /bin/sh -c "truncate -s 0 ${gitlab_data_dir}/Gemfile.lock" cd ${gitlab_app_root} if ! su ${gitlab_user} -s /bin/sh -c 'bundle --local --quiet'; then if [ "$1" = "triggered" ]; then diff --git a/debian/postrm b/debian/postrm index 13260437b3..0ea3f0159c 100644 --- a/debian/postrm +++ b/debian/postrm @@ -17,8 +17,8 @@ gitlab_debian_defaults=/var/lib/gitlab/gitlab-debian.defaults # Ensure the menu system is updated -# Read and export debian specific configuration -test -f ${gitlab_debian_conf} && export $(cat ${gitlab_debian_conf}) +# Read debian specific configuration +test -f ${gitlab_debian_conf} && . ${gitlab_debian_conf} . ${gitlab_debian_defaults} case "$1" in diff --git a/debian/rake-tasks.sh b/debian/rake-tasks.sh index 94631968d6..df64c78a26 100755 --- a/debian/rake-tasks.sh +++ b/debian/rake-tasks.sh @@ -2,9 +2,10 @@ set -e -# Read and export debian specific configuration -# Only exported variables will be passed on to gitlab app -export $(cat /etc/gitlab/gitlab-debian.conf) +# Read debian specific configuration +. /etc/gitlab/gitlab-debian.conf +export DB RAILS_ENV + cd /usr/share/gitlab # Check if the db is already present @@ -25,4 +26,4 @@ fi chmod 0700 ${gitlab_data_dir}/.gitlab_shell_secret echo "Precompiling assets..." -su ${gitlab_user} -s /bin/sh -c 'bundle exec rake tmp:cache:clear assets:precompile RAILS_ENV=production' +su ${gitlab_user} -s /bin/sh -c 'bundle exec rake tmp:cache:clear assets:precompile' diff --git a/debian/tests/spec b/debian/tests/spec index a4c25cbbf6..e8692353bf 100755 --- a/debian/tests/spec +++ b/debian/tests/spec @@ -18,11 +18,12 @@ set -ex cd /usr/share/gitlab su gitlab -c 'truncate -s 0 Gemfile.lock' -export $(cat /etc/gitlab/gitlab-debian.conf) +. /etc/gitlab/gitlab-debian.conf export INCLUDE_TEST_DEPENDS="true" su gitlab -c "bundle install --local" su gitlab -c "mkdir -p tmp/tests/gitlab-shell" export RAILS_ENV=test +export DB=postgres export dbname=gitlab_test su postgres -c "createdb $dbname" # enable the pg_trgm extension