# 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`.