summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorritave <olaf.tomalka@gmail.com>2015-11-02 13:48:25 +0100
committerRitave <olaf.tomalka@gmail.com>2016-02-08 16:56:07 +0100
commit1fab3979b1f1a0172a06a22c1a238ce400c2dfe5 (patch)
treeb76939a303a2558d85cb64a28d1780ef22c86b6f
parent05519b554a49057f6551595a3bc3f01e140f3c0b (diff)
downloadgitlab-ce-1fab3979b1f1a0172a06a22c1a238ce400c2dfe5.tar.gz
Fixed init.d script not working on OS X
-s flag of su doesn't work correctly on some systems, loging in the user and not running the requested command. By moving the bash shell init inside the su command we avoid the issue
-rw-r--r--CHANGELOG1
-rwxr-xr-xlib/support/init.d/gitlab2
2 files changed, 2 insertions, 1 deletions
diff --git a/CHANGELOG b/CHANGELOG
index 983a219703a..1954f424a4b 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -35,6 +35,7 @@ v 8.5.0 (unreleased)
- Fixed logo animation on Safari (Roman Rott)
- Hide remove source branch button when the MR is merged but new commits are pushed (Zeger-Jan van de Weg)
- In seach autocomplete show only groups and projects you are member of
+ - Fix: init.d script not working on OS X
v 8.4.4
- Update omniauth-saml gem to 1.4.2
diff --git a/lib/support/init.d/gitlab b/lib/support/init.d/gitlab
index 9e90a99f15b..e5a786bb8c0 100755
--- a/lib/support/init.d/gitlab
+++ b/lib/support/init.d/gitlab
@@ -49,7 +49,7 @@ test -f /etc/default/gitlab && . /etc/default/gitlab
# Switch to the app_user if it is not he/she who is running the script.
if [ `whoami` != "$app_user" ]; then
- eval su - "$app_user" -s $shell_path -c $(echo \")$0 "$@"$(echo \"); exit;
+ eval su - "$app_user" -c $(echo \")$shell_path -l -c \'$0 "$@"\'$(echo \"); exit;
fi
# Switch to the gitlab path, exit on failure.