lk.zachem.info/public/pull.php
2026-01-16 11:43:00 +08:00

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>";
}