Два образи замість пʼяти: серверні команди їдуть з одного модуля й мусять ходити в схему БД однією версією, а зонд лишається окремо — у чужій мережі йому не місце з DSN і ключами шифрування. Стек піднімає БД, кеш, міграції, API, колектор і Caddy з автоматичним TLS. Міграції окремою службою, бо API піднімається в кількох примірниках і гонка за схему нікому не потрібна. deploy/README.md описує бекап як три речі: дамп, DEK і JWT-ключ. Без DEK дамп не відновлюється — у БД лише шифротекст. Дорогою виправлено .gitignore: голі "netpulse-agent" і "netpulse-server" ігнорували ще й каталоги cmd/ з кодом команд. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
43 lines
1.2 KiB
Text
43 lines
1.2 KiB
Text
# Збірки
|
||
/bin/
|
||
/dist/
|
||
*.exe
|
||
*.test
|
||
# Прив'язка до кореня обов'язкова: голе "netpulse-agent" збігається не
|
||
# лише зі зібраним бінарником, а й із каталогом cmd/netpulse-agent — і
|
||
# git мовчки не бере звідти нові файли. Помітно це стає тоді, коли
|
||
# половина команди зникла з коміту.
|
||
/netpulse-*
|
||
/server/netpulse-*
|
||
/agent/netpulse-*
|
||
|
||
# Секрети й локальні налаштування
|
||
.env
|
||
.env.*
|
||
!.env.example
|
||
*.pem
|
||
*.key
|
||
!testdata/**/*.key
|
||
|
||
# Згенерований TypeScript — регенерується з proto, на відміну від gen/go,
|
||
# який комітиться, щоб збірка агента не залежала від наявності buf.
|
||
/gen/ts/
|
||
|
||
# Інструменти
|
||
.idea/
|
||
.vscode/
|
||
*.swp
|
||
.DS_Store
|
||
|
||
# Дані локального стенду
|
||
/data/
|
||
/var/
|
||
|
||
# Фронтенд
|
||
/web/node_modules/
|
||
/web/dist/
|
||
|
||
# Зібраний фронтенд, вшитий у бінарник API. Кладеться збіркою.
|
||
server/webui/dist/*
|
||
!server/webui/dist/index.html
|
||
!server/webui/dist/.gitignore
|