++
This commit is contained in:
parent
d1b7fb65aa
commit
73ec054bba
234
apps/iam/base/backend.yaml
Normal file
234
apps/iam/base/backend.yaml
Normal file
@ -0,0 +1,234 @@
|
||||
---
|
||||
apiVersion: helm.toolkit.fluxcd.io/v2
|
||||
kind: HelmRelease
|
||||
metadata:
|
||||
name: iam-backend
|
||||
namespace: iam
|
||||
|
||||
spec:
|
||||
interval: 10m
|
||||
|
||||
chart:
|
||||
spec:
|
||||
chart: universal-chart
|
||||
version: "0.1.9"
|
||||
sourceRef:
|
||||
kind: HelmRepository
|
||||
name: yc-oci-charts
|
||||
namespace: flux-system
|
||||
interval: 10m
|
||||
|
||||
install:
|
||||
remediation:
|
||||
retries: 3
|
||||
|
||||
upgrade:
|
||||
remediation:
|
||||
retries: 3
|
||||
|
||||
values:
|
||||
global:
|
||||
env: _default
|
||||
|
||||
services:
|
||||
backend:
|
||||
enabled: true
|
||||
|
||||
serviceAccount:
|
||||
enabled:
|
||||
_default: true
|
||||
name:
|
||||
_default: iam-vault
|
||||
|
||||
image:
|
||||
name:
|
||||
_default: cr.yandex/crp3ccidau046kdj8g9q/iams:production_c75b7b58
|
||||
pullPolicy:
|
||||
_default: IfNotPresent
|
||||
|
||||
deployment:
|
||||
enabled: true
|
||||
|
||||
name:
|
||||
_default: iam-backend
|
||||
|
||||
replicaCount:
|
||||
_default: 1
|
||||
production: 4
|
||||
|
||||
port:
|
||||
_default: 8080
|
||||
|
||||
command:
|
||||
_default: ["/bin/sh", "-ec"]
|
||||
args:
|
||||
_default:
|
||||
- |
|
||||
set -a
|
||||
[ -f /vault/secrets/iam-db ] && . /vault/secrets/iam-db
|
||||
[ -f /vault/secrets/iam-zitadel ] && . /vault/secrets/iam-zitadel
|
||||
[ -f /vault/secrets/iam-kafka ] && . /vault/secrets/iam-kafka
|
||||
[ -f /vault/secrets/iam-s3 ] && . /vault/secrets/iam-s3
|
||||
set +a
|
||||
exec ./server
|
||||
|
||||
probes:
|
||||
liveness:
|
||||
enabled: false
|
||||
readiness:
|
||||
enabled: false
|
||||
|
||||
service:
|
||||
enabled: true
|
||||
|
||||
name:
|
||||
_default: iam-backend
|
||||
|
||||
type:
|
||||
_default: ClusterIP
|
||||
|
||||
port:
|
||||
_default: 8000
|
||||
|
||||
targetPort:
|
||||
_default: 8080
|
||||
|
||||
portName:
|
||||
_default: http
|
||||
|
||||
imagePullSecrets:
|
||||
enabled:
|
||||
_default: true
|
||||
name:
|
||||
_default: regcred
|
||||
|
||||
labels:
|
||||
monitoring: prometheus
|
||||
|
||||
# CA-сертификат Kafka, на него указывает KAFKA_SSL_CAFILE ниже.
|
||||
# Схема volumes/secret не встречается больше нигде в репо (везде используется только configMap) —
|
||||
# проверить соответствие values.schema.json чарта universal-chart перед выкаткой.
|
||||
volumes:
|
||||
_default:
|
||||
- name: kafka-ca
|
||||
mountPath:
|
||||
_default: /etc/ca-certificates/Yandex/ca-cert
|
||||
subPath:
|
||||
_default: ca-cert
|
||||
readOnly:
|
||||
_default: true
|
||||
secret:
|
||||
secretName:
|
||||
_default: ya-ca-secret
|
||||
items:
|
||||
- key: ca-cert
|
||||
path:
|
||||
_default: ca-cert
|
||||
|
||||
envs:
|
||||
- name: ENVIRONMENT
|
||||
value:
|
||||
_default: "prod"
|
||||
|
||||
- name: LOG_LEVEL
|
||||
value:
|
||||
_default: "debug"
|
||||
|
||||
- name: AUTH_ENABLED
|
||||
value:
|
||||
_default: "true"
|
||||
|
||||
- name: HTTP_PORT
|
||||
value:
|
||||
_default: "8080"
|
||||
|
||||
- name: HTTP_READ_BUFFER_SIZE
|
||||
value:
|
||||
_default: "131072"
|
||||
|
||||
- name: DB_MIGRATIONS_PATH
|
||||
value:
|
||||
_default: "migrations"
|
||||
|
||||
- name: ZITADEL_ENABLED
|
||||
value:
|
||||
_default: "false"
|
||||
|
||||
- name: ZITADEL_HOST
|
||||
value:
|
||||
_default: "https://login.sarex.io"
|
||||
|
||||
- name: ZITADEL_ORG_RULES_FILE
|
||||
value:
|
||||
_default: "config/zitadel/org-rules-prod.json"
|
||||
|
||||
- name: S3_ENABLED
|
||||
value:
|
||||
_default: "true"
|
||||
|
||||
- name: S3_ENDPOINT_URL
|
||||
value:
|
||||
_default: "https://storage.yandexcloud.net"
|
||||
|
||||
- name: S3_BUCKET_NAME
|
||||
value:
|
||||
_default: "sarex-media-storage"
|
||||
|
||||
- name: S3_REGION
|
||||
value:
|
||||
_default: "ru-central1"
|
||||
|
||||
- name: S3_PRESIGN_EXPIRES
|
||||
value:
|
||||
_default: "1h"
|
||||
|
||||
- name: KAFKA_ENABLED
|
||||
value:
|
||||
_default: "false"
|
||||
|
||||
- name: KAFKA_SSL_CAFILE
|
||||
value:
|
||||
_default: "/etc/ca-certificates/Yandex/ca-cert"
|
||||
|
||||
- name: KAFKA_TOPIC_LEGACY_AMS_SYNC
|
||||
value:
|
||||
_default: "ams-sync"
|
||||
|
||||
podAnnotations:
|
||||
_default:
|
||||
traffic.sidecar.istio.io/excludeOutboundPorts: "4317,4318,9411,8200"
|
||||
vault.hashicorp.com/agent-init-first: "true"
|
||||
vault.hashicorp.com/agent-inject: "true"
|
||||
vault.hashicorp.com/agent-pre-populate-only: "true"
|
||||
vault.hashicorp.com/auth-path: auth/kubernetes
|
||||
vault.hashicorp.com/role: iam
|
||||
vault.hashicorp.com/agent-inject-secret-iam-db: secrets/data/apps/iam/postgres
|
||||
vault.hashicorp.com/agent-inject-template-iam-db: |-
|
||||
{{- with secret "secrets/data/apps/iam/postgres" -}}
|
||||
DB_DSN=postgres://{{ index .Data.data "username" }}:{{ index .Data.data "password" }}@{{ index .Data.data "host" }}:{{ index .Data.data "port" }}/{{ index .Data.data "database" }}
|
||||
{{- end -}}
|
||||
vault.hashicorp.com/agent-inject-secret-iam-zitadel: secrets/data/apps/iam/zitadel
|
||||
vault.hashicorp.com/agent-inject-template-iam-zitadel: |-
|
||||
{{- with secret "secrets/data/apps/iam/zitadel" -}}
|
||||
ZITADEL_ACCESS_TOKEN={{ index .Data.data "access_token" }}
|
||||
{{- end -}}
|
||||
vault.hashicorp.com/agent-inject-secret-iam-kafka: secrets/data/kafka/apps/iam
|
||||
vault.hashicorp.com/agent-inject-template-iam-kafka: |-
|
||||
{{- with secret "secrets/data/kafka/apps/iam" -}}
|
||||
KAFKA_SECURITY_PROTOCOL={{ index .Data.data.auth "security_protocol" }}
|
||||
KAFKA_SASL_MECHANISM={{ index .Data.data.auth "sasl_mechanism" }}
|
||||
KAFKA_BROKERS={{ index .Data.data.auth "bootstrap_servers" }}
|
||||
KAFKA_SASL_PLAIN_USERNAME={{ index .Data.data "username" }}
|
||||
KAFKA_SASL_PLAIN_PASSWORD={{ index .Data.data "password" }}
|
||||
{{- end -}}
|
||||
vault.hashicorp.com/agent-inject-secret-iam-s3: secrets/data/minio/apps/iam
|
||||
vault.hashicorp.com/agent-inject-template-iam-s3: |-
|
||||
{{- with secret "secrets/data/minio/apps/iam" -}}
|
||||
S3_ACCESS_KEY_ID={{ index .Data.data "access_key" }}
|
||||
S3_SECRET_ACCESS_KEY={{ index .Data.data "secret_key" }}
|
||||
{{- end -}}
|
||||
|
||||
commitSha: ""
|
||||
gitlabUri: ""
|
||||
gitlabJobUrl: ""
|
||||
owner: ""
|
||||
7
apps/iam/base/kustomization.yaml
Normal file
7
apps/iam/base/kustomization.yaml
Normal file
@ -0,0 +1,7 @@
|
||||
---
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
namespace: iam
|
||||
resources:
|
||||
- namespace.yaml
|
||||
- backend.yaml
|
||||
8
apps/iam/base/namespace.yaml
Normal file
8
apps/iam/base/namespace.yaml
Normal file
@ -0,0 +1,8 @@
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: iam
|
||||
labels:
|
||||
istio-injection: enabled
|
||||
security.deckhouse.io/pod-policy: privileged
|
||||
6
apps/iam/d8-ugmk-prod/kustomization.yaml
Normal file
6
apps/iam/d8-ugmk-prod/kustomization.yaml
Normal file
@ -0,0 +1,6 @@
|
||||
---
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
namespace: iam
|
||||
resources:
|
||||
- ../base
|
||||
@ -29,4 +29,5 @@ resources:
|
||||
- ../../apps/django/d8-ugmk-prod
|
||||
- ../../apps/documentations/d8-ugmk-prod
|
||||
- ../../apps/checklists/d8-ugmk-prod
|
||||
- ../../apps/contracts/d8-ugmk-prod
|
||||
- ../../apps/contracts/d8-ugmk-prod
|
||||
- ../../apps/iam/d8-ugmk-prod
|
||||
Loading…
Reference in New Issue
Block a user