From a8b93b36ad9d0b35713cfb7fc4968e0d6a422d10 Mon Sep 17 00:00:00 2001 From: ATM Platform Date: Mon, 22 Jun 2026 14:23:52 +0000 Subject: [PATCH] nutricao:1.0 (novo contexto: planos alimentares + alimentos) + cadastro:1.6 (Convidado) + bff:1.25 + frontend:1.42 --- tenants/acme/30-apps-stubs.yaml | 1 + tenants/acme/80-servico-cadastro.yaml | 2 +- tenants/acme/85-servico-nutricao.yaml | 54 +++++++++++++++++++++++++ tenants/acme/90-servico-bff.yaml | 3 +- tenants/acme/95-frontend-spa.yaml | 2 +- tenants/demo/30-apps-stubs.yaml | 1 + tenants/demo/80-servico-cadastro.yaml | 2 +- tenants/demo/85-servico-nutricao.yaml | 54 +++++++++++++++++++++++++ tenants/demo/90-servico-bff.yaml | 3 +- tenants/demo/95-frontend-spa.yaml | 2 +- tenants/piloto/30-apps-stubs.yaml | 1 + tenants/piloto/80-servico-cadastro.yaml | 2 +- tenants/piloto/85-servico-nutricao.yaml | 54 +++++++++++++++++++++++++ tenants/piloto/90-servico-bff.yaml | 3 +- tenants/piloto/95-frontend-spa.yaml | 2 +- 15 files changed, 177 insertions(+), 9 deletions(-) create mode 100644 tenants/acme/85-servico-nutricao.yaml create mode 100644 tenants/demo/85-servico-nutricao.yaml create mode 100644 tenants/piloto/85-servico-nutricao.yaml diff --git a/tenants/acme/30-apps-stubs.yaml b/tenants/acme/30-apps-stubs.yaml index c140c28..ddcfe1f 100644 --- a/tenants/acme/30-apps-stubs.yaml +++ b/tenants/acme/30-apps-stubs.yaml @@ -65,6 +65,7 @@ spec: - { path: /api/administrativo, pathType: Prefix, backend: { service: { name: servico-administrativo, port: { number: 80 } } } } - { path: /api/assistencia-social, pathType: Prefix, backend: { service: { name: servico-assistencia-social, port: { number: 80 } } } } - { path: /api/pedagogico, pathType: Prefix, backend: { service: { name: servico-pedagogico, port: { number: 80 } } } } +- { path: /api/nutricao, pathType: Prefix, backend: { service: { name: servico-nutricao, port: { number: 80 } } } } - { path: /api, pathType: Prefix, backend: { service: { name: backend, port: { number: 80 } } } } - { path: /, pathType: Prefix, backend: { service: { name: frontend-spa, port: { number: 80 } } } } - host: auth-acme.athleticmap.influxdigital.com.br diff --git a/tenants/acme/80-servico-cadastro.yaml b/tenants/acme/80-servico-cadastro.yaml index 3daa1f1..9198b12 100644 --- a/tenants/acme/80-servico-cadastro.yaml +++ b/tenants/acme/80-servico-cadastro.yaml @@ -21,7 +21,7 @@ spec: spec: containers: - name: servico-cadastro - image: docker.io/library/servico-cadastro:1.5 + image: docker.io/library/servico-cadastro:1.6 imagePullPolicy: Never ports: [{ containerPort: 8083 }] env: diff --git a/tenants/acme/85-servico-nutricao.yaml b/tenants/acme/85-servico-nutricao.yaml new file mode 100644 index 0000000..cf8a69d --- /dev/null +++ b/tenants/acme/85-servico-nutricao.yaml @@ -0,0 +1,54 @@ +# Bounded context "nutricao" (planos alimentares + catalogo de alimentos, ADR-0002). +# Schema proprio "nutricao"; roteado em /api/nutricao no ingress. +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: servico-nutricao + namespace: acme-prod + labels: { app: servico-nutricao, athleticmap.io/contexto: nutricao } +spec: + replicas: 1 + selector: { matchLabels: { app: servico-nutricao } } + template: + metadata: + labels: { app: servico-nutricao, athleticmap.io/contexto: nutricao } + spec: + containers: + - name: servico-nutricao + image: docker.io/library/servico-nutricao:1.0 + imagePullPolicy: Never + ports: [{ containerPort: 8083 }] + env: + - { name: SPRING_DATASOURCE_URL, value: "jdbc:postgresql://postgres:5432/athleticmap" } + - { name: SPRING_DATASOURCE_USERNAME, value: "atm" } + - { name: SPRING_DATASOURCE_HIKARI_MAXIMUM_POOL_SIZE, value: "5" } + - name: SPRING_DATASOURCE_PASSWORD + valueFrom: + secretKeyRef: { name: db-credentials, key: password } + - { name: ATM_JWK_SET_URI, value: "http://keycloak:8080/realms/athleticmap/protocol/openid-connect/certs" } + - { name: ATM_ISSUER, value: "https://auth-acme.athleticmap.influxdigital.com.br/realms/athleticmap" } + - { name: ATM_TENANT, value: "acme" } + resources: + requests: { cpu: 100m, memory: 300Mi } + limits: { cpu: "1", memory: 640Mi } + readinessProbe: + httpGet: { path: /api/nutricao/health, port: 8083 } + initialDelaySeconds: 25 + periodSeconds: 10 + failureThreshold: 30 + livenessProbe: + httpGet: { path: /actuator/health/liveness, port: 8083 } + initialDelaySeconds: 60 + periodSeconds: 20 + failureThreshold: 6 +--- +apiVersion: v1 +kind: Service +metadata: + name: servico-nutricao + namespace: acme-prod + labels: { app: servico-nutricao } +spec: + selector: { app: servico-nutricao } + ports: [{ name: http, port: 80, targetPort: 8083 }] diff --git a/tenants/acme/90-servico-bff.yaml b/tenants/acme/90-servico-bff.yaml index 0620371..062cc66 100644 --- a/tenants/acme/90-servico-bff.yaml +++ b/tenants/acme/90-servico-bff.yaml @@ -20,7 +20,7 @@ spec: spec: containers: - name: servico-bff - image: docker.io/library/servico-bff:1.23 + image: docker.io/library/servico-bff:1.25 imagePullPolicy: Never ports: [{ containerPort: 8083 }] env: @@ -35,6 +35,7 @@ spec: - { name: ATM_ADMINISTRATIVO_URL, value: "http://servico-administrativo" } - { name: ATM_ASSISTENCIA_SOCIAL_URL, value: "http://servico-assistencia-social" } - { name: ATM_PEDAGOGICO_URL, value: "http://servico-pedagogico" } +- { name: ATM_NUTRICAO_URL, value: "http://servico-nutricao" } - { name: ATM_JWK_SET_URI, value: "http://keycloak:8080/realms/athleticmap/protocol/openid-connect/certs" } - { name: ATM_ISSUER, value: "https://auth-acme.athleticmap.influxdigital.com.br/realms/athleticmap" } - { name: ATM_TENANT, value: "acme" } diff --git a/tenants/acme/95-frontend-spa.yaml b/tenants/acme/95-frontend-spa.yaml index 7c5cbf7..0e8ac7c 100644 --- a/tenants/acme/95-frontend-spa.yaml +++ b/tenants/acme/95-frontend-spa.yaml @@ -20,7 +20,7 @@ spec: spec: containers: - name: frontend-spa - image: docker.io/library/frontend-spa:1.40 + image: docker.io/library/frontend-spa:1.42 imagePullPolicy: Never ports: [{ containerPort: 80 }] env: diff --git a/tenants/demo/30-apps-stubs.yaml b/tenants/demo/30-apps-stubs.yaml index 1456596..6d64125 100644 --- a/tenants/demo/30-apps-stubs.yaml +++ b/tenants/demo/30-apps-stubs.yaml @@ -65,6 +65,7 @@ spec: - { path: /api/administrativo, pathType: Prefix, backend: { service: { name: servico-administrativo, port: { number: 80 } } } } - { path: /api/assistencia-social, pathType: Prefix, backend: { service: { name: servico-assistencia-social, port: { number: 80 } } } } - { path: /api/pedagogico, pathType: Prefix, backend: { service: { name: servico-pedagogico, port: { number: 80 } } } } +- { path: /api/nutricao, pathType: Prefix, backend: { service: { name: servico-nutricao, port: { number: 80 } } } } - { path: /api, pathType: Prefix, backend: { service: { name: backend, port: { number: 80 } } } } - { path: /, pathType: Prefix, backend: { service: { name: frontend-spa, port: { number: 80 } } } } - host: auth-demo.athleticmap.influxdigital.com.br diff --git a/tenants/demo/80-servico-cadastro.yaml b/tenants/demo/80-servico-cadastro.yaml index 794cfa9..9a9f3a4 100644 --- a/tenants/demo/80-servico-cadastro.yaml +++ b/tenants/demo/80-servico-cadastro.yaml @@ -21,7 +21,7 @@ spec: spec: containers: - name: servico-cadastro - image: docker.io/library/servico-cadastro:1.5 + image: docker.io/library/servico-cadastro:1.6 imagePullPolicy: Never ports: [{ containerPort: 8083 }] env: diff --git a/tenants/demo/85-servico-nutricao.yaml b/tenants/demo/85-servico-nutricao.yaml new file mode 100644 index 0000000..5e0938b --- /dev/null +++ b/tenants/demo/85-servico-nutricao.yaml @@ -0,0 +1,54 @@ +# Bounded context "nutricao" (planos alimentares + catalogo de alimentos, ADR-0002). +# Schema proprio "nutricao"; roteado em /api/nutricao no ingress. +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: servico-nutricao + namespace: demo-prod + labels: { app: servico-nutricao, athleticmap.io/contexto: nutricao } +spec: + replicas: 1 + selector: { matchLabels: { app: servico-nutricao } } + template: + metadata: + labels: { app: servico-nutricao, athleticmap.io/contexto: nutricao } + spec: + containers: + - name: servico-nutricao + image: docker.io/library/servico-nutricao:1.0 + imagePullPolicy: Never + ports: [{ containerPort: 8083 }] + env: + - { name: SPRING_DATASOURCE_URL, value: "jdbc:postgresql://postgres:5432/athleticmap" } + - { name: SPRING_DATASOURCE_USERNAME, value: "atm" } + - { name: SPRING_DATASOURCE_HIKARI_MAXIMUM_POOL_SIZE, value: "5" } + - name: SPRING_DATASOURCE_PASSWORD + valueFrom: + secretKeyRef: { name: db-credentials, key: password } + - { name: ATM_JWK_SET_URI, value: "http://keycloak:8080/realms/athleticmap/protocol/openid-connect/certs" } + - { name: ATM_ISSUER, value: "https://auth-demo.athleticmap.influxdigital.com.br/realms/athleticmap" } + - { name: ATM_TENANT, value: "demo" } + resources: + requests: { cpu: 100m, memory: 300Mi } + limits: { cpu: "1", memory: 640Mi } + readinessProbe: + httpGet: { path: /api/nutricao/health, port: 8083 } + initialDelaySeconds: 25 + periodSeconds: 10 + failureThreshold: 30 + livenessProbe: + httpGet: { path: /actuator/health/liveness, port: 8083 } + initialDelaySeconds: 60 + periodSeconds: 20 + failureThreshold: 6 +--- +apiVersion: v1 +kind: Service +metadata: + name: servico-nutricao + namespace: demo-prod + labels: { app: servico-nutricao } +spec: + selector: { app: servico-nutricao } + ports: [{ name: http, port: 80, targetPort: 8083 }] diff --git a/tenants/demo/90-servico-bff.yaml b/tenants/demo/90-servico-bff.yaml index 5cd3524..4840b4c 100644 --- a/tenants/demo/90-servico-bff.yaml +++ b/tenants/demo/90-servico-bff.yaml @@ -20,7 +20,7 @@ spec: spec: containers: - name: servico-bff - image: docker.io/library/servico-bff:1.23 + image: docker.io/library/servico-bff:1.25 imagePullPolicy: Never ports: [{ containerPort: 8083 }] env: @@ -35,6 +35,7 @@ spec: - { name: ATM_ADMINISTRATIVO_URL, value: "http://servico-administrativo" } - { name: ATM_ASSISTENCIA_SOCIAL_URL, value: "http://servico-assistencia-social" } - { name: ATM_PEDAGOGICO_URL, value: "http://servico-pedagogico" } +- { name: ATM_NUTRICAO_URL, value: "http://servico-nutricao" } - { name: ATM_JWK_SET_URI, value: "http://keycloak:8080/realms/athleticmap/protocol/openid-connect/certs" } - { name: ATM_ISSUER, value: "https://auth-demo.athleticmap.influxdigital.com.br/realms/athleticmap" } - { name: ATM_TENANT, value: "demo" } diff --git a/tenants/demo/95-frontend-spa.yaml b/tenants/demo/95-frontend-spa.yaml index 115f8fb..7131007 100644 --- a/tenants/demo/95-frontend-spa.yaml +++ b/tenants/demo/95-frontend-spa.yaml @@ -20,7 +20,7 @@ spec: spec: containers: - name: frontend-spa - image: docker.io/library/frontend-spa:1.40 + image: docker.io/library/frontend-spa:1.42 imagePullPolicy: Never ports: [{ containerPort: 80 }] env: diff --git a/tenants/piloto/30-apps-stubs.yaml b/tenants/piloto/30-apps-stubs.yaml index ecc088b..5372d11 100644 --- a/tenants/piloto/30-apps-stubs.yaml +++ b/tenants/piloto/30-apps-stubs.yaml @@ -65,6 +65,7 @@ spec: - { path: /api/administrativo, pathType: Prefix, backend: { service: { name: servico-administrativo, port: { number: 80 } } } } - { path: /api/assistencia-social, pathType: Prefix, backend: { service: { name: servico-assistencia-social, port: { number: 80 } } } } - { path: /api/pedagogico, pathType: Prefix, backend: { service: { name: servico-pedagogico, port: { number: 80 } } } } +- { path: /api/nutricao, pathType: Prefix, backend: { service: { name: servico-nutricao, port: { number: 80 } } } } - { path: /api, pathType: Prefix, backend: { service: { name: backend, port: { number: 80 } } } } - { path: /, pathType: Prefix, backend: { service: { name: frontend-spa, port: { number: 80 } } } } - host: auth-piloto.athleticmap.influxdigital.com.br diff --git a/tenants/piloto/80-servico-cadastro.yaml b/tenants/piloto/80-servico-cadastro.yaml index 5bbc649..a7cdc8b 100644 --- a/tenants/piloto/80-servico-cadastro.yaml +++ b/tenants/piloto/80-servico-cadastro.yaml @@ -21,7 +21,7 @@ spec: spec: containers: - name: servico-cadastro - image: docker.io/library/servico-cadastro:1.5 + image: docker.io/library/servico-cadastro:1.6 imagePullPolicy: Never ports: [{ containerPort: 8083 }] env: diff --git a/tenants/piloto/85-servico-nutricao.yaml b/tenants/piloto/85-servico-nutricao.yaml new file mode 100644 index 0000000..6aac1c8 --- /dev/null +++ b/tenants/piloto/85-servico-nutricao.yaml @@ -0,0 +1,54 @@ +# Bounded context "nutricao" (planos alimentares + catalogo de alimentos, ADR-0002). +# Schema proprio "nutricao"; roteado em /api/nutricao no ingress. +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: servico-nutricao + namespace: piloto-prod + labels: { app: servico-nutricao, athleticmap.io/contexto: nutricao } +spec: + replicas: 1 + selector: { matchLabels: { app: servico-nutricao } } + template: + metadata: + labels: { app: servico-nutricao, athleticmap.io/contexto: nutricao } + spec: + containers: + - name: servico-nutricao + image: docker.io/library/servico-nutricao:1.0 + imagePullPolicy: Never + ports: [{ containerPort: 8083 }] + env: + - { name: SPRING_DATASOURCE_URL, value: "jdbc:postgresql://postgres:5432/athleticmap" } + - { name: SPRING_DATASOURCE_USERNAME, value: "atm" } + - { name: SPRING_DATASOURCE_HIKARI_MAXIMUM_POOL_SIZE, value: "5" } + - name: SPRING_DATASOURCE_PASSWORD + valueFrom: + secretKeyRef: { name: db-credentials, key: password } + - { name: ATM_JWK_SET_URI, value: "http://keycloak:8080/realms/athleticmap/protocol/openid-connect/certs" } + - { name: ATM_ISSUER, value: "https://auth-piloto.athleticmap.influxdigital.com.br/realms/athleticmap" } + - { name: ATM_TENANT, value: "piloto" } + resources: + requests: { cpu: 100m, memory: 300Mi } + limits: { cpu: "1", memory: 640Mi } + readinessProbe: + httpGet: { path: /api/nutricao/health, port: 8083 } + initialDelaySeconds: 25 + periodSeconds: 10 + failureThreshold: 30 + livenessProbe: + httpGet: { path: /actuator/health/liveness, port: 8083 } + initialDelaySeconds: 60 + periodSeconds: 20 + failureThreshold: 6 +--- +apiVersion: v1 +kind: Service +metadata: + name: servico-nutricao + namespace: piloto-prod + labels: { app: servico-nutricao } +spec: + selector: { app: servico-nutricao } + ports: [{ name: http, port: 80, targetPort: 8083 }] diff --git a/tenants/piloto/90-servico-bff.yaml b/tenants/piloto/90-servico-bff.yaml index 7929836..7eb9701 100644 --- a/tenants/piloto/90-servico-bff.yaml +++ b/tenants/piloto/90-servico-bff.yaml @@ -20,7 +20,7 @@ spec: spec: containers: - name: servico-bff - image: docker.io/library/servico-bff:1.23 + image: docker.io/library/servico-bff:1.25 imagePullPolicy: Never ports: [{ containerPort: 8083 }] env: @@ -35,6 +35,7 @@ spec: - { name: ATM_ADMINISTRATIVO_URL, value: "http://servico-administrativo" } - { name: ATM_ASSISTENCIA_SOCIAL_URL, value: "http://servico-assistencia-social" } - { name: ATM_PEDAGOGICO_URL, value: "http://servico-pedagogico" } +- { name: ATM_NUTRICAO_URL, value: "http://servico-nutricao" } - { name: ATM_JWK_SET_URI, value: "http://keycloak:8080/realms/athleticmap/protocol/openid-connect/certs" } - { name: ATM_ISSUER, value: "https://auth-piloto.athleticmap.influxdigital.com.br/realms/athleticmap" } - { name: ATM_TENANT, value: "piloto" } diff --git a/tenants/piloto/95-frontend-spa.yaml b/tenants/piloto/95-frontend-spa.yaml index 63bd531..6557297 100644 --- a/tenants/piloto/95-frontend-spa.yaml +++ b/tenants/piloto/95-frontend-spa.yaml @@ -20,7 +20,7 @@ spec: spec: containers: - name: frontend-spa - image: docker.io/library/frontend-spa:1.40 + image: docker.io/library/frontend-spa:1.42 imagePullPolicy: Never ports: [{ containerPort: 80 }] env: