Compare commits

..

2 Commits

Author SHA1 Message Date
mercury 759cf1973a update version 2024-04-16 17:45:55 +04:00
mercury a11b7e0664 improve update script 2024-04-16 17:43:07 +04:00
3 changed files with 19 additions and 1 deletions
+8 -1
View File
@@ -994,7 +994,8 @@ class Bot
if (!empty($c['admin']) && (empty($this->time) || ((time() - $this->time) > 3600))) {
$this->time = time();
$current = file_get_contents('/version');
$last = file_get_contents('https://raw.githubusercontent.com/mercurykd/vpnbot/master/version');
$b = exec('git -C / rev-parse --abbrev-ref HEAD');
$last = file_get_contents("https://raw.githubusercontent.com/mercurykd/vpnbot/$b/version");
if (!empty($last) && $last != $this->last && $last != $current) {
$this->last = $last;
$diff = array_slice(explode("\n", $last), 0, count(explode("\n", $last)) - count(explode("\n", $current)));
@@ -4417,6 +4418,12 @@ DNS-over-HTTPS with IP:
$this->exportManual($this->update);
$r = $this->send($this->input['from'], 'update...');
file_put_contents('/update/reload_message', "{$this->input['from']}:{$r['result']['message_id']}");
file_put_contents('/update/key', $this->key);
file_put_contents('/update/curl', json_encode([
'chat_id' => $this->input['chat'],
'message_id' => $r['result']['message_id'],
'text' => '~t~'
], JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES));
file_put_contents('/update/pipe', '1');
$this->delete($this->input['from'], $this->input['message_id']);
}
+9
View File
@@ -9,16 +9,25 @@ do
branch=$(cat $pwd/update/branch 2>/dev/null)
if [[ -n "$cmd" ]]
then
key=$(cat $pwd/update/key)
curl -H "Content-Type: application/json" -X POST https://api.telegram.org/bot$key/editMessageText -d "$(cat $pwd/update/curl | sed 's/"text":"~t~"/"text": "останавливаю бота"/')"
docker compose down --remove-orphans
curl -H "Content-Type: application/json" -X POST https://api.telegram.org/bot$key/editMessageText -d "$(cat $pwd/update/curl | sed 's/"text":"~t~"/"text": "очищаю директорию"/')"
git reset --hard && git clean -fd
curl -H "Content-Type: application/json" -X POST https://api.telegram.org/bot$key/editMessageText -d "$(cat $pwd/update/curl | sed 's/"text":"~t~"/"text": "скачиваю обновление"/')"
git fetch
if [[ -n "$branch" ]]
then
curl -H "Content-Type: application/json" -X POST https://api.telegram.org/bot$key/editMessageText -d "$(cat $pwd/update/curl | sed 's/"text":"~t~"/"text": "меняю ветку"/')"
git checkout -t origin/$branch || git checkout $branch
fi
curl -H "Content-Type: application/json" -X POST https://api.telegram.org/bot$key/editMessageText -d "$(cat $pwd/update/curl | sed 's/"text":"~t~"/"text": "применяю обновления"/')"
git pull > ./update/message
curl -H "Content-Type: application/json" -X POST https://api.telegram.org/bot$key/editMessageText -d "$(cat $pwd/update/curl | sed 's/"text":"~t~"/"text": "запускаю бота"/')"
IP=$(curl https://ipinfo.io/ip) VER=$(git describe --tags) docker compose up -d --force-recreate
bash $pwd/update/update.sh &
> $pwd/update/key
> $pwd/update/curl
exit 0
fi
sleep 1
+2
View File
@@ -1,3 +1,5 @@
16.04.2024 v1.30
- улучшение скрипта обновления
16.04.2024 v1.29
- рефакторинг подписок
- кнопки импорта для различных клиентов