如何在GitLab自定义钩子中构buildmeteor应用程序(做'meteor build。')? 自定义挂钩是由用户git运行的,他似乎没有任何可能运行meteor build。
因此,我想将脚本中的用户更改为已知能够构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 .
su - user与用户user启动交互式 shell。 你将要使用以下内容:
su -c "cd \"$DEPLOYDIR\"; meteor build ." nodejs
解剖:
su :可执行文件
-c "COMMAND" :以另一个用户身份运行COMMAND
nodejs : nodejs用户