backend-2 prepared

This commit is contained in:
Leo Sok 2026-04-12 13:05:39 +03:00
parent 58817c3cab
commit 7ed68102ad
321 changed files with 9927 additions and 0 deletions

149
charts/backend2/Chart.yaml Executable file
View File

@ -0,0 +1,149 @@
apiVersion: v2
name: backend
description: Umbrella chart for all backend k8s applications
type: application
version: "0.1.0"
appVersion: "1.0.0"
dependencies:
- name: admin-app
version: "0.1.0"
repository: file://charts/admin-app-k8s
- name: android-app
version: "0.1.0"
repository: file://charts/android-app-k8s
- name: auth-app
version: "0.1.0"
repository: file://charts/auth-app-k8s
- name: auth-event-handler-app
version: "0.1.0"
repository: file://charts/auth-event-handler-app-k8s
- name: bff-admin-app
version: "0.1.0"
repository: file://charts/bff-admin-app-k8s
- name: bff-app
version: "0.1.0"
repository: file://charts/bff-app-k8s
- name: bff-external-app
version: "0.1.0"
repository: file://charts/bff-external-app-k8s
- name: bff-vcs-app
version: "0.1.0"
repository: file://charts/bff-vcs-app-k8s
- name: big-chat-splitter-app
version: "0.1.0"
repository: file://charts/big-chat-splitter-app-k8s
- name: call-app
version: "0.1.0"
repository: file://charts/call-app-k8s
- name: call-event-handler-app
version: "0.1.0"
repository: file://charts/call-event-handler-app-k8s
- name: call-realtime-app
version: "0.1.0"
repository: file://charts/call-realtime-app-k8s
- name: chat-app
version: "0.1.0"
repository: file://charts/chat-app-k8s
- name: chat-event-handler-app
version: "0.1.0"
repository: file://charts/chat-event-handler-app-k8s
- name: deeplink-app
version: "0.1.0"
repository: file://charts/deeplink-app-k8s
- name: gem-call-app
version: "0.1.0"
repository: file://charts/gem-call-app-k8s
- name: gem-call-events-handler-app
version: "0.1.0"
repository: file://charts/gem-call-events-handler-app-k8s
- name: huawei-app
version: "0.1.0"
repository: file://charts/huawei-app-k8s
- name: ios-app
version: "0.1.0"
repository: file://charts/ios-app-k8s
- name: livekit-webhook-handler-app
version: "0.1.0"
repository: file://charts/livekit-webhook-handler-app-k8s
- name: message-app
version: "0.1.0"
repository: file://charts/message-app-k8s
- name: message-call-event-handler-app
version: "0.1.0"
repository: file://charts/message-call-event-handler-app-k8s
- name: message-chat-event-handler-app
version: "0.1.0"
repository: file://charts/message-chat-event-handler-app-k8s
- name: message-event-handler-app
version: "0.1.0"
repository: file://charts/message-event-handler-app-k8s
- name: message-link-preview-handler-app
version: "0.1.0"
repository: file://charts/message-link-preview-handler-app-k8s
- name: message-user-event-handler-app
version: "0.1.0"
repository: file://charts/message-user-event-handler-app-k8s
- name: notification-app
version: "0.1.0"
repository: file://charts/notification-app-k8s
- name: notification-event-handler-app
version: "0.1.0"
repository: file://charts/notification-event-handler-app-k8s
- name: realtime-app
version: "0.1.0"
repository: file://charts/realtime-app-k8s
- name: regular-chat-splitter-app
version: "0.1.0"
repository: file://charts/regular-chat-splitter-app-k8s
- name: search-app
version: "0.1.0"
repository: file://charts/search-app-k8s
- name: search-event-handler-app
version: "0.1.0"
repository: file://charts/search-event-handler-app-k8s
- name: sticker-app
version: "0.1.0"
repository: file://charts/sticker-app-k8s
- name: unregister-tokens-app
version: "0.1.0"
repository: file://charts/unregister-tokens-app-k8s
- name: upload-app
version: "0.1.0"
repository: file://charts/upload-app-k8s
- name: user-app
version: "0.1.0"
repository: file://charts/user-app-k8s
- name: voip-splitter-app
version: "0.1.0"
repository: file://charts/voip-splitter-app-k8s
- name: web-sender-app
version: "0.1.0"
repository: file://charts/web-sender-app-k8s
- name: workspace-app
version: "0.1.0"
repository: file://charts/workspace-app-k8s
- name: workspace-event-handler-app
version: "0.1.0"
repository: file://charts/workspace-event-handler-app-k8s
- name: device-app
version: "0.1.0"
repository: file://charts/device-app-k8s
- name: license-app
version: "0.1.0"
repository: file://charts/license-app-k8s
- name: dictionary-app
version: "0.1.0"
repository: file://charts/dictionary-app-k8s
- name: calendar-app
version: "0.1.0"
repository: file://charts/calendar-app-k8s
- name: admin-ui-app
version: "0.1.0"
repository: file://charts/admin-ui-app-k8s
- name: config-app
version: "0.1.0"
repository: file://charts/config-app-k8s
- name: cw-common
version: "0.1.0"
repository: file://charts/cw-common

View File

@ -0,0 +1,23 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/

View File

@ -0,0 +1,10 @@
apiVersion: v2
name: admin-app
description: Helm chart for Admin app
type: application
version: 0.1.0
appVersion: "prod-2.1.0-RELEASE"
dependencies:
- name: cw-common
version: "0.1.0"
repository: file://../cw-common

View File

@ -0,0 +1,5 @@
{{- define "admin-app.name" -}}{{ include "cw-common.name" . }}{{- end }}
{{- define "admin-app.fullname" -}}{{ include "cw-common.fullname" . }}{{- end }}
{{- define "admin-app.chart" -}}{{ include "cw-common.chart" . }}{{- end }}
{{- define "admin-app.labels" -}}{{ include "cw-common.labels" . }}{{- end }}
{{- define "admin-app.selectorLabels" -}}{{ include "cw-common.selectorLabels" . }}{{- end }}

View File

@ -0,0 +1,75 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "admin-app.fullname" . }}
labels:
{{- include "admin-app.labels" . | nindent 4 }}
spec:
replicas: {{ .Values.replicaCount }}
selector:
matchLabels:
{{- include "admin-app.selectorLabels" . | nindent 6 }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "admin-app.labels" . | nindent 8 }}
{{- with .Values.podLabels }}
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
volumes:
{{- include "cw-common.volumes.cacerts" . | nindent 8 }}
initContainers:
{{- include "cw-common.initContainer.importCA" . | nindent 8 }}
containers:
- name: {{ include "admin-app.fullname" . }}
image: {{ include "cw-common.image" . }}
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
- containerPort: {{ .Values.service.targetPort }}
env:
{{- range .Values.env.globalEnvIncludes }}
{{- include (printf "global.env.%s" .) $ | nindent 12 }}
{{- end }}
{{- range $prefix, $serviceKey := .Values.env.serviceHostPort }}
{{- $svc := index $.Values.global.services $serviceKey }}
- name: {{ $prefix }}_HOST
value: {{ $svc.host | quote }}
- name: {{ $prefix }}_PORT
value: {{ $svc.port | quote }}
{{- end }}
{{- with .Values.env.extraEnv }}
{{- toYaml . | nindent 12 }}
{{- end }}
volumeMounts:
{{- include "cw-common.volumeMounts.cacerts" . | nindent 12 }}
resources:
{{- include "cw-common.resources" . | nindent 12 }}
{{- with (include "cw-common.livenessProbe" .) }}
livenessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with (include "cw-common.readinessProbe" .) }}
readinessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with .Values.global.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}

View File

@ -0,0 +1,18 @@
{{- if and .Values.pdb .Values.pdb.enabled }}
apiVersion: policy/v1
kind: PodDisruptionBudget
metadata:
name: {{ include "admin-app.fullname" . }}
labels:
{{- include "admin-app.labels" . | nindent 4 }}
spec:
{{- if .Values.pdb.minAvailable }}
minAvailable: {{ .Values.pdb.minAvailable }}
{{- end }}
{{- if .Values.pdb.maxUnavailable }}
maxUnavailable: {{ .Values.pdb.maxUnavailable }}
{{- end }}
selector:
matchLabels:
{{- include "admin-app.selectorLabels" . | nindent 6 }}
{{- end }}

View File

@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
name: {{ include "admin-app.fullname" . }}
labels:
{{- include "admin-app.labels" . | nindent 4 }}
spec:
type: {{ .Values.service.type | default "ClusterIP" }}
ports:
- name: grpc
port: {{ .Values.service.port }}
targetPort: {{ .Values.service.targetPort }}
protocol: TCP
selector:
{{- include "admin-app.selectorLabels" . | nindent 4 }}

View File

@ -0,0 +1,22 @@
replicaCount: 1
image:
name: ''
tag: ''
pullPolicy: Always
env:
globalEnvIncludes: []
serviceHostPort: {}
extraEnv: []
service:
type: ClusterIP
port: 9090
targetPort: 9090
podAnnotations: {}
podLabels: {}
imagePullSecrets: []
livenessProbe: {}
readinessProbe: {}
affinity: {}
tolerations: []
pdb:
enabled: false

View File

@ -0,0 +1,23 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/

View File

@ -0,0 +1,11 @@
apiVersion: v2
name: admin-ui-app
description: Helm chart for Admin ui app
type: application
version: 0.1.0
appVersion: "prod-2.1.0-RELEASE"
dependencies:
- name: cw-common
version: "0.1.0"
repository: file://../cw-common

View File

@ -0,0 +1,5 @@
{{- define "admin-ui-app.name" -}}{{ include "cw-common.name" . }}{{- end }}
{{- define "admin-ui-app.fullname" -}}{{ include "cw-common.fullname" . }}{{- end }}
{{- define "admin-ui-app.chart" -}}{{ include "cw-common.chart" . }}{{- end }}
{{- define "admin-ui-app.labels" -}}{{ include "cw-common.labels" . }}{{- end }}
{{- define "admin-ui-app.selectorLabels" -}}{{ include "cw-common.selectorLabels" . }}{{- end }}

View File

@ -0,0 +1,56 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "admin-ui-app.fullname" . }}
labels:
{{- include "admin-ui-app.labels" . | nindent 4 }}
spec:
replicas: {{ .Values.replicaCount }}
selector:
matchLabels:
{{- include "admin-ui-app.selectorLabels" . | nindent 6 }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "admin-ui-app.labels" . | nindent 8 }}
{{- with .Values.podLabels }}
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: {{ include "admin-ui-app.fullname" . }}
image: {{ include "cw-common.image" . }}
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
- containerPort: {{ .Values.service.targetPort }}
protocol: TCP
resources:
{{- include "cw-common.resources" . | nindent 12 }}
{{- with (include "cw-common.livenessProbe" .) }}
livenessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with (include "cw-common.readinessProbe" .) }}
readinessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with .Values.global.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}

View File

@ -0,0 +1,37 @@
{{- if .Values.ingress.enabled }}
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: {{ include "admin-ui-app.fullname" . }}-ingress
{{- with .Values.ingress.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
ingressClassName: {{ .Values.ingress.className }}
{{- if .Values.ingress.tls }}
tls:
{{- range .Values.ingress.tls }}
- hosts:
{{- range .hosts }}
- {{ . | quote }}
{{- end }}
secretName: {{ .secretName | quote }}
{{- end }}
{{- end }}
rules:
{{- range .Values.ingress.hosts }}
- host: {{ .host | quote }}
http:
paths:
{{- range .paths }}
- path: {{ .path }}
pathType: {{ .pathType }}
backend:
service:
name: {{ include "admin-ui-app.fullname" $ }}
port:
number: {{ $.Values.service.port }}
{{- end }}
{{- end }}
{{- end }}

View File

@ -0,0 +1,18 @@
{{- if and .Values.pdb .Values.pdb.enabled }}
apiVersion: policy/v1
kind: PodDisruptionBudget
metadata:
name: {{ include "admin-ui-app.fullname" . }}
labels:
{{- include "admin-ui-app.labels" . | nindent 4 }}
spec:
{{- if .Values.pdb.minAvailable }}
minAvailable: {{ .Values.pdb.minAvailable }}
{{- end }}
{{- if .Values.pdb.maxUnavailable }}
maxUnavailable: {{ .Values.pdb.maxUnavailable }}
{{- end }}
selector:
matchLabels:
{{- include "admin-ui-app.selectorLabels" . | nindent 6 }}
{{- end }}

View File

@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
name: {{ include "admin-ui-app.fullname" . }}
labels:
{{- include "admin-ui-app.labels" . | nindent 4 }}
spec:
type: {{ .Values.service.type | default "ClusterIP" }}
ports:
- name: grpc
port: {{ .Values.service.port }}
targetPort: {{ .Values.service.targetPort }}
protocol: TCP
selector:
{{- include "admin-ui-app.selectorLabels" . | nindent 4 }}

View File

@ -0,0 +1,35 @@
replicaCount: 1
image:
name: ''
tag: ''
pullPolicy: Always
service:
type: ClusterIP
port: 9090
targetPort: 80
ingress:
enabled: true
className: nginx
name: admin-ui-ingress
annotations:
nginx.ingress.kubernetes.io/ssl-redirect: 'true'
nginx.ingress.kubernetes.io/force-ssl-redirect: 'true'
nginx.ingress.kubernetes.io/backend-protocol: HTTP
hosts:
- host: admin-ui.cw.ngcloud.ru
paths:
- path: /
pathType: Prefix
tls:
- hosts:
- admin-ui.cw.ngcloud.ru
secretName: co-work-secret
podAnnotations: {}
podLabels: {}
imagePullSecrets: []
livenessProbe: {}
readinessProbe: {}
affinity: {}
tolerations: []
pdb:
enabled: false

View File

@ -0,0 +1,23 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/

View File

@ -0,0 +1,10 @@
apiVersion: v2
name: android-app
description: Helm chart for Android Sender Application
type: application
version: 0.1.0
appVersion: "prod-2.1.0-RELEASE"
dependencies:
- name: cw-common
version: "0.1.0"
repository: file://../cw-common

View File

@ -0,0 +1,5 @@
{{- define "android-sender-app.name" -}}{{ include "cw-common.name" . }}{{- end }}
{{- define "android-sender-app.fullname" -}}{{ include "cw-common.fullname" . }}{{- end }}
{{- define "android-sender-app.chart" -}}{{ include "cw-common.chart" . }}{{- end }}
{{- define "android-sender-app.labels" -}}{{ include "cw-common.labels" . }}{{- end }}
{{- define "android-sender-app.selectorLabels" -}}{{ include "cw-common.selectorLabels" . }}{{- end }}

View File

@ -0,0 +1,76 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "android-sender-app.fullname" . }}
labels:
{{- include "android-sender-app.labels" . | nindent 4 }}
spec:
replicas: {{ .Values.replicaCount }}
selector:
matchLabels:
{{- include "android-sender-app.selectorLabels" . | nindent 6 }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "android-sender-app.labels" . | nindent 8 }}
{{- with .Values.podLabels }}
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
volumes:
{{- include "cw-common.volumes.cacerts" . | nindent 8 }}
initContainers:
{{- include "cw-common.initContainer.importCA" . | nindent 8 }}
containers:
- name: {{ include "android-sender-app.fullname" . }}
image: {{ include "cw-common.image" . }}
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
- containerPort: {{ .Values.service.targetPort }}
protocol: TCP
env:
{{- range .Values.env.globalEnvIncludes }}
{{- include (printf "global.env.%s" .) $ | nindent 12 }}
{{- end }}
{{- range $prefix, $serviceKey := .Values.env.serviceHostPort }}
{{- $svc := index $.Values.global.services $serviceKey }}
- name: {{ $prefix }}_HOST
value: {{ $svc.host | quote }}
- name: {{ $prefix }}_PORT
value: {{ $svc.port | quote }}
{{- end }}
{{- with .Values.env.extraEnv }}
{{- toYaml . | nindent 12 }}
{{- end }}
volumeMounts:
{{- include "cw-common.volumeMounts.cacerts" . | nindent 12 }}
resources:
{{- include "cw-common.resources" . | nindent 12 }}
{{- with (include "cw-common.livenessProbe" .) }}
livenessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with (include "cw-common.readinessProbe" .) }}
readinessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with .Values.global.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}

View File

@ -0,0 +1,18 @@
{{- if and .Values.pdb .Values.pdb.enabled }}
apiVersion: policy/v1
kind: PodDisruptionBudget
metadata:
name: {{ include "android-sender-app.fullname" . }}
labels:
{{- include "android-sender-app.labels" . | nindent 4 }}
spec:
{{- if .Values.pdb.minAvailable }}
minAvailable: {{ .Values.pdb.minAvailable }}
{{- end }}
{{- if .Values.pdb.maxUnavailable }}
maxUnavailable: {{ .Values.pdb.maxUnavailable }}
{{- end }}
selector:
matchLabels:
{{- include "android-sender-app.selectorLabels" . | nindent 6 }}
{{- end }}

View File

@ -0,0 +1,24 @@
replicaCount: 1
image:
name: ''
tag: ''
pullPolicy: Always
env:
android_firebase_config: cowork-prod-firebase-adminsdk-l136z-648992e82d.json
globalEnvIncludes: []
serviceHostPort: {}
extraEnv: []
secrets:
firebaseSecret: android-firebase-config
podAnnotations: {}
podLabels: {}
imagePullSecrets: []
livenessProbe: {}
readinessProbe: {}
affinity: {}
tolerations: []
pdb:
enabled: false
service:
type: ClusterIP
targetPort: 9090

View File

@ -0,0 +1,23 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/

View File

@ -0,0 +1,29 @@
apiVersion: v2
name: auth-app
description: A Helm chart for Kubernetes
# A chart can be either an 'application' or a 'library' chart.
#
# Application charts are a collection of templates that can be packaged into versioned archives
# to be deployed.
#
# Library charts provide useful utilities or functions for the chart developer. They're included as
# a dependency of application charts to inject those utilities and functions into the rendering
# pipeline. Library charts do not define any templates and therefore cannot be deployed.
type: application
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.1.0
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes.
appVersion: "1.16.0"
dependencies:
- name: cw-common
version: "0.1.0"
repository: file://../cw-common

View File

@ -0,0 +1,5 @@
{{- define "auth-app-k8s.name" -}}{{ include "cw-common.name" . }}{{- end }}
{{- define "auth-app-k8s.fullname" -}}{{ include "cw-common.fullname" . }}{{- end }}
{{- define "auth-app-k8s.chart" -}}{{ include "cw-common.chart" . }}{{- end }}
{{- define "auth-app-k8s.labels" -}}{{ include "cw-common.labels" . }}{{- end }}
{{- define "auth-app-k8s.selectorLabels" -}}{{ include "cw-common.selectorLabels" . }}{{- end }}

View File

@ -0,0 +1,76 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "auth-app-k8s.fullname" . }}
labels:
{{- include "auth-app-k8s.labels" . | nindent 4 }}
spec:
replicas: {{ .Values.replicaCount }}
selector:
matchLabels:
{{- include "auth-app-k8s.selectorLabels" . | nindent 6 }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "auth-app-k8s.labels" . | nindent 8 }}
{{- with .Values.podLabels }}
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
volumes:
{{- include "cw-common.volumes.cacerts" . | nindent 8 }}
initContainers:
{{- include "cw-common.initContainer.importCA" . | nindent 8 }}
containers:
- name: {{ include "auth-app-k8s.fullname" . }}
image: {{ include "cw-common.image" . }}
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
- containerPort: {{ .Values.service.targetPort }}
protocol: TCP
env:
{{- range .Values.env.globalEnvIncludes }}
{{- include (printf "global.env.%s" .) $ | nindent 12 }}
{{- end }}
{{- range $prefix, $serviceKey := .Values.env.serviceHostPort }}
{{- $svc := index $.Values.global.services $serviceKey }}
- name: {{ $prefix }}_HOST
value: {{ $svc.host | quote }}
- name: {{ $prefix }}_PORT
value: {{ $svc.port | quote }}
{{- end }}
{{- with .Values.env.extraEnv }}
{{- toYaml . | nindent 12 }}
{{- end }}
volumeMounts:
{{- include "cw-common.volumeMounts.cacerts" . | nindent 12 }}
resources:
{{- include "cw-common.resources" . | nindent 12 }}
{{- with (include "cw-common.livenessProbe" .) }}
livenessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with (include "cw-common.readinessProbe" .) }}
readinessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with .Values.global.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}

View File

@ -0,0 +1,18 @@
{{- if and .Values.pdb .Values.pdb.enabled }}
apiVersion: policy/v1
kind: PodDisruptionBudget
metadata:
name: {{ include "auth-app-k8s.fullname" . }}
labels:
{{- include "auth-app-k8s.labels" . | nindent 4 }}
spec:
{{- if .Values.pdb.minAvailable }}
minAvailable: {{ .Values.pdb.minAvailable }}
{{- end }}
{{- if .Values.pdb.maxUnavailable }}
maxUnavailable: {{ .Values.pdb.maxUnavailable }}
{{- end }}
selector:
matchLabels:
{{- include "auth-app-k8s.selectorLabels" . | nindent 6 }}
{{- end }}

View File

@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
name: {{ include "auth-app-k8s.fullname" . }}
labels:
{{- include "auth-app-k8s.labels" . | nindent 4 }}
spec:
type: {{ .Values.service.type | default "ClusterIP" }}
ports:
- name: grpc
port: {{ .Values.service.port }}
targetPort: {{ .Values.service.targetPort }}
protocol: TCP
selector:
{{- include "auth-app-k8s.selectorLabels" . | nindent 4 }}

View File

@ -0,0 +1,15 @@
apiVersion: v1
kind: Pod
metadata:
name: "{{ include "auth-app-k8s.fullname" . }}-test-connection"
labels:
{{- include "auth-app-k8s.labels" . | nindent 4 }}
annotations:
"helm.sh/hook": test
spec:
containers:
- name: wget
image: busybox
command: ['wget']
args: ['{{ include "auth-app-k8s.fullname" . }}:{{ .Values.service.port }}']
restartPolicy: Never

View File

@ -0,0 +1,30 @@
image:
name: ''
tag: ''
pullPolicy: Always
replicaCount: 1
env:
globalEnvIncludes: []
serviceHostPort: {}
extraEnv: []
service:
type: ClusterIP
port: 9090
targetPort: 9090
secrets:
adminPassword:
name: auth-secrets
key: admin-password
clientSecret:
name: auth-secrets
key: client-secret
resources: {}
podAnnotations: {}
podLabels: {}
imagePullSecrets: []
livenessProbe: {}
readinessProbe: {}
affinity: {}
tolerations: []
pdb:
enabled: false

View File

@ -0,0 +1,23 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/

View File

@ -0,0 +1,10 @@
apiVersion: v2
name: auth-event-handler-app
description: Authentication Event Handler
type: application
version: 0.1.0
appVersion: "prod-2.1.0-RELEASE"
dependencies:
- name: cw-common
version: "0.1.0"
repository: file://../cw-common

View File

@ -0,0 +1,5 @@
{{- define "auth-event-handler-app-k8s.name" -}}{{ include "cw-common.name" . }}{{- end }}
{{- define "auth-event-handler-app-k8s.fullname" -}}{{ include "cw-common.fullname" . }}{{- end }}
{{- define "auth-event-handler-app-k8s.chart" -}}{{ include "cw-common.chart" . }}{{- end }}
{{- define "auth-event-handler-app-k8s.labels" -}}{{ include "cw-common.labels" . }}{{- end }}
{{- define "auth-event-handler-app-k8s.selectorLabels" -}}{{ include "cw-common.selectorLabels" . }}{{- end }}

View File

@ -0,0 +1,77 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "auth-event-handler-app-k8s.fullname" . }}
labels:
{{- include "auth-event-handler-app-k8s.labels" . | nindent 4 }}
spec:
replicas: {{ .Values.replicaCount }}
selector:
matchLabels:
{{- include "auth-event-handler-app-k8s.selectorLabels" . | nindent 6 }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "auth-event-handler-app-k8s.labels" . | nindent 8 }}
{{- with .Values.podLabels }}
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
volumes:
{{- include "cw-common.volumes.cacerts" . | nindent 8 }}
initContainers:
{{- include "cw-common.initContainer.importCA" . | nindent 8 }}
containers:
- name: {{ include "auth-event-handler-app-k8s.fullname" . }}
image: {{ include "cw-common.image" . }}
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
- name: http
containerPort: {{ .Values.service.port }}
protocol: TCP
env:
{{- range .Values.env.globalEnvIncludes }}
{{- include (printf "global.env.%s" .) $ | nindent 12 }}
{{- end }}
{{- range $prefix, $serviceKey := .Values.env.serviceHostPort }}
{{- $svc := index $.Values.global.services $serviceKey }}
- name: {{ $prefix }}_HOST
value: {{ $svc.host | quote }}
- name: {{ $prefix }}_PORT
value: {{ $svc.port | quote }}
{{- end }}
{{- with .Values.env.extraEnv }}
{{- toYaml . | nindent 12 }}
{{- end }}
volumeMounts:
{{- include "cw-common.volumeMounts.cacerts" . | nindent 12 }}
resources:
{{- include "cw-common.resources" . | nindent 12 }}
{{- with (include "cw-common.livenessProbe" .) }}
livenessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with (include "cw-common.readinessProbe" .) }}
readinessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with .Values.global.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}

View File

@ -0,0 +1,18 @@
{{- if and .Values.pdb .Values.pdb.enabled }}
apiVersion: policy/v1
kind: PodDisruptionBudget
metadata:
name: {{ include "auth-event-handler-app-k8s.fullname" . }}
labels:
{{- include "auth-event-handler-app-k8s.labels" . | nindent 4 }}
spec:
{{- if .Values.pdb.minAvailable }}
minAvailable: {{ .Values.pdb.minAvailable }}
{{- end }}
{{- if .Values.pdb.maxUnavailable }}
maxUnavailable: {{ .Values.pdb.maxUnavailable }}
{{- end }}
selector:
matchLabels:
{{- include "auth-event-handler-app-k8s.selectorLabels" . | nindent 6 }}
{{- end }}

View File

@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
name: {{ include "auth-event-handler-app-k8s.fullname" . }}
labels:
{{- include "auth-event-handler-app-k8s.labels" . | nindent 4 }}
spec:
type: {{ .Values.service.type | default "ClusterIP" }}
ports:
- name: grpc
port: {{ .Values.service.port }}
targetPort: {{ .Values.service.targetPort }}
protocol: TCP
selector:
{{- include "auth-event-handler-app-k8s.selectorLabels" . | nindent 4 }}

View File

@ -0,0 +1,34 @@
image:
name: ''
tag: ''
pullPolicy: Always
replicaCount: 1
env:
globalEnvIncludes: []
serviceHostPort: {}
extraEnv: []
service:
type: ClusterIP
port: 8094
targetPort: 9090
secrets:
kafka:
name: kafka-password
passwordKey: client-passwords
username: admin
adminPassword:
name: auth-secrets
key: admin-password
clientSecret:
name: auth-secrets
key: client-secret
resources: {}
podAnnotations: {}
podLabels: {}
imagePullSecrets: []
livenessProbe: {}
readinessProbe: {}
affinity: {}
tolerations: []
pdb:
enabled: false

View File

@ -0,0 +1,23 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/

View File

@ -0,0 +1,10 @@
apiVersion: v2
name: bff-admin-app
description: Helm chart for bff-admin-app
type: application
version: 0.1.0
appVersion: "prod-2.1.0-RELEASE"
dependencies:
- name: cw-common
version: "0.1.0"
repository: file://../cw-common

View File

@ -0,0 +1,5 @@
{{- define "bff-admin-app.name" -}}{{ include "cw-common.name" . }}{{- end }}
{{- define "bff-admin-app.fullname" -}}{{ include "cw-common.fullname" . }}{{- end }}
{{- define "bff-admin-app.chart" -}}{{ include "cw-common.chart" . }}{{- end }}
{{- define "bff-admin-app.labels" -}}{{ include "cw-common.labels" . }}{{- end }}
{{- define "bff-admin-app.selectorLabels" -}}{{ include "cw-common.selectorLabels" . }}{{- end }}

View File

@ -0,0 +1,79 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "bff-admin-app.fullname" . }}
labels:
{{- include "bff-admin-app.labels" . | nindent 4 }}
spec:
replicas: {{ .Values.replicaCount }}
selector:
matchLabels:
{{- include "bff-admin-app.selectorLabels" . | nindent 6 }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "bff-admin-app.labels" . | nindent 8 }}
{{- with .Values.podLabels }}
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
volumes:
{{- include "cw-common.volumes.cacerts" . | nindent 8 }}
initContainers:
{{- include "cw-common.initContainer.importCA" . | nindent 8 }}
containers:
- name: {{ include "bff-admin-app.fullname" . }}
image: {{ include "cw-common.image" . }}
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
{{- range .Values.service.ports }}
- name: {{ .name }}
containerPort: {{ .targetPort }}
protocol: TCP
{{- end }}
env:
{{- range .Values.env.globalEnvIncludes }}
{{- include (printf "global.env.%s" .) $ | nindent 12 }}
{{- end }}
{{- range $prefix, $serviceKey := .Values.env.serviceHostPort }}
{{- $svc := index $.Values.global.services $serviceKey }}
- name: {{ $prefix }}_HOST
value: {{ $svc.host | quote }}
- name: {{ $prefix }}_PORT
value: {{ $svc.port | quote }}
{{- end }}
{{- with .Values.env.extraEnv }}
{{- toYaml . | nindent 12 }}
{{- end }}
volumeMounts:
{{- include "cw-common.volumeMounts.cacerts" . | nindent 12 }}
resources:
{{- include "cw-common.resources" . | nindent 12 }}
{{- with (include "cw-common.livenessProbe" .) }}
livenessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with (include "cw-common.readinessProbe" .) }}
readinessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with .Values.global.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}

View File

@ -0,0 +1,37 @@
{{- if .Values.ingress.enabled }}
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: {{ include "bff-admin-app.fullname" . }}-ingress
{{- with .Values.ingress.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
ingressClassName: {{ .Values.ingress.className }}
{{- if .Values.ingress.tls }}
tls:
{{- range .Values.ingress.tls }}
- hosts:
{{- range .hosts }}
- {{ . | quote }}
{{- end }}
secretName: {{ .secretName | quote }}
{{- end }}
{{- end }}
rules:
{{- range .Values.ingress.hosts }}
- host: {{ .host | quote }}
http:
paths:
{{- range .paths }}
- path: {{ .path }}
pathType: {{ .pathType }}
backend:
service:
name: {{ include "bff-admin-app.fullname" $ }}
port:
number: {{ $.Values.service.httpPort }}
{{- end }}
{{- end }}
{{- end }}

View File

@ -0,0 +1,18 @@
{{- if and .Values.pdb .Values.pdb.enabled }}
apiVersion: policy/v1
kind: PodDisruptionBudget
metadata:
name: {{ include "bff-admin-app.fullname" . }}
labels:
{{- include "bff-admin-app.labels" . | nindent 4 }}
spec:
{{- if .Values.pdb.minAvailable }}
minAvailable: {{ .Values.pdb.minAvailable }}
{{- end }}
{{- if .Values.pdb.maxUnavailable }}
maxUnavailable: {{ .Values.pdb.maxUnavailable }}
{{- end }}
selector:
matchLabels:
{{- include "bff-admin-app.selectorLabels" . | nindent 6 }}
{{- end }}

View File

@ -0,0 +1,17 @@
apiVersion: v1
kind: Service
metadata:
name: {{ include "bff-admin-app.fullname" . }}
labels:
{{- include "bff-admin-app.labels" . | nindent 4 }}
spec:
type: {{ .Values.service.type | default "ClusterIP" }}
ports:
{{- range .Values.service.ports }}
- name: {{ .name }}
port: {{ .port }}
targetPort: {{ .targetPort }}
protocol: TCP
{{- end }}
selector:
{{- include "bff-admin-app.selectorLabels" . | nindent 4 }}

View File

@ -0,0 +1,47 @@
replicaCount: 1
image:
name: ''
tag: ''
pullPolicy: Always
env:
globalEnvIncludes: []
serviceHostPort: {}
extraEnv: []
app_name: bff-admin-app
service:
type: ClusterIP
httpPort: 8100
grpcPort: 8101
ports:
- name: http
port: 8100
targetPort: 8080
- name: grpc
port: 8101
targetPort: 9090
ingress:
enabled: true
className: nginx
name: bff-admin-ingress
annotations:
nginx.ingress.kubernetes.io/ssl-redirect: 'true'
nginx.ingress.kubernetes.io/force-ssl-redirect: 'true'
nginx.ingress.kubernetes.io/backend-protocol: HTTP
hosts:
- host: admin-ui.cw.ngcloud.ru
paths:
- path: /bff-admin
pathType: Prefix
tls:
- hosts:
- admin-ui.cw.ngcloud.ru
secretName: co-work-secret
podAnnotations: {}
podLabels: {}
imagePullSecrets: []
livenessProbe: {}
readinessProbe: {}
affinity: {}
tolerations: []
pdb:
enabled: false

View File

@ -0,0 +1,23 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/

View File

@ -0,0 +1,29 @@
apiVersion: v2
name: bff-app
description: A Helm chart for Kubernetes
# A chart can be either an 'application' or a 'library' chart.
#
# Application charts are a collection of templates that can be packaged into versioned archives
# to be deployed.
#
# Library charts provide useful utilities or functions for the chart developer. They're included as
# a dependency of application charts to inject those utilities and functions into the rendering
# pipeline. Library charts do not define any templates and therefore cannot be deployed.
type: application
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.1.0
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes.
appVersion: "1.16.0"
dependencies:
- name: cw-common
version: "0.1.0"
repository: file://../cw-common

View File

@ -0,0 +1,5 @@
{{- define "bff-app-k8s.name" -}}{{ include "cw-common.name" . }}{{- end }}
{{- define "bff-app-k8s.fullname" -}}{{ include "cw-common.fullname" . }}{{- end }}
{{- define "bff-app-k8s.chart" -}}{{ include "cw-common.chart" . }}{{- end }}
{{- define "bff-app-k8s.labels" -}}{{ include "cw-common.labels" . }}{{- end }}
{{- define "bff-app-k8s.selectorLabels" -}}{{ include "cw-common.selectorLabels" . }}{{- end }}

View File

@ -0,0 +1,70 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "bff-app-k8s.fullname" . }}
labels:
{{- include "bff-app-k8s.labels" . | nindent 4 }}
spec:
replicas: {{ .Values.replicaCount }}
selector:
matchLabels:
{{- include "bff-app-k8s.selectorLabels" . | nindent 6 }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "bff-app-k8s.labels" . | nindent 8 }}
{{- with .Values.podLabels }}
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
volumes:
{{- include "cw-common.volumes.cacerts" . | nindent 8 }}
initContainers:
{{- include "cw-common.initContainer.importCA" . | nindent 8 }}
containers:
- name: {{ include "bff-app-k8s.fullname" . }}
image: {{ include "cw-common.image" . }}
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
- containerPort: {{ .Values.service.targetPort }}
protocol: TCP
env:
{{- range .Values.env.globalEnvIncludes }}
{{- include (printf "global.env.%s" .) $ | nindent 12 }}
{{- end }}
{{- range $envName, $serviceKey := .Values.env.grpcClients }}
- name: {{ $envName }}
value: {{ include "global.serviceUrl" (index $.Values.global.services $serviceKey) | quote }}
{{- end }}
volumeMounts:
{{- include "cw-common.volumeMounts.cacerts" . | nindent 12 }}
resources:
{{- include "cw-common.resources" . | nindent 12 }}
{{- with (include "cw-common.livenessProbe" .) }}
livenessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with (include "cw-common.readinessProbe" .) }}
readinessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with .Values.global.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}

View File

@ -0,0 +1,27 @@
{{- if .Values.ingress.enabled }}
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: {{ include "bff-app-k8s.fullname" . }}-ingress
{{- with .Values.ingress.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
ingressClassName: {{ .Values.ingress.className }}
tls:
- hosts:
- {{ .Values.ingress.host | quote }}
secretName: {{ .Values.ingress.tlsSecret | quote }}
rules:
- host: {{ .Values.ingress.host | quote }}
http:
paths:
- path: {{ .Values.ingress.path }}
pathType: {{ .Values.ingress.pathType }}
backend:
service:
name: {{ include "bff-app-k8s.fullname" . }}
port:
number: {{ .Values.service.port }}
{{- end }}

View File

@ -0,0 +1,18 @@
{{- if and .Values.pdb .Values.pdb.enabled }}
apiVersion: policy/v1
kind: PodDisruptionBudget
metadata:
name: {{ include "bff-app-k8s.fullname" . }}
labels:
{{- include "bff-app-k8s.labels" . | nindent 4 }}
spec:
{{- if .Values.pdb.minAvailable }}
minAvailable: {{ .Values.pdb.minAvailable }}
{{- end }}
{{- if .Values.pdb.maxUnavailable }}
maxUnavailable: {{ .Values.pdb.maxUnavailable }}
{{- end }}
selector:
matchLabels:
{{- include "bff-app-k8s.selectorLabels" . | nindent 6 }}
{{- end }}

View File

@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
name: {{ include "bff-app-k8s.fullname" . }}
labels:
{{- include "bff-app-k8s.labels" . | nindent 4 }}
spec:
type: {{ .Values.service.type | default "ClusterIP" }}
ports:
- name: grpc
port: {{ .Values.service.port }}
targetPort: {{ .Values.service.targetPort }}
protocol: TCP
selector:
{{- include "bff-app-k8s.selectorLabels" . | nindent 4 }}

View File

@ -0,0 +1,36 @@
image:
name: ''
tag: ''
pullPolicy: Always
replicaCount: 1
service:
type: ClusterIP
port: 8081
targetPort: 8080
ingress:
enabled: true
className: nginx
name: bff-app-ingress
host: api-p003.cw.ngcloud.ru
annotations:
nginx.ingress.kubernetes.io/ssl-redirect: 'true'
nginx.ingress.kubernetes.io/force-ssl-redirect: 'true'
nginx.ingress.kubernetes.io/backend-protocol: HTTP
path: /
pathType: Prefix
tlsSecret: co-work-secret
env:
grpcClients: {}
globalEnvIncludes: []
serviceHostPort: {}
extraEnv: []
resources: {}
podAnnotations: {}
podLabels: {}
imagePullSecrets: []
livenessProbe: {}
readinessProbe: {}
affinity: {}
tolerations: []
pdb:
enabled: false

View File

@ -0,0 +1,23 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/

View File

@ -0,0 +1,29 @@
apiVersion: v2
name: bff-external-app
description: A Helm chart for Kubernetes
# A chart can be either an 'application' or a 'library' chart.
#
# Application charts are a collection of templates that can be packaged into versioned archives
# to be deployed.
#
# Library charts provide useful utilities or functions for the chart developer. They're included as
# a dependency of application charts to inject those utilities and functions into the rendering
# pipeline. Library charts do not define any templates and therefore cannot be deployed.
type: application
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.1.0
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes.
appVersion: "1.16.0"
dependencies:
- name: cw-common
version: "0.1.0"
repository: file://../cw-common

View File

@ -0,0 +1,5 @@
{{- define "bff-external-app-k8s.name" -}}{{ include "cw-common.name" . }}{{- end }}
{{- define "bff-external-app-k8s.fullname" -}}{{ include "cw-common.fullname" . }}{{- end }}
{{- define "bff-external-app-k8s.chart" -}}{{ include "cw-common.chart" . }}{{- end }}
{{- define "bff-external-app-k8s.labels" -}}{{ include "cw-common.labels" . }}{{- end }}
{{- define "bff-external-app-k8s.selectorLabels" -}}{{ include "cw-common.selectorLabels" . }}{{- end }}

View File

@ -0,0 +1,76 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "bff-external-app-k8s.fullname" . }}
labels:
{{- include "bff-external-app-k8s.labels" . | nindent 4 }}
spec:
replicas: {{ .Values.replicaCount }}
selector:
matchLabels:
{{- include "bff-external-app-k8s.selectorLabels" . | nindent 6 }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "bff-external-app-k8s.labels" . | nindent 8 }}
{{- with .Values.podLabels }}
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
volumes:
{{- include "cw-common.volumes.cacerts" . | nindent 8 }}
initContainers:
{{- include "cw-common.initContainer.importCA" . | nindent 8 }}
containers:
- name: {{ include "bff-external-app-k8s.fullname" . }}
image: {{ include "cw-common.image" . }}
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
- containerPort: {{ .Values.service.targetPort }}
protocol: TCP
env:
{{- range .Values.env.globalEnvIncludes }}
{{- include (printf "global.env.%s" .) $ | nindent 12 }}
{{- end }}
{{- range $prefix, $serviceKey := .Values.env.serviceHostPort }}
{{- $svc := index $.Values.global.services $serviceKey }}
- name: {{ $prefix }}_HOST
value: {{ $svc.host | quote }}
- name: {{ $prefix }}_PORT
value: {{ $svc.port | quote }}
{{- end }}
{{- with .Values.env.extraEnv }}
{{- toYaml . | nindent 12 }}
{{- end }}
volumeMounts:
{{- include "cw-common.volumeMounts.cacerts" . | nindent 12 }}
resources:
{{- include "cw-common.resources" . | nindent 12 }}
{{- with (include "cw-common.livenessProbe" .) }}
livenessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with (include "cw-common.readinessProbe" .) }}
readinessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with .Values.global.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}

View File

@ -0,0 +1,27 @@
{{- if .Values.ingress.enabled }}
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: {{ include "bff-external-app-k8s.fullname" . }}-ingress
{{- with .Values.ingress.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
ingressClassName: {{ .Values.ingress.className }}
tls:
- hosts:
- {{ .Values.ingress.host | quote }}
secretName: {{ .Values.ingress.tlsSecret | quote }}
rules:
- host: {{ .Values.ingress.host | quote }}
http:
paths:
- path: {{ .Values.ingress.path }}
pathType: {{ .Values.ingress.pathType }}
backend:
service:
name: {{ include "bff-external-app-k8s.fullname" . }}
port:
number: {{ .Values.service.port }}
{{- end }}

View File

@ -0,0 +1,18 @@
{{- if and .Values.pdb .Values.pdb.enabled }}
apiVersion: policy/v1
kind: PodDisruptionBudget
metadata:
name: {{ include "bff-app-k8s.fullname" . }}
labels:
{{- include "bff-app-k8s.labels" . | nindent 4 }}
spec:
{{- if .Values.pdb.minAvailable }}
minAvailable: {{ .Values.pdb.minAvailable }}
{{- end }}
{{- if .Values.pdb.maxUnavailable }}
maxUnavailable: {{ .Values.pdb.maxUnavailable }}
{{- end }}
selector:
matchLabels:
{{- include "bff-app-k8s.selectorLabels" . | nindent 6 }}
{{- end }}

View File

@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
name: {{ include "bff-app-k8s.fullname" . }}
labels:
{{- include "bff-app-k8s.labels" . | nindent 4 }}
spec:
type: {{ .Values.service.type | default "ClusterIP" }}
ports:
- name: grpc
port: {{ .Values.service.port }}
targetPort: {{ .Values.service.targetPort }}
protocol: TCP
selector:
{{- include "bff-app-k8s.selectorLabels" . | nindent 4 }}

View File

@ -0,0 +1,37 @@
image:
name: ''
tag: ''
pullPolicy: Always
replicaCount: 1
service:
type: ClusterIP
port: 8080
targetPort: 8080
ingress:
enabled: true
className: nginx
name: bff-external-app-ingress
host: api-p003.cw.ngcloud.ru
annotations:
nginx.ingress.kubernetes.io/ssl-redirect: 'true'
nginx.ingress.kubernetes.io/force-ssl-redirect: 'true'
nginx.ingress.kubernetes.io/backend-protocol: HTTP
path: /bff-external
pathType: Prefix
tlsSecret: co-work-secret
env:
globalEnvIncludes: []
serviceHostPort: {}
extraEnv: []
services:
calendar_url: http://calendar-app:9090
resources: {}
podAnnotations: {}
podLabels: {}
imagePullSecrets: []
livenessProbe: {}
readinessProbe: {}
affinity: {}
tolerations: []
pdb:
enabled: false

View File

@ -0,0 +1,23 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/

View File

@ -0,0 +1,10 @@
apiVersion: v2
name: bff-vcs-app
description: Helm chart for bff-vcs-app
type: application
version: 0.1.0
appVersion: "prod-2.1.0-RELEASE"
dependencies:
- name: cw-common
version: "0.1.0"
repository: file://../cw-common

View File

@ -0,0 +1,5 @@
{{- define "bff-vcs-app.name" -}}{{ include "cw-common.name" . }}{{- end }}
{{- define "bff-vcs-app.fullname" -}}{{ include "cw-common.fullname" . }}{{- end }}
{{- define "bff-vcs-app.chart" -}}{{ include "cw-common.chart" . }}{{- end }}
{{- define "bff-vcs-app.labels" -}}{{ include "cw-common.labels" . }}{{- end }}
{{- define "bff-vcs-app.selectorLabels" -}}{{ include "cw-common.selectorLabels" . }}{{- end }}

View File

@ -0,0 +1,71 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "bff-vcs-app.fullname" . }}
labels:
{{- include "bff-vcs-app.labels" . | nindent 4 }}
spec:
replicas: {{ .Values.replicaCount }}
selector:
matchLabels:
{{- include "bff-vcs-app.selectorLabels" . | nindent 6 }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "bff-vcs-app.labels" . | nindent 8 }}
{{- with .Values.podLabels }}
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
volumes:
{{- include "cw-common.volumes.cacerts" . | nindent 8 }}
initContainers:
{{- include "cw-common.initContainer.importCA" . | nindent 8 }}
containers:
- name: {{ include "bff-vcs-app.fullname" . }}
image: {{ include "cw-common.image" . }}
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
- containerPort: {{ .Values.service.targetPort }}
protocol: TCP
env:
{{- range .Values.env.globalEnvIncludes }}
{{- include (printf "global.env.%s" .) $ | nindent 12 }}
{{- end }}
{{- range $envName, $serviceKey := .Values.env.grpcClients }}
- name: {{ $envName }}
value: {{ include "global.serviceUrl" (index $.Values.global.services $serviceKey) | quote }}
{{- end }}
volumeMounts:
{{- include "cw-common.volumeMounts.cacerts" . | nindent 12 }}
resources:
{{- include "cw-common.resources" . | nindent 12 }}
{{- with (include "cw-common.livenessProbe" .) }}
livenessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with (include "cw-common.readinessProbe" .) }}
readinessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with .Values.global.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}

View File

@ -0,0 +1,27 @@
{{- if .Values.ingress.enabled }}
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: {{ include "bff-vcs-app.fullname" . }}-ingress
{{- with .Values.ingress.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
ingressClassName: {{ .Values.ingress.ingressClassName }}
tls:
- hosts:
- {{ .Values.ingress.host | quote }}
secretName: {{ .Values.ingress.tlsSecretName | quote }}
rules:
- host: {{ .Values.ingress.host | quote }}
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: {{ include "bff-vcs-app.fullname" . }}
port:
number: {{ .Values.service.port }}
{{- end }}

View File

@ -0,0 +1,18 @@
{{- if and .Values.pdb .Values.pdb.enabled }}
apiVersion: policy/v1
kind: PodDisruptionBudget
metadata:
name: {{ include "bff-vcs-app.fullname" . }}
labels:
{{- include "bff-vcs-app.labels" . | nindent 4 }}
spec:
{{- if .Values.pdb.minAvailable }}
minAvailable: {{ .Values.pdb.minAvailable }}
{{- end }}
{{- if .Values.pdb.maxUnavailable }}
maxUnavailable: {{ .Values.pdb.maxUnavailable }}
{{- end }}
selector:
matchLabels:
{{- include "bff-vcs-app.selectorLabels" . | nindent 6 }}
{{- end }}

View File

@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
name: {{ include "bff-vcs-app.fullname" . }}
labels:
{{- include "bff-vcs-app.labels" . | nindent 4 }}
spec:
type: {{ .Values.service.type | default "ClusterIP" }}
ports:
- name: grpc
port: {{ .Values.service.port }}
targetPort: {{ .Values.service.targetPort }}
protocol: TCP
selector:
{{- include "bff-vcs-app.selectorLabels" . | nindent 4 }}

View File

@ -0,0 +1,32 @@
replicaCount: 1
image:
name: ''
tag: ''
pullPolicy: Always
env:
grpcClients: {}
globalEnvIncludes: []
serviceHostPort: {}
extraEnv: []
service:
type: ClusterIP
port: 8079
targetPort: 8080
ingress:
enabled: true
ingressClassName: nginx
host: vcs-p003.cw.ngcloud.ru
tlsSecretName: co-work-secret
annotations:
nginx.ingress.kubernetes.io/ssl-redirect: 'true'
nginx.ingress.kubernetes.io/force-ssl-redirect: 'true'
nginx.ingress.kubernetes.io/backend-protocol: HTTP
podAnnotations: {}
podLabels: {}
imagePullSecrets: []
livenessProbe: {}
readinessProbe: {}
affinity: {}
tolerations: []
pdb:
enabled: false

View File

@ -0,0 +1,23 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/

View File

@ -0,0 +1,29 @@
apiVersion: v2
name: big-chat-splitter-app
description: A Helm chart for Kubernetes
# A chart can be either an 'application' or a 'library' chart.
#
# Application charts are a collection of templates that can be packaged into versioned archives
# to be deployed.
#
# Library charts provide useful utilities or functions for the chart developer. They're included as
# a dependency of application charts to inject those utilities and functions into the rendering
# pipeline. Library charts do not define any templates and therefore cannot be deployed.
type: application
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.1.0
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes.
appVersion: "1.16.0"
dependencies:
- name: cw-common
version: "0.1.0"
repository: file://../cw-common

View File

@ -0,0 +1,5 @@
{{- define "big-chat-splitter-app-k8s.name" -}}{{ include "cw-common.name" . }}{{- end }}
{{- define "big-chat-splitter-app-k8s.fullname" -}}{{ include "cw-common.fullname" . }}{{- end }}
{{- define "big-chat-splitter-app-k8s.chart" -}}{{ include "cw-common.chart" . }}{{- end }}
{{- define "big-chat-splitter-app-k8s.labels" -}}{{ include "cw-common.labels" . }}{{- end }}
{{- define "big-chat-splitter-app-k8s.selectorLabels" -}}{{ include "cw-common.selectorLabels" . }}{{- end }}

View File

@ -0,0 +1,75 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "big-chat-splitter-app-k8s.fullname" . }}
labels:
{{- include "big-chat-splitter-app-k8s.labels" . | nindent 4 }}
spec:
replicas: {{ .Values.replicaCount }}
selector:
matchLabels:
{{- include "big-chat-splitter-app-k8s.selectorLabels" . | nindent 6 }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "big-chat-splitter-app-k8s.labels" . | nindent 8 }}
{{- with .Values.podLabels }}
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
volumes:
{{- include "cw-common.volumes.cacerts" . | nindent 8 }}
initContainers:
{{- include "cw-common.initContainer.importCA" . | nindent 8 }}
containers:
- name: {{ include "big-chat-splitter-app-k8s.fullname" . }}
image: {{ include "cw-common.image" . }}
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
- containerPort: {{ .Values.service.targetPort }}
env:
{{- range .Values.env.globalEnvIncludes }}
{{- include (printf "global.env.%s" .) $ | nindent 12 }}
{{- end }}
{{- range $prefix, $serviceKey := .Values.env.serviceHostPort }}
{{- $svc := index $.Values.global.services $serviceKey }}
- name: {{ $prefix }}_HOST
value: {{ $svc.host | quote }}
- name: {{ $prefix }}_PORT
value: {{ $svc.port | quote }}
{{- end }}
{{- with .Values.env.extraEnv }}
{{- toYaml . | nindent 12 }}
{{- end }}
volumeMounts:
{{- include "cw-common.volumeMounts.cacerts" . | nindent 12 }}
resources:
{{- include "cw-common.resources" . | nindent 12 }}
{{- with (include "cw-common.livenessProbe" .) }}
livenessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with (include "cw-common.readinessProbe" .) }}
readinessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with .Values.global.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}

View File

@ -0,0 +1,18 @@
{{- if and .Values.pdb .Values.pdb.enabled }}
apiVersion: policy/v1
kind: PodDisruptionBudget
metadata:
name: {{ include "big-chat-splitter-app-k8s.fullname" . }}
labels:
{{- include "big-chat-splitter-app-k8s.labels" . | nindent 4 }}
spec:
{{- if .Values.pdb.minAvailable }}
minAvailable: {{ .Values.pdb.minAvailable }}
{{- end }}
{{- if .Values.pdb.maxUnavailable }}
maxUnavailable: {{ .Values.pdb.maxUnavailable }}
{{- end }}
selector:
matchLabels:
{{- include "big-chat-splitter-app-k8s.selectorLabels" . | nindent 6 }}
{{- end }}

View File

@ -0,0 +1,29 @@
image:
name: ''
tag: ''
pullPolicy: Always
replicaCount: 1
env:
globalEnvIncludes: []
serviceHostPort: {}
extraEnv: []
services:
chat:
host: chat-app
port: 9090
user:
host: user-app
port: 9090
resources: {}
podAnnotations: {}
podLabels: {}
imagePullSecrets: []
livenessProbe: {}
readinessProbe: {}
affinity: {}
tolerations: []
pdb:
enabled: false
service:
type: ClusterIP
targetPort: 9090

View File

@ -0,0 +1,23 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/

View File

@ -0,0 +1,29 @@
apiVersion: v2
name: calendar-app
description: A Helm chart for Kubernetes
# A chart can be either an 'application' or a 'library' chart.
#
# Application charts are a collection of templates that can be packaged into versioned archives
# to be deployed.
#
# Library charts provide useful utilities or functions for the chart developer. They're included as
# a dependency of application charts to inject those utilities and functions into the rendering
# pipeline. Library charts do not define any templates and therefore cannot be deployed.
type: application
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.1.0
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes.
appVersion: "1.16.0"
dependencies:
- name: cw-common
version: "0.1.0"
repository: file://../cw-common

View File

@ -0,0 +1,5 @@
{{- define "calendar-app-k8s.name" -}}{{ include "cw-common.name" . }}{{- end }}
{{- define "calendar-app-k8s.fullname" -}}{{ include "cw-common.fullname" . }}{{- end }}
{{- define "calendar-app-k8s.chart" -}}{{ include "cw-common.chart" . }}{{- end }}
{{- define "calendar-app-k8s.labels" -}}{{ include "cw-common.labels" . }}{{- end }}
{{- define "calendar-app-k8s.selectorLabels" -}}{{ include "cw-common.selectorLabels" . }}{{- end }}

View File

@ -0,0 +1,76 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "calendar-app-k8s.fullname" . }}
labels:
{{- include "calendar-app-k8s.labels" . | nindent 4 }}
spec:
replicas: {{ .Values.replicaCount }}
selector:
matchLabels:
{{- include "calendar-app-k8s.selectorLabels" . | nindent 6 }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "calendar-app-k8s.labels" . | nindent 8 }}
{{- with .Values.podLabels }}
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
volumes:
{{- include "cw-common.volumes.cacerts" . | nindent 8 }}
initContainers:
{{- include "cw-common.initContainer.importCA" . | nindent 8 }}
containers:
- name: {{ include "calendar-app-k8s.fullname" . }}
image: {{ include "cw-common.image" . }}
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
- containerPort: {{ .Values.service.targetPort }}
protocol: TCP
env:
{{- range .Values.env.globalEnvIncludes }}
{{- include (printf "global.env.%s" .) $ | nindent 12 }}
{{- end }}
{{- range $prefix, $serviceKey := .Values.env.serviceHostPort }}
{{- $svc := index $.Values.global.services $serviceKey }}
- name: {{ $prefix }}_HOST
value: {{ $svc.host | quote }}
- name: {{ $prefix }}_PORT
value: {{ $svc.port | quote }}
{{- end }}
{{- with .Values.env.extraEnv }}
{{- toYaml . | nindent 12 }}
{{- end }}
volumeMounts:
{{- include "cw-common.volumeMounts.cacerts" . | nindent 12 }}
resources:
{{- include "cw-common.resources" . | nindent 12 }}
{{- with (include "cw-common.livenessProbe" .) }}
livenessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with (include "cw-common.readinessProbe" .) }}
readinessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with .Values.global.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}

View File

@ -0,0 +1,18 @@
{{- if and .Values.pdb .Values.pdb.enabled }}
apiVersion: policy/v1
kind: PodDisruptionBudget
metadata:
name: {{ include "calendar-app-k8s.fullname" . }}
labels:
{{- include "calendar-app-k8s.labels" . | nindent 4 }}
spec:
{{- if .Values.pdb.minAvailable }}
minAvailable: {{ .Values.pdb.minAvailable }}
{{- end }}
{{- if .Values.pdb.maxUnavailable }}
maxUnavailable: {{ .Values.pdb.maxUnavailable }}
{{- end }}
selector:
matchLabels:
{{- include "calendar-app-k8s.selectorLabels" . | nindent 6 }}
{{- end }}

View File

@ -0,0 +1,17 @@
apiVersion: v1
kind: Service
metadata:
name: {{ include "calendar-app-k8s.fullname" . }}
labels:
{{- include "calendar-app-k8s.labels" . | nindent 4 }}
spec:
type: {{ .Values.service.type | default "ClusterIP" }}
ports:
{{- range .Values.service.ports }}
- name: {{ .name }}
port: {{ .port }}
targetPort: {{ .targetPort }}
protocol: TCP
{{- end }}
selector:
{{- include "calendar-app-k8s.selectorLabels" . | nindent 4 }}

View File

@ -0,0 +1,27 @@
image:
name: ''
tag: ''
pullPolicy: Always
replicaCount: 1
env:
globalEnvIncludes: []
serviceHostPort: {}
extraEnv: []
service:
type: ClusterIP
targetPort: 9090
containerPort: 9090
ports:
- name: grpc
port: 9090
containerPort: 9090
targetPort: 9090
podAnnotations: {}
podLabels: {}
imagePullSecrets: []
livenessProbe: {}
readinessProbe: {}
affinity: {}
tolerations: []
pdb:
enabled: false

View File

@ -0,0 +1,23 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/

View File

@ -0,0 +1,29 @@
apiVersion: v2
name: call-app
description: A Helm chart for Kubernetes
# A chart can be either an 'application' or a 'library' chart.
#
# Application charts are a collection of templates that can be packaged into versioned archives
# to be deployed.
#
# Library charts provide useful utilities or functions for the chart developer. They're included as
# a dependency of application charts to inject those utilities and functions into the rendering
# pipeline. Library charts do not define any templates and therefore cannot be deployed.
type: application
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.1.0
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes.
appVersion: "1.16.0"
dependencies:
- name: cw-common
version: "0.1.0"
repository: file://../cw-common

View File

@ -0,0 +1,5 @@
{{- define "call-app-k8s.name" -}}{{ include "cw-common.name" . }}{{- end }}
{{- define "call-app-k8s.fullname" -}}{{ include "cw-common.fullname" . }}{{- end }}
{{- define "call-app-k8s.chart" -}}{{ include "cw-common.chart" . }}{{- end }}
{{- define "call-app-k8s.labels" -}}{{ include "cw-common.labels" . }}{{- end }}
{{- define "call-app-k8s.selectorLabels" -}}{{ include "cw-common.selectorLabels" . }}{{- end }}

View File

@ -0,0 +1,80 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "call-app-k8s.fullname" . }}
labels:
{{- include "call-app-k8s.labels" . | nindent 4 }}
spec:
replicas: {{ .Values.replicaCount }}
selector:
matchLabels:
{{- include "call-app-k8s.selectorLabels" . | nindent 6 }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "call-app-k8s.labels" . | nindent 8 }}
{{- with .Values.podLabels }}
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
volumes:
{{- include "cw-common.volumes.cacerts" . | nindent 8 }}
initContainers:
{{- include "cw-common.initContainer.importCA" . | nindent 8 }}
containers:
- name: {{ include "call-app-k8s.fullname" . }}
image: {{ include "cw-common.image" . }}
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
{{- if .Values.service.debugPort }}
- containerPort: {{ .Values.service.debugPort }}
protocol: TCP
{{- end }}
- containerPort: {{ .Values.service.targetPort }}
protocol: TCP
env:
{{- range .Values.env.globalEnvIncludes }}
{{- include (printf "global.env.%s" .) $ | nindent 12 }}
{{- end }}
{{- range $prefix, $serviceKey := .Values.env.serviceHostPort }}
{{- $svc := index $.Values.global.services $serviceKey }}
- name: {{ $prefix }}_HOST
value: {{ $svc.host | quote }}
- name: {{ $prefix }}_PORT
value: {{ $svc.port | quote }}
{{- end }}
{{- with .Values.env.extraEnv }}
{{- toYaml . | nindent 12 }}
{{- end }}
volumeMounts:
{{- include "cw-common.volumeMounts.cacerts" . | nindent 12 }}
resources:
{{- include "cw-common.resources" . | nindent 12 }}
{{- with (include "cw-common.livenessProbe" .) }}
livenessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with (include "cw-common.readinessProbe" .) }}
readinessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with .Values.global.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}

View File

@ -0,0 +1,18 @@
{{- if and .Values.pdb .Values.pdb.enabled }}
apiVersion: policy/v1
kind: PodDisruptionBudget
metadata:
name: {{ include "call-app-k8s.fullname" . }}
labels:
{{- include "call-app-k8s.labels" . | nindent 4 }}
spec:
{{- if .Values.pdb.minAvailable }}
minAvailable: {{ .Values.pdb.minAvailable }}
{{- end }}
{{- if .Values.pdb.maxUnavailable }}
maxUnavailable: {{ .Values.pdb.maxUnavailable }}
{{- end }}
selector:
matchLabels:
{{- include "call-app-k8s.selectorLabels" . | nindent 6 }}
{{- end }}

View File

@ -0,0 +1,17 @@
apiVersion: v1
kind: Service
metadata:
name: {{ include "call-app-k8s.fullname" . }}
labels:
{{- include "call-app-k8s.labels" . | nindent 4 }}
spec:
type: {{ .Values.service.type | default "ClusterIP" }}
ports:
{{- range .Values.service.ports }}
- name: {{ .name }}
port: {{ .port }}
targetPort: {{ .targetPort }}
protocol: TCP
{{- end }}
selector:
{{- include "call-app-k8s.selectorLabels" . | nindent 4 }}

View File

@ -0,0 +1,38 @@
image:
name: ''
tag: ''
pullPolicy: Always
replicaCount: 1
env:
globalEnvIncludes: []
serviceHostPort: {}
extraEnv: []
service:
targetPort: 9090
debugPort: 5005
type: ClusterIP
ports:
- name: main
port: 5005
targetPort: 5005
- name: metrics
port: 9090
targetPort: 9090
secrets:
livekit:
name: livekit-secret
apiKeyKey: api-key
secretKey: secret
recording:
name: recording-secret
accessKeyKey: access-key
secretKeyKey: secret
podAnnotations: {}
podLabels: {}
imagePullSecrets: []
livenessProbe: {}
readinessProbe: {}
affinity: {}
tolerations: []
pdb:
enabled: false

View File

@ -0,0 +1,23 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/

View File

@ -0,0 +1,10 @@
apiVersion: v2
name: call-event-handler-app
description: Call Event Handler Application
type: application
version: 0.1.0
appVersion: "prod-2.1.0-RELEASE"
dependencies:
- name: cw-common
version: "0.1.0"
repository: file://../cw-common

View File

@ -0,0 +1,5 @@
{{- define "call-event-handler-app.name" -}}{{ include "cw-common.name" . }}{{- end }}
{{- define "call-event-handler-app.fullname" -}}{{ include "cw-common.fullname" . }}{{- end }}
{{- define "call-event-handler-app.chart" -}}{{ include "cw-common.chart" . }}{{- end }}
{{- define "call-event-handler-app.labels" -}}{{ include "cw-common.labels" . }}{{- end }}
{{- define "call-event-handler-app.selectorLabels" -}}{{ include "cw-common.selectorLabels" . }}{{- end }}

View File

@ -0,0 +1,80 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "call-event-handler-app.fullname" . }}
labels:
{{- include "call-event-handler-app.labels" . | nindent 4 }}
spec:
replicas: {{ .Values.replicaCount }}
selector:
matchLabels:
{{- include "call-event-handler-app.selectorLabels" . | nindent 6 }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "call-event-handler-app.labels" . | nindent 8 }}
{{- with .Values.podLabels }}
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
volumes:
{{- include "cw-common.volumes.cacerts" . | nindent 8 }}
initContainers:
{{- include "cw-common.initContainer.importCA" . | nindent 8 }}
containers:
- name: {{ include "call-event-handler-app.fullname" . }}
image: {{ include "cw-common.image" . }}
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
{{- if .Values.service.debugPort }}
- containerPort: {{ .Values.service.debugPort }}
protocol: TCP
{{- end }}
- containerPort: {{ .Values.service.targetPort }}
protocol: TCP
env:
{{- range .Values.env.globalEnvIncludes }}
{{- include (printf "global.env.%s" .) $ | nindent 12 }}
{{- end }}
{{- range $prefix, $serviceKey := .Values.env.serviceHostPort }}
{{- $svc := index $.Values.global.services $serviceKey }}
- name: {{ $prefix }}_HOST
value: {{ $svc.host | quote }}
- name: {{ $prefix }}_PORT
value: {{ $svc.port | quote }}
{{- end }}
{{- with .Values.env.extraEnv }}
{{- toYaml . | nindent 12 }}
{{- end }}
volumeMounts:
{{- include "cw-common.volumeMounts.cacerts" . | nindent 12 }}
resources:
{{- include "cw-common.resources" . | nindent 12 }}
{{- with (include "cw-common.livenessProbe" .) }}
livenessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with (include "cw-common.readinessProbe" .) }}
readinessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with .Values.global.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}

View File

@ -0,0 +1,18 @@
{{- if and .Values.pdb .Values.pdb.enabled }}
apiVersion: policy/v1
kind: PodDisruptionBudget
metadata:
name: {{ include "call-event-handler-app.fullname" . }}
labels:
{{- include "call-event-handler-app.labels" . | nindent 4 }}
spec:
{{- if .Values.pdb.minAvailable }}
minAvailable: {{ .Values.pdb.minAvailable }}
{{- end }}
{{- if .Values.pdb.maxUnavailable }}
maxUnavailable: {{ .Values.pdb.maxUnavailable }}
{{- end }}
selector:
matchLabels:
{{- include "call-event-handler-app.selectorLabels" . | nindent 6 }}
{{- end }}

View File

@ -0,0 +1,17 @@
apiVersion: v1
kind: Service
metadata:
name: {{ include "call-event-handler-app.fullname" . }}
labels:
{{- include "call-event-handler-app.labels" . | nindent 4 }}
spec:
type: {{ .Values.service.type | default "ClusterIP" }}
ports:
{{- range .Values.service.ports }}
- name: {{ .name }}
port: {{ .port }}
targetPort: {{ .targetPort }}
protocol: TCP
{{- end }}
selector:
{{- include "call-event-handler-app.selectorLabels" . | nindent 4 }}

View File

@ -0,0 +1,34 @@
image:
name: ''
tag: ''
pullPolicy: Always
replicaCount: 1
service:
targetPort: 9090
debugPort: 5005
type: ClusterIP
ports:
- name: main
port: 5005
targetPort: 5005
- name: metrics
port: 9090
targetPort: 9090
env:
globalEnvIncludes: []
serviceHostPort: {}
extraEnv: []
secrets:
livekit:
name: livekit-secret
apiKeyKey: api-key
secretKey: secret
podAnnotations: {}
podLabels: {}
imagePullSecrets: []
livenessProbe: {}
readinessProbe: {}
affinity: {}
tolerations: []
pdb:
enabled: false

View File

@ -0,0 +1,23 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/

View File

@ -0,0 +1,29 @@
apiVersion: v2
name: call-realtime-app
description: A Helm chart for Kubernetes
# A chart can be either an 'application' or a 'library' chart.
#
# Application charts are a collection of templates that can be packaged into versioned archives
# to be deployed.
#
# Library charts provide useful utilities or functions for the chart developer. They're included as
# a dependency of application charts to inject those utilities and functions into the rendering
# pipeline. Library charts do not define any templates and therefore cannot be deployed.
type: application
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.1.0
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes.
appVersion: "1.16.0"
dependencies:
- name: cw-common
version: "0.1.0"
repository: file://../cw-common

View File

@ -0,0 +1,5 @@
{{- define "call-realtime-app.name" -}}{{ include "cw-common.name" . }}{{- end }}
{{- define "call-realtime-app.fullname" -}}{{ include "cw-common.fullname" . }}{{- end }}
{{- define "call-realtime-app.chart" -}}{{ include "cw-common.chart" . }}{{- end }}
{{- define "call-realtime-app.labels" -}}{{ include "cw-common.labels" . }}{{- end }}
{{- define "call-realtime-app.selectorLabels" -}}{{ include "cw-common.selectorLabels" . }}{{- end }}

View File

@ -0,0 +1,80 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "call-realtime-app.fullname" . }}
labels:
{{- include "call-realtime-app.labels" . | nindent 4 }}
spec:
replicas: {{ .Values.replicaCount }}
selector:
matchLabels:
{{- include "call-realtime-app.selectorLabels" . | nindent 6 }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "call-realtime-app.labels" . | nindent 8 }}
{{- with .Values.podLabels }}
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
volumes:
{{- include "cw-common.volumes.cacerts" . | nindent 8 }}
initContainers:
{{- include "cw-common.initContainer.importCA" . | nindent 8 }}
containers:
- name: {{ include "call-realtime-app.fullname" . }}
image: {{ include "cw-common.image" . }}
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
{{- if .Values.service.debugPort }}
- containerPort: {{ .Values.service.debugPort }}
protocol: TCP
{{- end }}
- containerPort: {{ .Values.service.targetPort }}
protocol: TCP
env:
{{- range .Values.env.globalEnvIncludes }}
{{- include (printf "global.env.%s" .) $ | nindent 12 }}
{{- end }}
{{- range $prefix, $serviceKey := .Values.env.serviceHostPort }}
{{- $svc := index $.Values.global.services $serviceKey }}
- name: {{ $prefix }}_HOST
value: {{ $svc.host | quote }}
- name: {{ $prefix }}_PORT
value: {{ $svc.port | quote }}
{{- end }}
{{- with .Values.env.extraEnv }}
{{- toYaml . | nindent 12 }}
{{- end }}
volumeMounts:
{{- include "cw-common.volumeMounts.cacerts" . | nindent 12 }}
resources:
{{- include "cw-common.resources" . | nindent 12 }}
{{- with (include "cw-common.livenessProbe" .) }}
livenessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with (include "cw-common.readinessProbe" .) }}
readinessProbe:
{{- . | nindent 12 }}
{{- end }}
{{- with .Values.global.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}

Some files were not shown because too many files have changed in this diff Show More