This bug seems to be caused by "ALWAYS_SET_PATH yes" in /etc/login.defs. It causes runuser to reset PATH.
# export PATH=/usr/share/gitlab/bin:$PATH # runuser -u gitlab -- sh -c 'echo $PATH' /usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games Another workaround: # echo "ALWAYS_SET_PATH no" >> /etc/default/runuser # runuser -u gitlab -- sh -c 'echo $PATH' /usr/share/gitlab/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/root/.local/bin -- Ondrej Zary