jitsi-k8s/04-add-users.yml

115 lines
3.0 KiB
YAML

apiVersion: v1
kind: ConfigMap
metadata:
name: users
data:
users: |-
user1 asdqwe
user2 asdqwe
user3 asdqwe
clear.sh: |-
#!/bin/bash
[ ! -d /config/data/meet%2ejitsi/accounts ] && exit 0
find /config/data/meet%2ejitsi/accounts/ -type f -exec basename {} .dat \; |
while IFS="" read -r user || [ -n "$user" ]; do
prosodyctl --config /config/prosody.cfg.lua unregister "${user}" meet.jitsi
done
add.sh: |-
#!/bin/bash
while IFS="" read -r line || [ -n "$line" ]; do
username="$(echo "${line}" | cut -d ' ' -f1)"
password="$(echo "${line}" | cut -d ' ' -f2)"
prosodyctl --config /config/prosody.cfg.lua register "${username}" meet.jitsi "${password}"
done < /users
---
apiVersion: batch/v1
kind: Job
metadata:
name: add-users
namespace: jitsi
spec:
template:
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: kubernetes.io/arch
operator: In
values:
- arm64
- amd64
containers:
- name: add-users
image: jitsi/prosody:stable-9457-2
command: ["/bin/bash", "-c"]
args: ["bash /clear.sh && bash /add.sh"]
envFrom:
- configMapRef:
name: env
env:
- name: JICOFO_AUTH_PASSWORD
valueFrom:
secretKeyRef:
name: passwords
key: JICOFO_AUTH_PASSWORD
- name: JVB_AUTH_PASSWORD
valueFrom:
secretKeyRef:
name: passwords
key: JVB_AUTH_PASSWORD
- name: JIGASI_XMPP_PASSWORD
valueFrom:
secretKeyRef:
name: passwords
key: JIGASI_XMPP_PASSWORD
- name: JIBRI_RECORDER_PASSWORD
valueFrom:
secretKeyRef:
name: passwords
key: JIBRI_RECORDER_PASSWORD
- name: JIBRI_XMPP_PASSWORD
valueFrom:
secretKeyRef:
name: passwords
key: JIBRI_XMPP_PASSWORD
volumeMounts:
- mountPath: /config
name: prosody
- mountPath: /prosody-plugins-custom
name: prosody
subPath: prosody-plugins-custom
- mountPath: /users
name: users
subPath: users
- mountPath: /clear.sh
name: users
subPath: clear.sh
- mountPath: /add.sh
name: users
subPath: add.sh
restartPolicy: OnFailure
volumes:
- name: prosody
persistentVolumeClaim:
claimName: prosody
- name: users
configMap:
name: users
items:
- key: users
path: users
- key: clear.sh
path: clear.sh
- key: add.sh
path: add.sh