Commit Graph

858 Commits

Author SHA1 Message Date
ivan
ddb2fefdf0 pdm drawings URL, notes routes in uralkal, notes contour frontend image
documentations base: pdm-api pointed DRAWINGS_INTERNAL_URL at
drawings-api-service:80, which does not exist in the clusters inheriting
base (vad, d8-ugmk-prod, sarex-contour, uralkal, yc-k8s-test); their drawings
service is backend-service:8000. brusnika and wb keep their own pdm copies.

istio-config uralkal: /notes/api/ -> backend-service.notes:8000 (rewrite
/api/) and /notes/static/ -> frontend-service.notes:80.

notes base frontend image -> notes-frontend:contour_5ff34172.
2026-10-21 17:27:59 +05:00
ivan
91fed827b4 ++ 2026-10-21 17:07:52 +05:00
ivan
be78040179 cross-section: contour image in base, /cross-section/static/ route in uralkal
Base image moves to cross-section-app:contour_c5e5d476 for every cluster
inheriting it. istio-config uralkal routes /cross-section/static/ to
cross-section-static:80.
2026-10-21 16:35:01 +05:00
ivan
2e4879aa53 comparisons/uralkal: PGSSLMODE=disable
comparisons-api-v2 builds its postgres URI without sslmode, so both lib/pq
(migrations) and pgx (api) default to requiring TLS, which the uralkal
postgres does not serve.
2026-10-21 16:29:54 +05:00
ivan
86d8a066cd comparisons: v2 backend in uralkal, routes, contour frontend image
uralkal runs comparisons-api-v2:contour_9a2bab4e (built with bash so the
Vault Agent files can be sourced): migrations up before exec ./api, port 8080
behind the unchanged service port 8000, v2 env schema with uralkal service
addresses. istio-config uralkal routes /comparisons/api/ and
/comparisons/static/. Base frontend image moves to
comparisons-frontend:contour_0570a1f1 for every cluster using base.
2026-10-21 16:22:15 +05:00
ivan
03f6eef5b9 ++ 2026-10-21 15:41:09 +05:00
ivan
2c1ab636ef ++ 2026-10-21 14:10:59 +05:00
ivan
cad5668b5b ++ 2026-10-21 13:31:39 +05:00
emelinda
f22d5cc773 **Update d8-ugmk-prod configurations to fix service references and ensure proper workflow and API integration**
- Replace incorrect `WORKFLOWS_HOST` and `WORKFLOWS_URL` references across multiple YAML files to point to `backend-svc.processing.svc.cluster.local`.
- Update `DOCUMENTATIONS_URL` to use the accurate service name `backend-api-svc.documentations.svc.cluster.local`.
- Adjust `SAREX_API` and related settings for consistency using `https://sarex.uralmine.com`.
- Refactor `production-configmap.yaml` to align environment variable overrides and remove obsolete hardcoded values.
- Resolve key INFRA-3005 issues to prevent Excel export and notification failures caused by invalid DNS and configuration.
2026-10-20 18:01:28 +03:00
emelinda
709985b4a6 **Update d8-ugmk-prod configuration: replace SAREX_API and related endpoints with sarex.uralmine.com and adjust production ConfigMap.** 2026-10-20 17:42:13 +03:00
8c8a3b7cc2 Merge branch 'pdm/update_wb_fix_copy' into 'master'
fix: adding marks via rabbit value

See merge request infra/iac!7
2026-10-16 09:49:35 +00:00
diamondrigido
be58c1cddd fix: adding marks via rabbit value 2026-10-16 11:32:59 +02:00
ivan
8f03e59c97 ++ 2026-10-16 13:54:26 +05:00
ivan
41f2f2f539 ++ 2026-10-16 13:39:59 +05:00
ivan
fc78f0f145 ++ 2026-10-16 13:39:59 +05:00
emelinda
a30c689d50 Merge remote-tracking branch 'origin/master' 2026-10-15 18:37:31 +03:00
emelinda
be09be5067 Update SYSTEM_LOG_URL references to backend-svc.system-log in pdm and filestream configurations 2026-10-15 18:36:10 +03:00
ivan
7f8263ede6 ++ 2026-10-15 20:18:09 +05:00
ivan
2e6fd7bfe8 ++ 2026-10-15 20:15:38 +05:00
emelinda
1067163ef7 Merge remote-tracking branch 'origin/master' 2026-10-15 18:00:43 +03:00
emelinda
c29ad3284d Add HelmRelease configuration for worker in system-log for d8-ugmk-prod 2026-10-15 17:08:24 +03:00
ivan
96c594efe1 ++ 2026-10-15 18:18:38 +05:00
ivan
b36a349aff ++ 2026-10-15 16:58:22 +05:00
ivan
fd78c1bc0b ++ 2026-10-15 13:48:11 +05:00
ivan
ff27b79765 ++ 2026-10-15 13:30:21 +05:00
ivan
7f48b1ad0d django: take HOST from DJANGO_HOST
The base django-configmap hardcoded HOST to the yc-k8s-test domain, and every
cluster inheriting it got that value. HOST now reads DJANGO_HOST with the old
value as the default; backend in vad, uralkal and d8-ugmk-prod sets its own
public host. celery is left on the default.
2026-10-14 16:25:11 +05:00
ivan
9a373f670c brusnika-stage: manage orchestrator and documentations hasher/pdf-markings-amqp in git
Manifests exported from the live cluster with server-side and Helm/Lens
metadata stripped; selectors and pod labels kept as they are so Flux takes
the objects over without restarting pods.

orchestrator: cde API, its Service and ServiceAccount, the v1 workers
installed by the old helm release cde and the v2 workers rolled out today.
documentations: hasher and pdf-markings-amqp. Secrets (cde-secret,
hasher-*, postgres-secret, rabbitmq, yc-s3, dockerhub, regcred) stay in the
cluster only. The old apps/cde/brusnika-stage overlay (namespace contracts,
HelmRelease cde) was never wired; its kustomization now lists only these
manifests.
2026-10-14 15:27:23 +05:00
ivan
e4d145ec95 ++ 2026-10-14 14:49:18 +05:00
ivan
e85bf3800e premises: add app (base + vad) and route /premises/api/ in vad
New service on universal-chart with Vault Agent: role premises, SA
premises-vault, creds for its own postgres, kafka and S3 plus the five
neighbour databases the sync script reads. The vad overlay mounts the Kafka CA
and drops the prod-sized resource requests; istio-config routes
sarex.vadroad.ru/premises/api/ to backend-svc.premises.
2026-10-14 14:48:51 +05:00
ivan
d816a80776 ++ 2026-10-09 14:54:57 +05:00
ivan
ae2c5b5a62 ++ 2026-10-09 14:48:27 +05:00
diamondrigido
a4d7dda8c1 update image for wb 2 2026-10-08 23:00:21 +02:00
diamondrigido
a7077fb9ae update image for wb 2026-10-08 21:25:03 +02:00
ivan
b14783ad36 ++ 2026-10-08 14:56:52 +05:00
ivan
98ec6cc7df ++ 2026-10-08 14:27:41 +05:00
emelinda
6a2240ecd4 Update flows-frontend image reference to contour_4652ff61 in configuration 2026-10-08 11:58:40 +03:00
ivan
fb614030e7 ++ 2026-10-08 00:09:41 +05:00
ivan
5341c355c9 ++ 2026-10-07 23:25:06 +05:00
emelinda
add56bbe3f ++ wb: flows production_81d0fa17, processing MAX_WORKFLOWS_LIMIT 10 2026-10-07 18:58:46 +03:00
ivan
53f4886b29 ++ 2026-10-07 16:16:15 +05:00
ivan
da188eef04 ++ 2026-10-07 15:40:40 +05:00
ivan
2bc78aa7fb ++ 2026-10-07 13:51:10 +05:00
ivan
1099f45a75 ++ 2026-10-06 23:23:56 +05:00
ivan
0d6d6d826b uralkal: pm and message-hub accept flat kafka secret format
KAFKA_SASL_MECHANISM is read from auth.sasl_mechanism when the nested auth
map exists and from the top-level sasl_mechanism otherwise, so the pods start
both before and after kafka/apps/pm switches to creds delivered from the
kafka-topics terraform stack.
2026-10-06 22:40:16 +05:00
ivan
90e684d0a9 uralkal: take Kafka CA from the kafka-kafka-contour-tls secret
flows, issues, pm and message-hub read ca.crt from a copy of the Kafka TLS
secret in their own namespace instead of an inline PEM (flows) or a
per-namespace kafka-ca-cert ConfigMap (issues, pm, message-hub). Mount paths
and env names are unchanged. The secret must exist in each namespace before
the pods restart.
2026-10-06 21:59:43 +05:00
ivan
b1bfb8049a ++ 2026-10-06 18:24:47 +05:00
ivan
8c8a646e03 ++ 2026-10-06 18:19:18 +05:00
ivan
df45eca99f ++ 2026-10-06 17:53:40 +05:00
ivan
563ccefe83 documentations/uralkal: use prod_179e518c_uralkali images for api and filestream 2026-10-06 16:50:50 +05:00
ivan
4117728329 ++ 2026-10-06 16:07:47 +05:00
ivan
47943a4420 ++ 2026-10-06 13:22:11 +05:00
emelinda
2564167f27 Update S3 proxy image reference to stable in brusnika-prod configuration 2026-10-06 00:01:12 +03:00
emelinda
7301e50947 Update AWS_API_ENDPOINT value in brusnika-prod S3 proxy configuration 2026-10-05 23:56:47 +03:00
emelinda
3e9b539f45 Update replicaCount default value to 1 in brusnika-prod backend configuration 2026-10-05 22:09:34 +03:00
emelinda
1c4d9cf1a9 Update replicaCount default value to 2 in brusnika-prod backend configuration. 2026-10-05 14:32:32 +03:00
ivan
2bc3f59580 ++ 2026-10-05 13:28:37 +05:00
ivan
2924e7da5b ++ 2026-10-05 13:25:39 +05:00
ivan
d340ea58aa ++ 2026-10-05 13:03:24 +05:00
ivan
64fe3c00fb control-interface/admin-frontend: drop explicit podAnnotations
universal-chart already injects proxy.istio.io/config and
traffic.sidecar.istio.io/excludeOutboundPorts by default for every
service — explicitly setting them too produced a duplicate-key YAML
error in Flux's post-render step:

  error while running post render on files: ... yaml: unmarshal errors:
    line 42: mapping key "traffic.sidecar.istio.io/excludeOutboundPorts" already defined at line 25
    line 41: mapping key "proxy.istio.io/config" already defined at line 26

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-02 15:40:19 +05:00
ivan
5564778337 control-interface: add admin-frontend (universal-chart) to base, route it in vad istio-config
New HelmRelease services.admin-frontend in apps/control-interface/base,
matching the live Deployment's image/port/resources (cpu 100m, memory
100Mi) and istio tracing podAnnotations. Downward-API envs (K8S_POD_UID/
K8S_POD_NAME/K8S_NAMESPACE/OTEL_RESOURCE_ATTRIBUTES) were left out — no
existing app in this repo uses valueFrom/fieldRef in the universal-chart
envs schema and the chart source isn't reachable to confirm support.
imagePullSecrets uses regcred (vad's actual convention) instead of the
source's dockerhub.

Since control-interface/vad and /uralkal both just inherit ../base
unmodified, this also shows up in uralkal as a side effect.

infrastructure/istio-config/vad: adds a plain admin-frontend route
(/admin-frontend/static/ -> admin-frontend-svc.control-interface, rewrite
/), matching the minimal style of the other sarex.vadroad.ru routes —
no cors block, per request.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-02 15:34:54 +05:00
ivan
0bd15c6ae5 ++ 2026-10-02 14:57:19 +05:00
ivan
e00a7905fb ++ 2026-10-02 14:51:30 +05:00
ivan
7531341438 ++ 2026-10-02 12:33:16 +05:00
ivan
6251cfed5c brusnika-stage: bring images and env vars up to wb level
Missing env vars copied from wb for ams-sync, attachments, bi/frontend,
checklists, django (celery, export-project, sarex-backend), documentations
(api, filestream, pdm), eav, flows (backend, celery, frontend), iam,
inspections, issues (backend, celery), rfi, transmittal/worker.

Image tags updated to match wb for flows (backend/celery/frontend), iam.

Known issue, not yet fixed in this commit: several of the copied env
values are wb-specific hosts (*.wb.ru, one uralmine.com) that don't apply
to brusnika-stage — ZITADEL_HOST/ZITADEL_DOMAIN (django, documentations,
iam), DATABASE_HOST/FLOWS_DB_HOST/ISSUES_DB_HOST (checklists, flows),
SUPERSET_HOST (bi), DJANGO_BASE_HOST/SAREX_BACKEND_URL (flows,
inspections), RESOURCES_INTERNAL_HOST/RESOURCE_URL (ams-sync, django,
flows, notes-related). To be corrected in a follow-up commit.

bi/backend.yaml, bim/backend.yaml and notes/backend.yaml were reverted
before this commit (image-tag updates for bi-backend/bim/notes and bi's
SUPERSET_* env additions are not included).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-01 18:04:55 +05:00
ivan
e4c3294bb8 ++ 2026-10-01 17:43:58 +05:00
diamondrigido
7cac4ff295 fix: update brusnika for copy 2026-09-30 17:17:53 +02:00
ivan
979e5c2a51 uralkal: clear CPU/memory requests for all 36 business apps
Every services.<svc>.deployment.resources.requests.{cpu,memory} across the
36 uralkal apps (69 HelmRelease/service entries total) is now nulled via a
kustomize patch, so Helm never renders a requests block for these pods on
uralkal — Kubernetes won't reserve CPU/memory for them there.

Where a uralkal patch already existed for that service (13 cases:
documentations api/filestream/pdf-markings-amqp, django backend, flows
backend/celery, pm backend/celery, transmittal backend/worker, bi,
document-link, stamp-verification, message-hub), the null block was added
into that same file. Where no uralkal patch existed yet (55 cases,
including all 13 cde workers and every plain frontend), a new minimal
patch file was added and wired into that app's kustomization.yaml.

vad and the other clusters are untouched — only apps/*/uralkal/* changed.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-30 15:06:51 +03:00
ivan
b32e4667c1 ++ 2026-09-30 14:11:08 +03:00
ivan
f48a81f5c2 ++ 2026-09-30 11:10:45 +03:00
ivan
33664b0afb ++ 2026-09-30 11:10:45 +03:00
emelinda
4947d8b675 Merge remote-tracking branch 'origin/master'
# Conflicts:
#	apps/documentations/ugok/filestream.yaml
2026-09-29 10:44:18 +03:00
emelinda
f7ee2ab1af Update image versions for ugok services in api.yaml and filestream.yaml. 2026-09-29 10:43:48 +03:00
ivan
92efab2ecd ++ 2026-09-28 15:57:47 +03:00
ivan
9ec172c0f4 uralkal: replicate the vad business-app footprint (36 apps) with uralkal domains
apps/<app>/uralkal mirrors apps/<app>/vad for all 36 apps from
clusters/vad/kustomization.yaml, with domains remapped (not a suffix swap —
vad's sarex-login.vadroad.ru etc. use a different host scheme than uralkal's
login.sarex.local.uralkali.com). Two things are left as explicit
placeholders pending real infra: the Zitadel client_id/org_id
(TBD_URALKAL_ZITADEL_CLIENT_ID, since uralkal's Zitadel has no application
registered yet) and the Kafka CA cert in pm/issues/message-hub/flows
(copied from vad, will need swapping once uralkal's Kafka actually
generates its own CA, same as vad's history).

infrastructure/s3-proxy/uralkal: new component, nginx upstream points at
the single uralkal minio endpoint (10.133.0.245:9000) from terraform,
unlike vad's 4-node list.

clusters/uralkal/kustomization.yaml: wires in s3-proxy + all 36 apps.

infrastructure/istio-config/uralkal/istio-config.yaml: adds the 28
path-routed virtualServices under sarex.local.uralkali.com (mirroring
vad's sarex.vadroad.ru routing, incl. the documentations-api CORS policy)
plus stamp-verification/document-link/s3 on their already-declared hosts.
Pre-existing zitadel/superset/camunda-operate blocks are untouched.

apps/django/vad/backend.yaml: drop a stale explanatory comment (also
removed from the uralkal copy before this commit).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-28 14:56:17 +03:00
ivan
6e8151fed6 ++ 2026-09-27 22:34:07 +03:00
ivan
954e0a7231 ++ 2026-09-27 21:44:39 +03:00
emelinda
cdaf20f7cc Add "Справочники" section to django-configmap navigation menu. 2026-09-24 21:26:42 +03:00
emelinda
380986659e Update backend worker image version in celery.yaml. 2026-09-24 21:17:39 +03:00
emelinda
21dcac2d1d Update frontend and backend image versions in deployment configurations. 2026-09-24 21:07:59 +03:00
ivan
f6df384388 added asterus 2026-09-23 23:36:27 +05:00
ivan
5ae853bbf2 asterus: deploy auth-flow
First business app on asterus, overlay copied from brusnika-prod
(no namespace.yaml — ns and regcred created manually, out of band).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-23 14:34:14 +05:00
ivan
a3f9fb5ee9 vad: pdf-markings-amqp hosts/bucket override, stamp-verification and document-link frontend images
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-23 13:03:29 +05:00
ivan
40f5552951 ++ 2026-09-22 12:00:31 +05:00
ivan
a5750ed220 ++ 2026-09-22 01:47:43 +05:00
ivan
48924262aa vad: contracts DB_URL from the Vault postgres secret (external database)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-21 17:31:50 +05:00
ivan
5c7369ed70 vad: replace kafka CA with the vad kafka-kafka-contour CA in flows, issues, pm, message-hub
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-21 15:54:05 +05:00
ivan
be6e8b26fb ++ 2026-09-21 15:28:12 +05:00
ivan
f648d01629 vad: iam zitadel org rules with the vad default org id
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-21 13:18:54 +05:00
ivan
a1afea5ae3 ++ 2026-09-18 17:56:09 +05:00
ivan
f62dfb037d vad: pm, message-hub, cde
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-18 02:37:49 +05:00
ivan
410fd96439 ++ 2026-09-17 21:08:16 +05:00
ivan
4edb8d1274 vad: faas, iam
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-17 20:07:13 +05:00
ivan
b0b6b65ec7 vad: attachments, bi, comparisons, drawings, inspections, mapper, measurements, subscriptions, system-log, transmittal, cross-section, document-link, prescriptions, projects, stamp-verification
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-17 20:01:20 +05:00
ivan
11007c0bc6 vad: processing, flows, issues, bim
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-17 19:49:38 +05:00
ivan
d17d2548c2 vad: django, documentations
django's nginx-configmap is patched for vad: pm and processing aren't
deployed there yet (kept commented out), documentations is enabled
since it's going in alongside django this time.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-17 19:26:27 +05:00
ivan
82f12762fc vad: notes, rfi, checklists, contracts (postgres ready; S3 pending stage 2 for notes/rfi/contracts)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-17 18:52:31 +05:00
ivan
a10ee6b6d5 vad: eav (postgres ready, S3 secret pending stage 2 in terraform repo)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-17 18:17:35 +05:00
ivan
b5bd5b7dc4 vad: workspaces
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-17 17:22:47 +05:00
ivan
dabf7e1256 vad: add missing control-interface namespace
apps/control-interface/base has no namespace.yaml (unlike reviews,
remarks, auth-flow), so Flux failed applying the HelmRelease into a
namespace that was never created.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-17 17:02:00 +05:00
ivan
169e2294aa vad: reviews, remarks, auth-flow, control-interface
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-17 16:45:19 +05:00