Создание приложения Meteor в пользовательском хуке GitLab

Создание приложения Meteor в пользовательском хуке GitLab

Как мне собрать приложение meteor (выполнить 'meteor build .') в пользовательском хуке GitLab? Пользовательский хук запускается пользователем git, у которого, похоже, нет возможности запустить meteor build.

Поэтому я хочу изменить пользователя в скрипте на того, кто, как известно, способен создать приложение.

Вот мой bash-файл на данный момент:

#!/bin/sh
#

# The deployed directory
DEPLOYDIR=/var/www/site/

echo " - Starting checkout"
GIT_WORK_TREE="$DEPLOYDIR" git checkout -f
echo " - Finished checkout" 

echo " - Starting meteor build"
#not working yet
sudo su - nodejs
cd "$DEPLOYDIR"
meteor build .

решение1

su - userначинаетинтерактивныйshell с пользователем user. Вам нужно будет использовать следующее:

su -c "cd \"$DEPLOYDIR\"; meteor build ." nodejs

Вскрытие:

su: suисполняемый файл
-c "COMMAND": запустить COMMANDот имени другого пользователя
nodejs: nodejsпользователь

Связанный контент