Merge pull request 'improve-stun-turn' () from improve-stun-turn into main

Reviewed-on: 
This commit is contained in:
jem 2025-03-01 09:35:45 +00:00
commit a8c93c3ce1
9 changed files with 18 additions and 12 deletions

View file

@ -24,9 +24,9 @@
:main dda.c4k-jitsi.uberjar :main dda.c4k-jitsi.uberjar
:uberjar-name "c4k-jitsi-standalone.jar" :uberjar-name "c4k-jitsi-standalone.jar"
:dependencies [[org.clojure/tools.cli "1.1.230"] :dependencies [[org.clojure/tools.cli "1.1.230"]
[ch.qos.logback/logback-classic "1.5.16" [ch.qos.logback/logback-classic "1.5.17"
:exclusions [com.sun.mail/javax.mail]] :exclusions [com.sun.mail/javax.mail]]
[org.slf4j/jcl-over-slf4j "2.0.16"] [org.slf4j/jcl-over-slf4j "2.0.17"]
[com.github.clj-easy/graal-build-time "1.0.5"]]}} [com.github.clj-easy/graal-build-time "1.0.5"]]}}
:release-tasks [["test"] :release-tasks [["test"]
["vcs" "assert-committed"] ["vcs" "assert-committed"]

View file

@ -66,6 +66,11 @@
:service-port 80 :service-port 80
:fqdns [(str "moderator-elector." (:fqdn resolved-config))]} :fqdns [(str "moderator-elector." (:fqdn resolved-config))]}
resolved-config)) resolved-config))
(ing/generate-ingress-and-cert (merge
{:service-name "coturn-turn-tcp"
:service-port 3478
:fqdns [(str "stun." (:fqdn resolved-config))]}
resolved-config))
(when (:contains? resolved-config :mon-cfg) (when (:contains? resolved-config :mon-cfg)
(mon/generate-config))))))) (mon/generate-config)))))))

View file

@ -40,7 +40,8 @@
[(load-and-adjust-namespace "jitsi/prosody-config-serviceaccount.yaml" namespace) [(load-and-adjust-namespace "jitsi/prosody-config-serviceaccount.yaml" namespace)
(-> (->
(load-and-adjust-namespace "jitsi/prosody-config-common-cm.yaml" namespace) (load-and-adjust-namespace "jitsi/prosody-config-common-cm.yaml" namespace)
(cm/replace-all-matching "JITSI_FQDN" fqdn)) (cm/replace-all-matching "JITSI_FQDN" fqdn)
(cm/replace-key-value :STUN_HOST (str "stun." fqdn)))
(load-and-adjust-namespace "jitsi/prosody-config-default-cm.yaml" namespace) (load-and-adjust-namespace "jitsi/prosody-config-default-cm.yaml" namespace)
(load-and-adjust-namespace "jitsi/prosody-config-envs-cm.yaml" namespace) (load-and-adjust-namespace "jitsi/prosody-config-envs-cm.yaml" namespace)
(load-and-adjust-namespace "jitsi/prosody-config-init-cm.yaml" namespace) (load-and-adjust-namespace "jitsi/prosody-config-init-cm.yaml" namespace)
@ -87,6 +88,7 @@
(-> (->
(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 :P2P_STUN_SERVERS (str "stun." fqdn ":443"))
(cm/replace-key-value :ETHERPAD_PUBLIC_URL (str "https://etherpad." fqdn "/p/")) (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)) (cm/replace-key-value :WHITEBOARD_COLLAB_SERVER_PUBLIC_URL (str "https://excalidraw." fqdn))
) )

View file

@ -9,7 +9,6 @@ metadata:
metallb.universe.tf/allow-shared-ip: "shared-ip-service-group" metallb.universe.tf/allow-shared-ip: "shared-ip-service-group"
metallb.universe.tf/address-pool: public metallb.universe.tf/address-pool: public
spec: spec:
type: LoadBalancer
ports: ports:
- name: turn-tcp - name: turn-tcp
port: 3478 port: 3478

View file

@ -9,7 +9,6 @@ metadata:
metallb.universe.tf/allow-shared-ip: "shared-ip-service-group" metallb.universe.tf/allow-shared-ip: "shared-ip-service-group"
metallb.universe.tf/address-pool: public metallb.universe.tf/address-pool: public
spec: spec:
type: LoadBalancer
ports: ports:
- name: turn-udp - name: turn-udp
port: 3478 port: 3478

View file

@ -22,4 +22,6 @@ data:
ENABLE_XMPP_WEBSOCKET: 'true' ENABLE_XMPP_WEBSOCKET: 'true'
ENABLE_RECORDING: "true" ENABLE_RECORDING: "true"
ENABLE_FILE_RECORDING_SERVICE_SHARING: "true" ENABLE_FILE_RECORDING_SERVICE_SHARING: "true"
TZ: 'Europe/Berlin' TZ: 'Europe/Berlin'
STUN_HOST: STUN_FQDN
STUN_PORT: "443"

View file

@ -12,9 +12,6 @@ data:
JICOFO_AUTH_USER: focus JICOFO_AUTH_USER: focus
XMPP_BOSH_URL_BASE: REPLACE_ME XMPP_BOSH_URL_BASE: REPLACE_ME
DEFAULT_LANGUAGE: de DEFAULT_LANGUAGE: de
RESOLUTION: "480" P2P_STUN_SERVERS: REPLACE_ME
RESOLUTION_MIN: "240"
RESOLUTION_WIDTH: "853"
RESOLUTION_WIDTH_MIN: "427"
ETHERPAD_PUBLIC_URL: REPLACE_ME ETHERPAD_PUBLIC_URL: REPLACE_ME
WHITEBOARD_COLLAB_SERVER_PUBLIC_URL: REPLACE_ME WHITEBOARD_COLLAB_SERVER_PUBLIC_URL: REPLACE_ME

View file

@ -17,7 +17,7 @@
(is (s/valid? cut/auth? (yaml/load-as-edn "jitsi-test/valid-auth.yaml")))) (is (s/valid? cut/auth? (yaml/load-as-edn "jitsi-test/valid-auth.yaml"))))
(deftest test-whole-generation (deftest test-whole-generation
(is (= 63 (is (= 65
(count (count
(cut/config-objects (cut/config-objects
(yaml/load-as-edn "jitsi-test/valid-config.yaml"))))) (yaml/load-as-edn "jitsi-test/valid-config.yaml")))))

View file

@ -47,7 +47,9 @@
:ENABLE_XMPP_WEBSOCKET "true", :ENABLE_XMPP_WEBSOCKET "true",
:ENABLE_RECORDING "true", :ENABLE_RECORDING "true",
:ENABLE_FILE_RECORDING_SERVICE_SHARING "true", :ENABLE_FILE_RECORDING_SERVICE_SHARING "true",
:TZ "Europe/Berlin"}} :TZ "Europe/Berlin"
:STUN_HOST "stun.xy.xy.xy",
:STUN_PORT "443"}}
(second (cut/prosody-config (second (cut/prosody-config
{:fqdn "xy.xy.xy" {:fqdn "xy.xy.xy"
:namespace "jitsi"})))) :namespace "jitsi"}))))