Оновлення до нової версії
Оновлення, після якого клуб працює далі: копія бази перед стартом, ваші налаштування на місці, відкат однією командою.
Правило перше — не оновлюватись перед вечором
Оновлюйтесь вранці або в вихідний день, коли зал порожній. Не о 18:00 у пʼятницю. Будь-яке оновлення має ненульовий шанс піти не так, і різниця лише в тому, скільки людей це побачить.
Як оновитись
Розпакуйте нову версію в окрему теку (наприклад C:\Install\cordarena\new) і запустіть на ПК
сервера від адміністратора:
powershell -ExecutionPolicy Bypass -File C:\CordArena\Club\update-club.ps1 -From C:\Install\cordarena\new
Що робить скрипт:
- Робить копію бази перед оновленням. Міграції бази незворотні — після оновлення повернути стару версію без копії вже не вийде.
- Зберігає ваш
appsettings.json. Порт, назва клубу, ключі, налаштування фіскалізації, Telegram — усе лишається вашим. Нова версія не кладе свій конфіг поверх. - Відкладає поточну версію в
C:\CordArena\Club.previous— для відкату. - Кладе нову, піднімає службу, перевіряє, що сервер живий.
- Якщо не піднявся — відкочується сам, без вашої участі.
⚠️ Не використовуйте для оновлення
install-club.ps1. Це скрипт першої установки.
Відкат
Якщо нова версія піднялась, але поводиться не так:
powershell -ExecutionPolicy Bypass -File C:\CordArena\Club\update-club.ps1 -Rollback
Повертається попередня версія з теки Club.previous, ваш конфіг лишається вашим.
⚠️ Відкат повертає програму, але не базу. Якщо нова версія встигла оновити схему бази, стара її вже не відкриє — і чесно про це скаже, замість того щоб мовчки втратити таблиці. Тоді поруч із відкатом треба відновити базу з копії, яку скрипт зробив перед оновленням: див. Копії бази і відновлення.
Яка версія стоїть зараз
Адреса /api/version показує версію програми і номер схеми бази. Це найкоротший спосіб
переконатись, що оновлення справді доїхало, а служба не піднялась зі старої теки.
Агенти на ігрових ПК
Агент і замок оновлюються окремо — на кожній машині. Тут є одна річ, про яку треба знати заздалегідь.
Сервер і агент домовляються за номером протоколу — його видно у /api/version поруч із
версією. Поки номер той самий, старі агенти чудово працюють із новим сервером, і зал можна
оновлювати поступово: наприклад, коли машини перезавантажують зранку.
Якщо ж у новій версії номер протоколу змінився — старі агенти сервер не пустить, і скаже чому: «Версія протоколу 1, сервер працює з 2». Тоді зал треба оновити разом із сервером, одним заходом. Скрипт оновлення попереджає про це відразу після старту нової версії, а не залишає на здогад.
Тому просте правило: після оновлення сервера гляньте на карту залу. Якщо машини не повернулись на звʼязок за пару хвилин — це не «зависло», це протокол.