add jvb, wtherpad & web
This commit is contained in:
parent
1009092b9f
commit
e4b357e910
11 changed files with 237 additions and 145 deletions
src
main
cljc/dda/c4k_jitsi
resources/jitsi
test/cljc/dda/c4k_jitsi
|
@ -5,6 +5,7 @@
|
||||||
:cljs [orchestra.core :refer-macros [defn-spec]])
|
:cljs [orchestra.core :refer-macros [defn-spec]])
|
||||||
[dda.c4k-common.common :as cm]
|
[dda.c4k-common.common :as cm]
|
||||||
[dda.c4k-common.predicate :as cp]
|
[dda.c4k-common.predicate :as cp]
|
||||||
|
[dda.c4k-common.ingress :as ing]
|
||||||
[dda.c4k-common.monitoring :as mon]
|
[dda.c4k-common.monitoring :as mon]
|
||||||
[dda.c4k-common.yaml :as yaml]
|
[dda.c4k-common.yaml :as yaml]
|
||||||
[dda.c4k-jitsi.jitsi :as jitsi]
|
[dda.c4k-jitsi.jitsi :as jitsi]
|
||||||
|
@ -37,19 +38,29 @@
|
||||||
(jitsi/jitsi-config resolved-config)
|
(jitsi/jitsi-config resolved-config)
|
||||||
(jitsi/jicofo-config resolved-config)
|
(jitsi/jicofo-config resolved-config)
|
||||||
(jitsi/web-config resolved-config)
|
(jitsi/web-config resolved-config)
|
||||||
|
(jitsi/jvb-config resolved-config)
|
||||||
(jitsi/jibri-config resolved-config)
|
(jitsi/jibri-config resolved-config)
|
||||||
;; [(jitsi/generate-jvb-service config)
|
(jitsi/etherpad resolved-config)
|
||||||
;; (jitsi/generate-web-service config)
|
(ing/generate-ingress-and-cert (merge
|
||||||
;; (jitsi/generate-etherpad-service config)
|
{:service-name "jitsi-meet-web"
|
||||||
;; (jitsi/generate-excalidraw-backend-service config)
|
:service-port 80
|
||||||
;; (jitsi/generate-modelector-service config)
|
:fqdns [(:fqdn resolved-config)]}
|
||||||
;; (jitsi/generate-deployment config)
|
resolved-config))
|
||||||
;; (jitsi/generate-excalidraw-deployment config)
|
(ing/generate-ingress-and-cert (merge
|
||||||
;; (jitsi/generate-modelector-deployment config)]
|
{:service-name "etherpad"
|
||||||
;; (jitsi/generate-ingress-web config)
|
:service-port 9001
|
||||||
;; (jitsi/generate-ingress-etherpad config)
|
:fqdns [(str "etherpad." (:fqdn resolved-config))]}
|
||||||
;; (jitsi/generate-ingress-excalidraw-backend config)
|
resolved-config))
|
||||||
;; (jitsi/generate-ingress-modelector config)
|
(ing/generate-ingress-and-cert (merge
|
||||||
|
{:service-name "excalidraw"
|
||||||
|
:service-port 3002
|
||||||
|
:fqdns [(str "excalidraw." (:fqdn resolved-config))]}
|
||||||
|
resolved-config))
|
||||||
|
(ing/generate-ingress-and-cert (merge
|
||||||
|
{:service-name "moderator-elector"
|
||||||
|
:service-port 80
|
||||||
|
:fqdns [(str "moderator-elector." (:fqdn resolved-config))]}
|
||||||
|
resolved-config))
|
||||||
(when (:contains? resolved-config :mon-cfg)
|
(when (:contains? resolved-config :mon-cfg)
|
||||||
(mon/generate-config)))))))
|
(mon/generate-config)))))))
|
||||||
|
|
||||||
|
@ -62,6 +73,5 @@
|
||||||
#(not (nil? %))
|
#(not (nil? %))
|
||||||
(cm/concat-vec
|
(cm/concat-vec
|
||||||
(jitsi/prosody-auth config auth)
|
(jitsi/prosody-auth config auth)
|
||||||
;[(jitsi/generate-secret-jitsi config auth)]
|
|
||||||
(when (:contains? config :mon-cfg)
|
(when (:contains? config :mon-cfg)
|
||||||
(mon/generate-auth (:mon-cfg config) (:mon-auth auth))))))))
|
(mon/generate-auth (:mon-cfg config) (:mon-auth auth))))))))
|
||||||
|
|
|
@ -5,7 +5,6 @@
|
||||||
:cljs [orchestra.core :refer-macros [defn-spec]])
|
:cljs [orchestra.core :refer-macros [defn-spec]])
|
||||||
[dda.c4k-common.yaml :as yaml]
|
[dda.c4k-common.yaml :as yaml]
|
||||||
[dda.c4k-common.common :as cm]
|
[dda.c4k-common.common :as cm]
|
||||||
[dda.c4k-common.ingress :as ing]
|
|
||||||
[dda.c4k-common.base64 :as b64]
|
[dda.c4k-common.base64 :as b64]
|
||||||
[dda.c4k-common.predicate :as cp]
|
[dda.c4k-common.predicate :as cp]
|
||||||
#?(:cljs [dda.c4k-common.macros :refer-macros [inline-resources]])))
|
#?(:cljs [dda.c4k-common.macros :refer-macros [inline-resources]])))
|
||||||
|
@ -28,116 +27,6 @@
|
||||||
(defmethod yaml/load-resource :jitsi [resource-name]
|
(defmethod yaml/load-resource :jitsi [resource-name]
|
||||||
(get (inline-resources "jitsi") resource-name)))
|
(get (inline-resources "jitsi") resource-name)))
|
||||||
|
|
||||||
(defn-spec generate-ingress-web cp/map-or-seq?
|
|
||||||
[config config?]
|
|
||||||
(ing/generate-ingress-and-cert
|
|
||||||
(merge
|
|
||||||
{:service-name "web"
|
|
||||||
:service-port 80
|
|
||||||
:fqdns [(:fqdn config)]}
|
|
||||||
config)))
|
|
||||||
|
|
||||||
(defn-spec generate-ingress-etherpad cp/map-or-seq?
|
|
||||||
[config config?]
|
|
||||||
(ing/generate-ingress-and-cert
|
|
||||||
(merge
|
|
||||||
{:service-name "etherpad"
|
|
||||||
:service-port 9001
|
|
||||||
:fqdns [(str "etherpad." (:fqdn config))]}
|
|
||||||
config)))
|
|
||||||
|
|
||||||
(defn-spec generate-ingress-excalidraw-backend cp/map-or-seq?
|
|
||||||
[config config?]
|
|
||||||
(ing/generate-ingress-and-cert
|
|
||||||
(merge
|
|
||||||
{:service-name "excalidraw-backend"
|
|
||||||
:service-port 3002
|
|
||||||
:fqdns [(str "excalidraw-backend." (:fqdn config))]}
|
|
||||||
config)))
|
|
||||||
|
|
||||||
(defn-spec generate-ingress-modelector cp/map-or-seq?
|
|
||||||
[config config?]
|
|
||||||
(ing/generate-ingress-and-cert
|
|
||||||
(merge
|
|
||||||
{:service-name "modelector"
|
|
||||||
:service-port 80
|
|
||||||
:fqdns [(str "modelector." (:fqdn config))]}
|
|
||||||
config)))
|
|
||||||
|
|
||||||
(defn-spec generate-secret-jitsi cp/map-or-seq?
|
|
||||||
[config config?
|
|
||||||
auth auth?]
|
|
||||||
(let [{:keys [namespace]} config
|
|
||||||
{:keys [jvb-auth-password jicofo-auth-password jicofo-component-secret]} auth]
|
|
||||||
(->
|
|
||||||
(yaml/from-string (yaml/load-resource "jitsi/secret.yaml"))
|
|
||||||
(cm/replace-all-matching "NAMESPACE" namespace)
|
|
||||||
(cm/replace-key-value :JVB_AUTH_PASSWORD (b64/encode jvb-auth-password))
|
|
||||||
(cm/replace-key-value :JICOFO_AUTH_PASSWORD (b64/encode jicofo-auth-password))
|
|
||||||
(cm/replace-key-value :JICOFO_COMPONENT_SECRET (b64/encode jicofo-component-secret)))))
|
|
||||||
|
|
||||||
(defn-spec generate-jvb-service cp/map-or-seq?
|
|
||||||
[config config?]
|
|
||||||
(let [{:keys [namespace]} config]
|
|
||||||
(->
|
|
||||||
(yaml/from-string (yaml/load-resource "jitsi/jvb-service.yaml"))
|
|
||||||
(cm/replace-all-matching "NAMESPACE" namespace))))
|
|
||||||
|
|
||||||
(defn-spec generate-web-service cp/map-or-seq?
|
|
||||||
[config config?]
|
|
||||||
(let [{:keys [namespace]} config]
|
|
||||||
(->
|
|
||||||
(yaml/load-as-edn "jitsi/web-service.yaml")
|
|
||||||
(cm/replace-all-matching "NAMESPACE" namespace))))
|
|
||||||
|
|
||||||
(defn-spec generate-etherpad-service cp/map-or-seq?
|
|
||||||
[config config?]
|
|
||||||
(let [{:keys [namespace]} config]
|
|
||||||
(->
|
|
||||||
(yaml/load-as-edn "jitsi/etherpad-service.yaml")
|
|
||||||
(cm/replace-all-matching "NAMESPACE" namespace))))
|
|
||||||
|
|
||||||
(defn-spec generate-excalidraw-backend-service cp/map-or-seq?
|
|
||||||
[config config?]
|
|
||||||
(let [{:keys [namespace]} config]
|
|
||||||
(->
|
|
||||||
(yaml/load-as-edn "jitsi/excalidraw-backend-service.yaml")
|
|
||||||
(cm/replace-all-matching "NAMESPACE" namespace))))
|
|
||||||
|
|
||||||
(defn-spec generate-modelector-service cp/map-or-seq?
|
|
||||||
[config config?]
|
|
||||||
(let [{:keys [namespace]} config]
|
|
||||||
(->
|
|
||||||
(yaml/load-as-edn "jitsi/modelector-service.yaml")
|
|
||||||
(cm/replace-all-matching "NAMESPACE" namespace))))
|
|
||||||
|
|
||||||
(defn-spec generate-deployment cp/map-or-seq?
|
|
||||||
[config config?]
|
|
||||||
(let [{:keys [fqdn namespace]} config]
|
|
||||||
(->
|
|
||||||
(yaml/load-as-edn "jitsi/deployment.yaml")
|
|
||||||
(cm/replace-all-matching "REPLACE_JITSI_FQDN" fqdn)
|
|
||||||
(cm/replace-all-matching "NAMESPACE" namespace)
|
|
||||||
(cm/replace-all-matching "REPLACE_ETHERPAD_URL"
|
|
||||||
(str "https://etherpad." fqdn "/p/"))
|
|
||||||
|
|
||||||
(cm/replace-all-matching "REPLACE_EXCALIDRAW_BACKEND_URL"
|
|
||||||
(str "https://excalidraw-backend." fqdn)))))
|
|
||||||
|
|
||||||
(defn-spec generate-excalidraw-deployment cp/map-or-seq?
|
|
||||||
[config config?]
|
|
||||||
(let [{:keys [fqdn namespace]} config]
|
|
||||||
(->
|
|
||||||
(yaml/load-as-edn "jitsi/excalidraw-deployment.yaml")
|
|
||||||
(cm/replace-all-matching "NAMESPACE" namespace))))
|
|
||||||
|
|
||||||
(defn-spec generate-modelector-deployment cp/map-or-seq?
|
|
||||||
[config config?]
|
|
||||||
(let [{:keys [fqdn namespace]} config]
|
|
||||||
(->
|
|
||||||
(yaml/load-as-edn "jitsi/modelector-deployment.yaml")
|
|
||||||
(cm/replace-all-matching "NAMESPACE" namespace))))
|
|
||||||
|
|
||||||
(defn- load-and-adjust-namespace
|
(defn- load-and-adjust-namespace
|
||||||
[file namespace]
|
[file namespace]
|
||||||
(->
|
(->
|
||||||
|
@ -196,11 +85,26 @@
|
||||||
(load-and-adjust-namespace "jitsi/web-config-init-cm.yaml" namespace)
|
(load-and-adjust-namespace "jitsi/web-config-init-cm.yaml" namespace)
|
||||||
(->
|
(->
|
||||||
(load-and-adjust-namespace "jitsi/web-config-envs-cm.yaml" namespace)
|
(load-and-adjust-namespace "jitsi/web-config-envs-cm.yaml" namespace)
|
||||||
(cm/replace-key-value :XMPP_BOSH_URL_BASE (str "http://prosody." namespace ".svc.cluster.local:5280")))
|
(cm/replace-key-value :XMPP_BOSH_URL_BASE (str "http://prosody." namespace ".svc.cluster.local:5280"))
|
||||||
|
(cm/replace-key-value :ETHERPAD_PUBLIC_URL (str "https://etherpad." fqdn "/p/"))
|
||||||
|
(cm/replace-key-value :WHITEBOARD_COLLAB_SERVER_PUBLIC_URL (str "https://excalidraw." fqdn))
|
||||||
|
)
|
||||||
(load-and-adjust-namespace "jitsi/web-config-service.yaml" namespace)
|
(load-and-adjust-namespace "jitsi/web-config-service.yaml" namespace)
|
||||||
(load-and-adjust-namespace "jitsi/web-config-deployment.yaml" namespace)
|
(load-and-adjust-namespace "jitsi/web-config-deployment.yaml" namespace)
|
||||||
(load-and-adjust-namespace "jitsi/web-config-test-deployment.yaml" namespace)]))
|
(load-and-adjust-namespace "jitsi/web-config-test-deployment.yaml" namespace)]))
|
||||||
|
|
||||||
|
(defn-spec jvb-config cp/map-or-seq?
|
||||||
|
[config config?]
|
||||||
|
(let [{:keys [fqdn namespace]} config]
|
||||||
|
[(->
|
||||||
|
(load-and-adjust-namespace "jitsi/jvb-config-envs-cm.yaml" namespace)
|
||||||
|
(cm/replace-key-value :XMPP_SERVER (str "prosody." namespace ".svc.cluster.local")))
|
||||||
|
(load-and-adjust-namespace "jitsi/jvb-config-service.yaml" namespace)
|
||||||
|
(->
|
||||||
|
(load-and-adjust-namespace "jitsi/jvb-config-deployment.yaml" namespace)
|
||||||
|
(cm/replace-all-matching "REPLACE_JITSI_FQDN" fqdn)
|
||||||
|
)]))
|
||||||
|
|
||||||
(defn-spec jibri-config cp/map-or-seq?
|
(defn-spec jibri-config cp/map-or-seq?
|
||||||
[config config?]
|
[config config?]
|
||||||
(let [{:keys [fqdn namespace]} config]
|
(let [{:keys [fqdn namespace]} config]
|
||||||
|
@ -212,3 +116,37 @@
|
||||||
(load-and-adjust-namespace "jitsi/jibri-config-init-cm.yaml" namespace)
|
(load-and-adjust-namespace "jitsi/jibri-config-init-cm.yaml" namespace)
|
||||||
(load-and-adjust-namespace "jitsi/jibri-config-service.yaml" namespace)
|
(load-and-adjust-namespace "jitsi/jibri-config-service.yaml" namespace)
|
||||||
(load-and-adjust-namespace "jitsi/jibri-config-deployment.yaml" namespace)]))
|
(load-and-adjust-namespace "jitsi/jibri-config-deployment.yaml" namespace)]))
|
||||||
|
|
||||||
|
(defn-spec etherpad-config cp/map-or-seq?
|
||||||
|
[config config?]
|
||||||
|
(let [{:keys [namespace]} config]
|
||||||
|
[(load-and-adjust-namespace "jitsi/etherpad-config-service.yaml" namespace)
|
||||||
|
(load-and-adjust-namespace "jitsi/etherpad-config-deployment.yaml" namespace)]))
|
||||||
|
|
||||||
|
(defn-spec generate-excalidraw-backend-service cp/map-or-seq?
|
||||||
|
[config config?]
|
||||||
|
(let [{:keys [namespace]} config]
|
||||||
|
(->
|
||||||
|
(yaml/load-as-edn "jitsi/excalidraw-backend-service.yaml")
|
||||||
|
(cm/replace-all-matching "NAMESPACE" namespace))))
|
||||||
|
|
||||||
|
(defn-spec generate-modelector-service cp/map-or-seq?
|
||||||
|
[config config?]
|
||||||
|
(let [{:keys [namespace]} config]
|
||||||
|
(->
|
||||||
|
(yaml/load-as-edn "jitsi/modelector-service.yaml")
|
||||||
|
(cm/replace-all-matching "NAMESPACE" namespace))))
|
||||||
|
|
||||||
|
(defn-spec generate-excalidraw-deployment cp/map-or-seq?
|
||||||
|
[config config?]
|
||||||
|
(let [{:keys [fqdn namespace]} config]
|
||||||
|
(->
|
||||||
|
(yaml/load-as-edn "jitsi/excalidraw-deployment.yaml")
|
||||||
|
(cm/replace-all-matching "NAMESPACE" namespace))))
|
||||||
|
|
||||||
|
(defn-spec generate-modelector-deployment cp/map-or-seq?
|
||||||
|
[config config?]
|
||||||
|
(let [{:keys [fqdn namespace]} config]
|
||||||
|
(->
|
||||||
|
(yaml/load-as-edn "jitsi/modelector-deployment.yaml")
|
||||||
|
(cm/replace-all-matching "NAMESPACE" namespace))))
|
||||||
|
|
20
src/main/resources/jitsi/etherpad-config-deployment.yaml
Normal file
20
src/main/resources/jitsi/etherpad-config-deployment.yaml
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: etherpad
|
||||||
|
namespace: NAMESPACE
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: etherpad
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/name: etherpad
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: etherpad
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: etherpad
|
||||||
|
image: etherpad/etherpad:2
|
14
src/main/resources/jitsi/etherpad-config-service.yaml
Normal file
14
src/main/resources/jitsi/etherpad-config-service.yaml
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: etherpad
|
||||||
|
namespace: NAMESPACE
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: etherpad
|
||||||
|
spec:
|
||||||
|
ports:
|
||||||
|
- name: etherpad
|
||||||
|
port: 9001
|
||||||
|
targetPort: 9001
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/name: etherpad
|
62
src/main/resources/jitsi/jvb-config-deployment.yaml
Normal file
62
src/main/resources/jitsi/jvb-config-deployment.yaml
Normal file
|
@ -0,0 +1,62 @@
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
namespace: NAMESPACE
|
||||||
|
name: jitsi-meet-jvb
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: jitsi-meet
|
||||||
|
app.kubernetes.io/component: jvb
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/name: jitsi-meet
|
||||||
|
app.kubernetes.io/component: jvb
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: jitsi-meet
|
||||||
|
app.kubernetes.io/component: jvb
|
||||||
|
spec:
|
||||||
|
serviceAccountName: jitsi-meet
|
||||||
|
securityContext:
|
||||||
|
{}
|
||||||
|
containers:
|
||||||
|
- name: jitsi-meet
|
||||||
|
securityContext:
|
||||||
|
{}
|
||||||
|
image: "jitsi/jvb:stable-9646"
|
||||||
|
imagePullPolicy: IfNotPresent
|
||||||
|
envFrom:
|
||||||
|
- secretRef:
|
||||||
|
name: prosody-jvb
|
||||||
|
- configMapRef:
|
||||||
|
name: prosody-common
|
||||||
|
- configMapRef:
|
||||||
|
name: jitsi-meet-jvb
|
||||||
|
env:
|
||||||
|
- name: DOCKER_HOST_ADDRESS
|
||||||
|
value: REPLACE_JITSI_FQDN
|
||||||
|
- name: JVB_ADVERTISE_IPS
|
||||||
|
value: REPLACE_JITSI_FQDN
|
||||||
|
- name: JVB_WS_SERVER_ID
|
||||||
|
valueFrom:
|
||||||
|
fieldRef:
|
||||||
|
fieldPath: status.podIP
|
||||||
|
ports:
|
||||||
|
- name: rtp-udp
|
||||||
|
containerPort: 10000
|
||||||
|
protocol: UDP
|
||||||
|
- name: colibri-ws-tcp
|
||||||
|
containerPort: 9090
|
||||||
|
protocol: TCP
|
||||||
|
livenessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /about/health
|
||||||
|
port: 8080
|
||||||
|
readinessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /about/health
|
||||||
|
port: 8080
|
||||||
|
resources:
|
||||||
|
{}
|
15
src/main/resources/jitsi/jvb-config-envs-cm.yaml
Normal file
15
src/main/resources/jitsi/jvb-config-envs-cm.yaml
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
apiVersion: v1
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
namespace: NAMESPACE
|
||||||
|
name: jitsi-meet-jvb
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: jitsi-meet
|
||||||
|
app.kubernetes.io/component: jvb
|
||||||
|
data:
|
||||||
|
JVB_BREWERY_MUC: 'jvbbrewery'
|
||||||
|
JVB_PORT: '10000'
|
||||||
|
JVB_STUN_SERVERS: 'meet-jit-si-turnrelay.jitsi.net:443'
|
||||||
|
JVB_TCP_HARVESTER_DISABLED: '1'
|
||||||
|
XMPP_SERVER: REPLACE_ME
|
||||||
|
COLIBRI_REST_ENABLED: 'true'
|
21
src/main/resources/jitsi/jvb-config-service.yaml
Normal file
21
src/main/resources/jitsi/jvb-config-service.yaml
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
namespace: NAMESPACE
|
||||||
|
name: jitsi-meet-jvb
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: jitsi-meet
|
||||||
|
app.kubernetes.io/component: jvb
|
||||||
|
annotations:
|
||||||
|
metallb.universe.tf/allow-shared-ip: "shared-ip-service-group"
|
||||||
|
metallb.universe.tf/address-pool: public
|
||||||
|
spec:
|
||||||
|
type: LoadBalancer
|
||||||
|
ports:
|
||||||
|
- port: 10000
|
||||||
|
protocol: UDP
|
||||||
|
name: rtp-udp
|
||||||
|
externalTrafficPolicy: Cluster
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/name: jitsi-meet
|
||||||
|
app.kubernetes.io/component: jvb
|
|
@ -25,7 +25,7 @@ spec:
|
||||||
- name: jitsi-meet
|
- name: jitsi-meet
|
||||||
securityContext:
|
securityContext:
|
||||||
{}
|
{}
|
||||||
image: "jitsi/web:stable-9646"
|
image: domaindrivenarchitecture/c4k-jitsi-web
|
||||||
imagePullPolicy: IfNotPresent
|
imagePullPolicy: IfNotPresent
|
||||||
envFrom:
|
envFrom:
|
||||||
- configMapRef:
|
- configMapRef:
|
||||||
|
|
|
@ -10,4 +10,13 @@ data:
|
||||||
DISABLE_HTTPS: "1"
|
DISABLE_HTTPS: "1"
|
||||||
ENABLE_HTTP_REDIRECT: "0"
|
ENABLE_HTTP_REDIRECT: "0"
|
||||||
JICOFO_AUTH_USER: focus
|
JICOFO_AUTH_USER: focus
|
||||||
XMPP_BOSH_URL_BASE: 'http://prosody.NAMESPACE.svc.cluster.local:5280'
|
XMPP_BOSH_URL_BASE: REPLACE_ME
|
||||||
|
DEFAULT_LANGUAGE: de
|
||||||
|
RESOLUTION: "480"
|
||||||
|
RESOLUTION_MIN: "240"
|
||||||
|
RESOLUTION_WIDTH: "853"
|
||||||
|
RESOLUTION_WIDTH_MIN: "427"
|
||||||
|
DISABLE_AUDIO_LEVELS: "true"
|
||||||
|
ETHERPAD_PUBLIC_URL: REPLACE_ME
|
||||||
|
WHITEBOARD_ENABLED: "true"
|
||||||
|
WHITEBOARD_COLLAB_SERVER_PUBLIC_URL: REPLACE_ME
|
|
@ -1,25 +1,25 @@
|
||||||
apiVersion: apps/v1
|
apiVersion: apps/v1
|
||||||
kind: Deployment
|
kind: Deployment
|
||||||
metadata:
|
metadata:
|
||||||
name: "prosody-test-connection"
|
name: "jitsi-meet-web-test-connection"
|
||||||
namespace: NAMESPACE
|
namespace: NAMESPACE
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: "prosody-test-connection"
|
app.kubernetes.io/name: jitsi-meet
|
||||||
app.kubernetes.io/component: prosody
|
app.kubernetes.io/component: web
|
||||||
spec:
|
spec:
|
||||||
replicas: 0
|
replicas: 0
|
||||||
strategy:
|
strategy:
|
||||||
type: Recreate
|
type: Recreate
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
app.kubernetes.io/name: "prosody-test-connection"
|
app.kubernetes.io/name: "jitsi-meet-web-test-connection"
|
||||||
template:
|
template:
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: "prosody-test-connection"
|
app.kubernetes.io/name: "jitsi-meet-web-test-connection"
|
||||||
spec:
|
spec:
|
||||||
containers:
|
containers:
|
||||||
- name: wget
|
- name: wget
|
||||||
image: busybox
|
image: busybox
|
||||||
command: ['wget']
|
command: ['wget']
|
||||||
args: ['prosody:5280/http-bind']
|
args: ['jitsi-meet-web:80']
|
|
@ -9,18 +9,9 @@
|
||||||
(st/instrument `cut/prosody-auth)
|
(st/instrument `cut/prosody-auth)
|
||||||
(st/instrument `cut/jitsi-config)
|
(st/instrument `cut/jitsi-config)
|
||||||
(st/instrument `cut/jibri-config)
|
(st/instrument `cut/jibri-config)
|
||||||
|
(st/instrument `cut/web-config)
|
||||||
(deftest should-generate-etherpad-service
|
(st/instrument `cut/jvb-config)
|
||||||
(is (= {:apiVersion "v1",
|
(st/instrument `cut/etherpad-config)
|
||||||
:kind "Service",
|
|
||||||
:metadata
|
|
||||||
{:labels {:service "etherpad"}, :name "etherpad", :namespace "jitsi"},
|
|
||||||
:spec
|
|
||||||
{:ports [{:name "etherpad", :port 9001, :targetPort 9001}],
|
|
||||||
:selector {:app "jitsi"}}}
|
|
||||||
(cut/generate-etherpad-service
|
|
||||||
{:fqdn "xy.xy.xy"
|
|
||||||
:namespace "jitsi"}))))
|
|
||||||
|
|
||||||
(deftest should-generate-excalidraw-backend-service
|
(deftest should-generate-excalidraw-backend-service
|
||||||
(is (= {:apiVersion "v1",
|
(is (= {:apiVersion "v1",
|
||||||
|
@ -162,3 +153,15 @@
|
||||||
{:fqdn "xy.xy.xy"
|
{:fqdn "xy.xy.xy"
|
||||||
:namespace "jitsi"})))))
|
:namespace "jitsi"})))))
|
||||||
|
|
||||||
|
(deftest should-generate-jvb
|
||||||
|
(is (= 3
|
||||||
|
(count (cut/jvb-config
|
||||||
|
{:fqdn "xy.xy.xy"
|
||||||
|
:namespace "jitsi"})))))
|
||||||
|
|
||||||
|
(deftest should-generate-etherpad
|
||||||
|
(is (= 2
|
||||||
|
(count (cut/etherpad-config
|
||||||
|
{:fqdn "xy.xy.xy"
|
||||||
|
:namespace "jitsi"})))))
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue