我的PATH上有一个名为“pullhook”的可执行bash脚本,可以提取一些repos并运行collectstatic
。当我在bash或Python shell中运行它时,它会更新网站:
import os
os.system('pullhook')
我创建了一个视图,它运行上面的代码并返回一个HttpReponse并将其设置为一个URL,所以我可以把它作为我的Github post-receive hook url。但我想我做错了。访问URL不会更新网站。
目前,出于测试目的,可执行文件具有完全权限:
-rwxrwxrwx pullhook*
有人可以指导我如何使用Django设置post-receive挂钩网址吗?
答案 0 :(得分:2)
你对文件权限的直觉很好,但是还有很多其他系统级的东西可能会出错。环境变量,PATH等。我将修改您的pullhook脚本以登录一个众所周知的文件。首先验证它是否正在运行,并使用
进行记录echo "pullhook running" >> /home/youruser/pullhook.log
并类似地将所有必要的调试输出重定向到pullhook.log
文件。