🚀 Matrix Gateway: базова реалізація v1
- Matrix Client (підключення та синхронізація) - RBAC Checker (перевірка прав через Postgres) - Job Creator (створення jobs з команд) - NATS Publisher (публікація jobs у streams) - K8s deployment - README з документацією Команди: !embed, !retrieve, !summarize TODO: Реальна інтеграція з Matrix homeserver, статуси результатів
This commit is contained in:
88
infrastructure/kubernetes/matrix-gateway/deployment.yaml
Normal file
88
infrastructure/kubernetes/matrix-gateway/deployment.yaml
Normal file
@@ -0,0 +1,88 @@
|
||||
---
|
||||
# Matrix Gateway Deployment
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: matrix-gateway
|
||||
---
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: matrix-gateway
|
||||
namespace: matrix-gateway
|
||||
labels:
|
||||
app: matrix-gateway
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: matrix-gateway
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: matrix-gateway
|
||||
spec:
|
||||
containers:
|
||||
- name: gateway
|
||||
image: matrix-gateway:latest
|
||||
imagePullPolicy: Never # Local build
|
||||
env:
|
||||
- name: MATRIX_HOMESERVER
|
||||
value: "https://matrix.org" # TODO: Замінити на свій homeserver
|
||||
- name: MATRIX_USER
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: matrix-gateway-secrets
|
||||
key: matrix_user
|
||||
- name: MATRIX_PASSWORD
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: matrix-gateway-secrets
|
||||
key: matrix_password
|
||||
- name: MATRIX_ROOM_ID
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: matrix-gateway-secrets
|
||||
key: matrix_room_id
|
||||
- name: NATS_URL
|
||||
value: "nats://nats-client.nats:4222"
|
||||
- name: POSTGRES_URL
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: matrix-gateway-secrets
|
||||
key: postgres_url
|
||||
resources:
|
||||
requests:
|
||||
memory: "256Mi"
|
||||
cpu: "100m"
|
||||
limits:
|
||||
memory: "512Mi"
|
||||
cpu: "500m"
|
||||
livenessProbe:
|
||||
exec:
|
||||
command:
|
||||
- /bin/sh
|
||||
- -c
|
||||
- "ps aux | grep '[p]ython.*gateway.main' || exit 1"
|
||||
initialDelaySeconds: 30
|
||||
periodSeconds: 10
|
||||
readinessProbe:
|
||||
exec:
|
||||
command:
|
||||
- /bin/sh
|
||||
- -c
|
||||
- "ps aux | grep '[p]ython.*gateway.main' || exit 1"
|
||||
initialDelaySeconds: 5
|
||||
periodSeconds: 5
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: matrix-gateway-secrets
|
||||
namespace: matrix-gateway
|
||||
type: Opaque
|
||||
stringData:
|
||||
matrix_user: "@user:matrix.org" # TODO: Замінити
|
||||
matrix_password: "password" # TODO: Замінити
|
||||
matrix_room_id: "!roomid:matrix.org" # TODO: Замінити
|
||||
postgres_url: "postgresql://user:password@host:5432/db" # TODO: Замінити
|
||||
Reference in New Issue
Block a user