首頁 > 後端開發 > php教程 > 关于github使用webhook部署代码的问题?

关于github使用webhook部署代码的问题?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
發布: 2016-06-06 20:14:00
原創
1827 人瀏覽過

使用PHP处理github发送过来的请求,测试正常。在调用脚本或使用exec()执行命令总是不能成功。

1

2

3

4

5

6

7

8

<code>// 判断签名是否匹配

if ($hash === $payloadHash) {

    // 调用shell

    // file_put_contents('/var/www/niucunhui.io/auto/test.txt', '程序走到这里了');

    exec('cd /var/www/niucunhui.io/auto/ && git pull');

}

 

</code>

登入後複製
登入後複製

file_put_contents可以写入内容,证明签名是匹配成功的。在服务器单独执行脚本,也是可以pull代码。

脚本如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

<code>#!/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."

</code>

登入後複製
登入後複製

单独写一个PHP程序 exec()命令也是可以执行的。

请问,还有可能是那里的问题?
服务器版本 CentOS 6.5
PHP版本 5.6.15

回复内容:

使用PHP处理github发送过来的请求,测试正常。在调用脚本或使用exec()执行命令总是不能成功。

1

2

3

4

5

6

7

8

<code>// 判断签名是否匹配

if ($hash === $payloadHash) {

    // 调用shell

    // file_put_contents('/var/www/niucunhui.io/auto/test.txt', '程序走到这里了');

    exec('cd /var/www/niucunhui.io/auto/ && git pull');

}

 

</code>

登入後複製
登入後複製

file_put_contents可以写入内容,证明签名是匹配成功的。在服务器单独执行脚本,也是可以pull代码。

脚本如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

<code>#!/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."

</code>

登入後複製
登入後複製

单独写一个PHP程序 exec()命令也是可以执行的。

请问,还有可能是那里的问题?
服务器版本 CentOS 6.5
PHP版本 5.6.15

https://zhuzhenyu.org/2016/01/03/php-github-php/

git命令需要写全路径

相關標籤:
php
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板