Files
image/hook/hook.php
T
2018-06-15 00:30:19 +09:00

29 lines
735 B
PHP

<?php
namespace sammo\img_service;
include(__DIR__.'/gogs_key.php');
$raw_payload = $_POST['payload']??'false';
$valid_hmac = $_SERVER['HTTP_X_GOGS_SIGNATURE']??'';
$req_hmac = hash_hmac('sha256', $raw_payload, Key::KEY);
if($valid_hmac != $req_hmac){
die('');
}
exec("git pull -q 2>&1", $output);
exec("git ls-files -z ../icons", $raw_img_list);
$raw_img_list = explode("\x00", $raw_img_list[0]);
$img_list = [];
foreach ($raw_img_list as $path) {
$pos = strpos($path, '../icons/');
if($pos === false){
continue;
}
$path = substr($path, $pos + 9);
$img_list[] = $path;
}
file_put_contents('list.json', json_encode($img_list, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES | JSON_PRETTY_PRINT));