Add KUMA UI health endpoint workflow
This commit is contained in:
@@ -125,7 +125,7 @@ WHITELIST_TIMEOUT=10
|
||||
|
||||
## Версионирование
|
||||
|
||||
Версия KUMA установлена в `0.0.2`. В дальнейшем увеличивается только третья позиция: `0.0.*`.
|
||||
Версия KUMA установлена в `0.0.3`. В дальнейшем увеличивается только третья позиция: `0.0.*`.
|
||||
|
||||
## SMTP-алерты
|
||||
|
||||
@@ -143,3 +143,5 @@ SMTP_SUBJECT_PREFIX=[KUMA]
|
||||
Для сортировки почты добавлен префикс темы `[KUMA]`. `SMTP_FROM` остаётся реальным адресом SMTP-аккаунта; несуществующий адрес отправителя не используется.
|
||||
|
||||
Добавлен UI на `/` для ручной проверки whitelist и отправки алерта. Whitelist URL предустановлен: `https://whitelist.nodejsk8s.services.ngcloud.ru/v2/app`.
|
||||
|
||||
`POST /alert` больше не отправляет HTML страницы Keycloak. При редиректе отправляется краткое сообщение со статусом и URL авторизации; обычный ответ ограничен 4000 символами.
|
||||
|
||||
@@ -0,0 +1,72 @@
|
||||
# История чата KUMA
|
||||
|
||||
Дата: 2026-08-26
|
||||
|
||||
> Секреты и токены замаскированы.
|
||||
|
||||
## Запросы и действия
|
||||
|
||||
1. Локальный каталог `/home/naeel/nubes/kuma` был привязан к пустому Git-репозиторию:
|
||||
`https://gitea.services.ngcloud.ru/forcloud/kuma.git`.
|
||||
2. Создан stateless Flask-сервис KUMA для whitelist:
|
||||
`https://whitelist.nodejsk8s.services.ngcloud.ru/`.
|
||||
3. Добавлены Docker-файлы и Python-код. Код перенесён в каталог `src/`.
|
||||
4. Добавлен `.gitignore` для `.env`, кэшей Python, окружений, логов, БД, бинарников, архивов, IDE и временных файлов.
|
||||
5. Создан локальный файл секретов `/home/naeel/nubes/kuma/.env`; он игнорируется Git.
|
||||
6. Создан каталог `History` для документации проекта.
|
||||
7. Проверен Gitea Container Registry:
|
||||
`https://gitea.services.ngcloud.ru/v2/`.
|
||||
8. Образы публиковались в Registry:
|
||||
- `gitea.services.ngcloud.ru/forcloud/kuma:0.1.0`
|
||||
- `gitea.services.ngcloud.ru/forcloud/kuma:0.2.0`
|
||||
- `gitea.services.ngcloud.ru/forcloud/kuma:0.2.1`
|
||||
- `gitea.services.ngcloud.ru/forcloud/kuma:0.0.1`
|
||||
- `gitea.services.ngcloud.ru/forcloud/kuma:0.0.2`
|
||||
9. Зафиксировано правило версий: использовать только формат `0.0.*`.
|
||||
10. Проверено, что whitelist endpoint без авторизации отвечает `HTTP 302` с перенаправлением на `/v2/login`.
|
||||
11. В KUMA добавлен `GET /check` для проверки whitelist.
|
||||
12. Добавлен UI на `/` с предустановленным whitelist URL и ручными кнопками проверки и отправки алерта.
|
||||
13. Добавлен `POST /alert`, который получает ответ whitelist и отправляет его по SMTP.
|
||||
14. Для сортировки писем добавлен префикс темы `[KUMA]`.
|
||||
15. SMTP Яндекса проверен напрямую через `smtp.yandex.ru:465` SSL. После включения обязательной настройки IMAP аутентификация прошла.
|
||||
16. Git-коммиты и push выполнялись в ветку `master`.
|
||||
|
||||
## Текущий managed service
|
||||
|
||||
URL UI:
|
||||
|
||||
`https://kuma.containerk8s.dev.nubes.ru/`
|
||||
|
||||
Актуальный образ:
|
||||
|
||||
`gitea.services.ngcloud.ru/forcloud/kuma:0.0.3`
|
||||
|
||||
Последний коммит:
|
||||
|
||||
`будет создан после текущего изменения`
|
||||
|
||||
## Текущие endpoint
|
||||
|
||||
- `GET /` — UI KUMA.
|
||||
- `GET /health` — проверка состояния.
|
||||
- `GET /check` — запрос whitelist без автоматического перехода по redirect.
|
||||
- `POST /alert` — отправка ответа whitelist по SMTP.
|
||||
|
||||
## Конфигурация
|
||||
|
||||
Whitelist URL предустановлен:
|
||||
|
||||
`https://whitelist.nodejsk8s.services.ngcloud.ru/v2/app`
|
||||
|
||||
SMTP использует сервер Яндекса, SSL-порт `465`, полный email как логин и пароль приложения. Значения логина и пароля в этот файл не записываются.
|
||||
|
||||
Тема алертов начинается с:
|
||||
|
||||
`[KUMA]`
|
||||
|
||||
## Важные уточнения
|
||||
|
||||
- IMAP требуется включить в интерфейсе Яндекс Почты, чтобы активировать пароли приложений и OAuth-токены.
|
||||
- KUMA IMAP не использует и почту не читает.
|
||||
- KUMA использует SMTP только для отправки алертов.
|
||||
- Пароли и токены не должны попадать в Git, Dockerfile, образ или History.
|
||||
Reference in New Issue
Block a user