关于github使用webhook部署代码的问题?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了关于github使用webhook部署代码的问题?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1731字,纯文字阅读大概需要3分钟。
内容图文
使用PHP处理github发送过来的请求,测试正常。在调用脚本或使用exec()执行命令总是不能成功。// 判断签名是否匹配
if ($hash === $payloadHash) {
// 调用shell
// file_put_contents('/var/www/niucunhui.io/auto/test.txt', '程序走到这里了');
exec('cd /var/www/niucunhui.io/auto/ && git pull');
}
file_put_contents可以写入内容,证明签名是匹配成功的。在服务器单独执行脚本,也是可以pull代码。
脚本如下:
#!/bin/bash
WEB_PATH='/var/www/niucunhui.io/sql-optimize-referance/'
WEB_USER='www'
WEB_USERGROUP='www'
echo "Start deployment"
cd $WEB_PATH
echo "pulling source code..."
git reset --hard origin/master
git clean -f
git pull
git checkout master
echo "changing permissions..."
chown -R $WEB_USER:$WEB_USERGROUP $WEB_PATH
echo "Finished."
单独写一个PHP程序 exec()命令也是可以执行的。
请问,还有可能是那里的问题?
服务器版本 CentOS 6.5
PHP版本 5.6.15
回复内容:
使用PHP处理github发送过来的请求,测试正常。在调用脚本或使用exec()执行命令总是不能成功。
// 判断签名是否匹配
if ($hash === $payloadHash) {
// 调用shell
// file_put_contents('/var/www/niucunhui.io/auto/test.txt', '程序走到这里了');
exec('cd /var/www/niucunhui.io/auto/ && git pull');
}
file_put_contents可以写入内容,证明签名是匹配成功的。在服务器单独执行脚本,也是可以pull代码。
脚本如下:
#!/bin/bash
WEB_PATH='/var/www/niucunhui.io/sql-optimize-referance/'
WEB_USER='www'
WEB_USERGROUP='www'
echo "Start deployment"
cd $WEB_PATH
echo "pulling source code..."
git reset --hard origin/master
git clean -f
git pull
git checkout master
echo "changing permissions..."
chown -R $WEB_USER:$WEB_USERGROUP $WEB_PATH
echo "Finished."
单独写一个PHP程序 exec()命令也是可以执行的。
请问,还有可能是那里的问题?
服务器版本 CentOS 6.5
PHP版本 5.6.15
https://zhuzhenyu.org/2016/01/03/php-github-php/
git命令需要写全路径
内容总结
以上是互联网集市为您收集整理的关于github使用webhook部署代码的问题?全部内容,希望文章能够帮你解决关于github使用webhook部署代码的问题?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。