# ArgoCD: sova-root, data-test и «почему нельзя войти» В UI ArgoCD видны приложения разных типов. Не у всех есть URL в браузере или смысл открывать Terminal «как в backend». ## Сводная таблица | Application | Что деплоит | Namespace | Есть URL? | Terminal | |-------------|-------------|-----------|-----------|----------| | **sova-root** | другие `Application` CR (app-of-apps) | `argocd` | нет | нет pod'ов | | **data-test** | PostgreSQL, MySQL, Redis (Helm Bitnami) | `sova-data-test` | нет | только в pod БД | | **backend-test** | Symfony API | `sova-test` | api.test.sova.local | php-fpm | | **adminpanel-test** | React admin | `sova-test` | admin.test.sova.local | nginx | | **cabinet-test** | Symfony ЛК | `sova-test` | cabinet.test.sova.local | php-fpm | | **docs-test** | документация (nginx) | `sova-test` | docs.sova.local | nginx | | **mocks-test** | WireMock, Mailpit | `sova-mocks` | internal only | по pod | --- ## sova-root — «корневое» GitOps-приложение **Назначение:** паттерн *app-of-apps*. Один `Application` следит за каталогом `sova-deploy/argocd/apps/` и создаёт/обновляет остальные Application-манифесты (`backend-test`, `data-test`, …). **Почему «нельзя войти»:** - Это **мета-приложение**. Оно не разворачивает Deployment, Service или Ingress. - В дереве ресурсов — только объекты типа `Application` в namespace `argocd`. - Нет веб-интерфейса, логина пользователя или pod'а для exec. **Как пользоваться:** смотрите дочерние приложения (`backend-test`, `docs-test`, …). `sova-root` нужен для автоматического подхвата новых Application при push в `sova-deploy`. ```mermaid flowchart TB root["sova-root Application"] apps["argocd/apps/*.yaml"] be["backend-test"] data["data-test"] docs["docs-test"] root --> apps apps --> be & data & docs ``` --- ## data-test — инфраструктура данных **Назначение:** Helm-чарт `sova-deploy/data/test` — PostgreSQL (backend + cabinet БД), MySQL Bitrix, Redis для test-контура. **Почему «нельзя войти»:** - Это **слой данных**, не пользовательское приложение. - Нет Ingress и публичного hostname. - «Войти» в ArgoCD UI можно только в смысле открыть карточку приложения — там StatefulSet/Deployment БД, а не сайт. **Как подключаться:** ```bash # PostgreSQL из другого pod в кластере postgresql-test.sova-data-test.svc.cluster.local:5432 # Инициализация schema/seed — отдельный Job db-init (чарт data/db-init), не через браузер kubectl get jobs -n sova-data-test ``` **Terminal:** технически можно `exec` в pod PostgreSQL/MySQL, но это для DBA/отладки, не «логин в приложение». **Sync degraded:** если в чарте `data/test` был лишний шаблон `db-init` с несуществующими values (`postgres.*` вместо `postgresql.*`), Application падал в ошибку. Инициализация БД выполняется **отдельным** чартом `data/db-init` через `deploy-test-stack.sh`. --- ## Куда идти вместо этого | Задача | Куда | |--------|------| | API, миграции, cron | **backend-test** → Pod → container **php-fpm** → Terminal | | Админка | **adminpanel-test** → http://admin.test.sova.local | | Личный кабинет | **cabinet-test** → http://cabinet.test.sova.local | | Документация | **docs-test** → http://docs.sova.local | | Git, CI | http://git.sova.local | | Метрики/логи | http://grafana.sova.local | Exec в ArgoCD включён в `platform/argocd/values-test.yaml` (`exec.enabled: true`).