# documentations
Хранилище документов. Namespace: `documentations`.
```mermaid
flowchart LR
GW[Istio Gateway]:::infra
PG[(PostgreSQL)]:::data
S3[S3 Proxy]:::infra
MinIO[(MinIO)]:::data
KC[Keycloak]:::idp
subgraph NS["ns: documentations"]
Frontend[deployment: frontend]:::comp
API[deployment: api]:::comp
Filestream[deployment: filestream
upload/download]:::comp
PDM[deployment: pdm
product data mgmt]:::comp
CDEAPI[deployment: cde-api
новый CDE API]:::comp
Workers[deployments: cde-api-worker-*
s32d x4, copy, move]:::comp
Frontend --> API
API --> Filestream
API --> PDM
CDEAPI --> API
Workers --> API
end
Zeebe[Camunda / Zeebe]:::infra
CDEPG[(PostgreSQL, общий)]:::data
Valkey[(Valkey)]:::data
DocLink[document-link]:::peer
CDE[cde]:::peer
Transmittal[transmittal]:::peer
GW -->|/docs| Frontend
DocLink -->|REST| API
CDE -->|REST| API
Transmittal -->|REST| API
API --> PG
PDM --> PG
Filestream -->|files| S3 --> MinIO
API -. JWT .-> KC
CDEAPI --> CDEPG
CDEAPI --> Valkey
CDEAPI -->|files| S3
Workers --> CDEPG
Workers -->|jobs| Zeebe
classDef comp fill:#ec4899,stroke:#9d174d,stroke-width:2px,color:#fff
classDef peer fill:#fce7f3,stroke:#9d174d,color:#000
classDef data fill:#10b981,stroke:#065f46,color:#fff
classDef infra fill:#0ea5e9,stroke:#075985,color:#fff
classDef idp fill:#f59e0b,stroke:#92400e,color:#fff
style NS fill:#fdf2f8,stroke:#ec4899,stroke-width:2px
```
## cde-api
`cde-api` — новый CDE API (Go) и 6 воркеров (`s32d-create-upload`, `s32d-process-workflows`, `s32d-publish-documents`, `s32d-handle-error`, `copy`, `move`), развёрнутых в ns `documentations`. Не путать с легаси-сервисом `cde` (`cde-svc.cde`, см. `cde.md`).
- Манифесты: `apps/documentations/base/cde-api*.yaml`, оверлеи — в каталогах контуров (`sarex-contour`, `yc-k8s-test` наследуют `base`; `d8-ugmk-prod`, `uralkal`, `vad` патчат `cde-api`; `ugok`, `brusnika-*`, `wb` — полные копии).
- Postgres, Valkey (`redis`) и S3 общие с documentations. Секреты — Vault Agent (в образы cde-api добавлен busybox для shell-обёртки запуска); путь `secrets/data/apps/cde-api/zeebe` нужно создать. В k8s-контурах (`ugok`, `brusnika-*`, `wb`) вместо Vault используются Secret'ы.
- CronJob'ы (`workspace-recovery`, `resource-id-backfill`, `sizer`) пока не перенесены.
- Подробности: `apps/documentations/cde-api.CONFIGURATION.md`, `cde-api.ENDPOINTS.md`, `cde-api.env.example`, `cde-api.openapi.yaml`.