Browse Source

fix debian init script

- use start-stop-daemon's chuid feature insted of su
  - using `su -c` breaks if the git user has no usable shell
  - this fixes #1025
- put --test before --exec, instead it gets passed to gogs
- set cwd via --chdir
pull/1274/head
Björn 10 years ago
parent
commit
6eecbf17cd
  1. 6
      scripts/init/debian/gogs

6
scripts/init/debian/gogs vendored

@ -49,10 +49,12 @@ do_start()
# 1 if daemon was already running # 1 if daemon was already running
# 2 if daemon could not be started # 2 if daemon could not be started
sh -c "start-stop-daemon --start --quiet --pidfile $PIDFILE --make-pidfile \\ sh -c "start-stop-daemon --start --quiet --pidfile $PIDFILE --make-pidfile \\
--exec $DAEMON -- $DAEMON_ARGS --test > /dev/null \\ --test --chdir $WORKINGDIR --chuid $USER \\
--exec $DAEMON -- $DAEMON_ARGS > /dev/null \\
|| return 1" || return 1"
sh -c "start-stop-daemon --start --quiet --pidfile $PIDFILE --make-pidfile \\ sh -c "start-stop-daemon --start --quiet --pidfile $PIDFILE --make-pidfile \\
--background --exec /bin/su -- - $USER -c \"cd \\\"$WORKINGDIR\\\" && $DAEMON -- $DAEMON_ARGS\" \\ --background --chdir $WORKINGDIR --chuid $USER \\
--exec $DAEMON -- $DAEMON_ARGS \\
|| return 2" || return 2"
} }

Loading…
Cancel
Save