34 lines
942 B
PHP
34 lines
942 B
PHP
<?php
|
|
//комментарий
|
|
|
|
$key = "developer@zachem.info";
|
|
$payload = trim(file_get_contents("php://input"));
|
|
|
|
$hash = hash_hmac('sha256', $payload, $key, false);
|
|
|
|
$signature = $_SERVER['HTTP_X_GITEA_SIGNATURE']?? '';
|
|
file_put_contents("/var/www/lk/storage/logs/temp_sign", print_r($signature, 1));
|
|
// check payload signature against header signature
|
|
if ($hash !== $signature)
|
|
{
|
|
error_log('FAILED - payload signature mismatch');
|
|
exit("wrong signature");
|
|
}
|
|
|
|
$json = json_decode($payload, true);
|
|
file_put_contents("/var/www/lk/storage/logs/temp_json", print_r($json, 1));
|
|
|
|
if (json_last_error() !== JSON_ERROR_NONE)
|
|
{
|
|
error_log('FAILED - json decode - '. json_last_error());
|
|
exit(json_last_error());
|
|
}
|
|
|
|
if(strcmp($json['object_kind'], 'push') == 0)
|
|
{
|
|
$result = shell_exec("cd /var/www/lk && git reset --hard HEAD && git pull");
|
|
file_put_contents("/var/www/lk/storage/logs/temp_exec", print_r($result, 1));
|
|
echo "<p>$result</p>";
|
|
}
|
|
|