php webhook git钩子

  开发
 <?php
    // 安全验证字符串,为空则不验证
    $token = '123456';
    //  payload为字符串,需要经过解析
    $payload = file_get_contents('php://input');
    if (!$payload) {
        header('HTTP/1.1 400 Bad Request');
        die('HTTP HEADER or POST is missing.');
    }

    //检查是否为master分支
    if($pay_load["ref"] != "refs/heads/master"){
        exit('ok 401');
    }

    $content = json_decode($payload, true);
    // 如果启用验证,并且验证失败,返回错误
    if ($token && $content['secret'] != $token) {
        header('HTTP/1.1 403 Permission Denied');
        die('Permission denied.');
    }
    // shell_exec函数默认是禁止的,无法使用的话需要进php.ini修改相关配置
    shell_exec("bash /root/dev/build.sh &>> /root/test.log");
    die("done " . date('Y-m-d H:i:s', time()));

LEAVE A COMMENT

Captcha Code