Skip to content

Commit a8c0247

Browse files
Merge pull request #361 from element-hq/gaelg/rename-sfu-jwt
matrix-rtc: rationalize names
2 parents 3c03f24 + 05c6cdb commit a8c0247

12 files changed

+57
-52
lines changed

Diff for: charts/matrix-stack/configs/matrix-rtc/sfu/config.yaml.tpl

+1-1
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ key_file: /secrets/{{ (printf "/secrets/%s"
3737
(include "element-io.ess-library.provided-secret-path" (
3838
dict "root" $root "context" (
3939
dict "secretPath" "matrixRTC.livekitAuth.keysYaml"
40-
"defaultSecretName" (printf "%s-matrix-rtc-sfu-jwt" $root.Release.Name)
40+
"defaultSecretName" (printf "%s-matrix-rtc-authorizer" $root.Release.Name)
4141
"defaultSecretKey" "LIVEKIT_KEYS_YAML"
4242
)
4343
))) }}

Diff for: charts/matrix-stack/templates/matrix-rtc/_helpers.tpl

+22-11
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,24 @@ Copyright 2024 New Vector Ltd
44
SPDX-License-Identifier: AGPL-3.0-only
55
*/ -}}
66

7-
{{- define "element-io.matrix-rtc-sfu-jwt.labels" -}}
7+
{{- define "element-io.matrix-rtc-ingress.labels" -}}
8+
{{- $root := .root -}}
9+
{{- with required "element-io.matrix-rtc.labels missing context" .context -}}
10+
{{ include "element-io.ess-library.labels.common" (dict "root" $root "context" .labels) }}
11+
app.kubernetes.io/component: matrix-rtc
12+
app.kubernetes.io/name: matrix-rtc
13+
app.kubernetes.io/instance: {{ $root.Release.Name }}-matrix-rtc
14+
app.kubernetes.io/version: {{ .image.tag }}
15+
{{- end }}
16+
{{- end }}
17+
18+
{{- define "element-io.matrix-rtc-authorizer.labels" -}}
819
{{- $root := .root -}}
920
{{- with required "element-io.matrix-rtc.labels missing context" .context -}}
1021
{{ include "element-io.ess-library.labels.common" (dict "root" $root "context" .labels) }}
1122
app.kubernetes.io/component: matrix-rtc-authorizer
12-
app.kubernetes.io/name: matrix-rtc-sfu-jwt
13-
app.kubernetes.io/instance: {{ $root.Release.Name }}-matrix-rtc-sfu-jwt
23+
app.kubernetes.io/name: matrix-rtc-authorizer
24+
app.kubernetes.io/instance: {{ $root.Release.Name }}-matrix-rtc-authorizer
1425
app.kubernetes.io/version: {{ .image.tag }}
1526
{{- end }}
1627
{{- end }}
@@ -37,9 +48,9 @@ app.kubernetes.io/version: {{ .image.tag }}
3748
{{- end }}
3849
{{- end }}
3950

40-
{{- define "element-io.matrix-rtc-sfu-jwt.env" }}
51+
{{- define "element-io.matrix-rtc-authorizer.env" }}
4152
{{- $root := .root -}}
42-
{{- with required "element-io.sfu-jwt.env missing context" .context -}}
53+
{{- with required "element-io.authorizer.env missing context" .context -}}
4354
{{- $resultEnv := dict -}}
4455
{{- range $envEntry := .extraEnv -}}
4556
{{- $_ := set $resultEnv $envEntry.name $envEntry.value -}}
@@ -49,7 +60,7 @@ app.kubernetes.io/version: {{ .image.tag }}
4960
(include "element-io.ess-library.provided-secret-path" (
5061
dict "root" $root "context" (
5162
dict "secretPath" "matrixRTC.livekitAuth.keysYaml"
52-
"defaultSecretName" (printf "%s-matrix-rtc-sfu-jwt" $root.Release.Name)
63+
"defaultSecretName" (printf "%s-matrix-rtc-authorizer" $root.Release.Name)
5364
"defaultSecretKey" "LIVEKIT_KEYS_YAML"
5465
)
5566
))) }}
@@ -60,7 +71,7 @@ app.kubernetes.io/version: {{ .image.tag }}
6071
dict "root" $root "context" (
6172
dict "secretPath" "matrixRTC.livekitAuth.secret"
6273
"initSecretKey" "ELEMENT_CALL_LIVEKIT_SECRET"
63-
"defaultSecretName" (printf "%s-matrix-rtc-sfu-jwt" $root.Release.Name)
74+
"defaultSecretName" (printf "%s-matrix-rtc-authorizer" $root.Release.Name)
6475
"defaultSecretKey" "LIVEKIT_SECRET"
6576
)
6677
))) }}
@@ -77,7 +88,7 @@ app.kubernetes.io/version: {{ .image.tag }}
7788

7889
{{- define "element-io.matrix-rtc-sfu.env" }}
7990
{{- $root := .root -}}
80-
{{- with required "element-io.sfu-jwt missing context" .context -}}
91+
{{- with required "element-io.authorizer missing context" .context -}}
8192
{{- $resultEnv := dict -}}
8293
{{- range $envEntry := .extraEnv -}}
8394
{{- $_ := set $resultEnv $envEntry.name $envEntry.value -}}
@@ -89,15 +100,15 @@ app.kubernetes.io/version: {{ .image.tag }}
89100
{{- end -}}
90101
{{- end -}}
91102

92-
{{- define "element-io.matrix-rtc-sfu-jwt.configSecrets" -}}
103+
{{- define "element-io.matrix-rtc-authorizer.configSecrets" -}}
93104
{{- $root := .root -}}
94-
{{- with required "element-io.matrix-rtc-sfu-jwt.configSecrets missing context" .context -}}
105+
{{- with required "element-io.matrix-rtc-authorizer.configSecrets missing context" .context -}}
95106
{{- $configSecrets := list -}}
96107
{{- if and $root.Values.initSecrets.enabled (include "element-io.init-secrets.generated-secrets" (dict "root" $root)) }}
97108
{{ $configSecrets = append $configSecrets (printf "%s-generated" $root.Release.Name) }}
98109
{{- end }}
99110
{{- if or ((.livekitAuth).keysYaml).value ((.livekitAuth).secret).value -}}
100-
{{ $configSecrets = append $configSecrets (printf "%s-matrix-rtc-sfu-jwt" $root.Release.Name) }}
111+
{{ $configSecrets = append $configSecrets (printf "%s-matrix-rtc-authorizer" $root.Release.Name) }}
101112
{{- end -}}
102113
{{- with ((.livekitAuth).keysYaml).secret -}}
103114
{{ $configSecrets = append $configSecrets (tpl . $root) }}

Diff for: charts/matrix-stack/templates/matrix-rtc/ingress.yaml

+4-4
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,11 @@ kind: Ingress
1010
metadata:
1111
{{- include "element-io.ess-library.ingress.annotations" (dict "root" $ "context" (dict "ingress" .ingress)) | nindent 2 }}
1212
labels:
13-
{{- include "element-io.matrix-rtc-sfu-jwt.labels" (dict "root" $ "context" .) | nindent 4 }}
14-
name: {{ $.Release.Name }}-matrix-rtc-sfu-jwt
13+
{{- include "element-io.matrix-rtc-ingress.labels" (dict "root" $ "context" .) | nindent 4 }}
14+
name: {{ $.Release.Name }}-matrix-rtc
1515
namespace: {{ $.Release.Namespace }}
1616
spec:
17-
{{- include "element-io.ess-library.ingress.tls" (dict "root" $ "context" (dict "ingress" .ingress "ingressName" "matrix-rtc-sfu-jwt")) | nindent 2 }}
17+
{{- include "element-io.ess-library.ingress.tls" (dict "root" $ "context" (dict "ingress" .ingress "ingressName" "matrix-rtc")) | nindent 2 }}
1818
{{- include "element-io.ess-library.ingress.className" (dict "root" $ "context" .ingress.className) | nindent 2 }}
1919
rules:
2020
- host: {{ (tpl .ingress.host $) | quote }}
@@ -24,7 +24,7 @@ spec:
2424
pathType: Prefix
2525
backend:
2626
service:
27-
name: "{{ $.Release.Name }}-matrix-rtc-sfu-jwt"
27+
name: "{{ $.Release.Name }}-matrix-rtc-authorizer"
2828
port:
2929
name: http
3030
{{ if .sfu.enabled }}

Diff for: charts/matrix-stack/templates/matrix-rtc/sfu_deployment.yaml

+3-3
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ spec:
7171
"context" (dict
7272
"secretPath" "matrixRTC.livekitAuth.secret"
7373
"initSecretKey" "ELEMENT_CALL_LIVEKIT_SECRET"
74-
"defaultSecretName" (printf "%s-matrix-rtc-sfu-jwt" $.Release.Name)
74+
"defaultSecretName" (printf "%s-matrix-rtc-authorizer" $.Release.Name)
7575
"defaultSecretKey" "LIVEKIT_SECRET"
7676
)
7777
)
@@ -96,7 +96,7 @@ spec:
9696
- mountPath: /conf
9797
name: rendered-config
9898
readOnly: false
99-
{{- range $secret := include "element-io.matrix-rtc-sfu-jwt.configSecrets" (dict "root" $ "context" $.Values.matrixRTC) | fromJsonArray }}
99+
{{- range $secret := include "element-io.matrix-rtc-authorizer.configSecrets" (dict "root" $ "context" $.Values.matrixRTC) | fromJsonArray }}
100100
- mountPath: /secrets/{{ tpl $secret $ }}
101101
name: "secret-{{ tpl $secret $ }}"
102102
readOnly: true
@@ -192,7 +192,7 @@ spec:
192192
name: plain-config
193193
subPath: config.yaml
194194
volumes:
195-
{{- range $secret := include "element-io.matrix-rtc-sfu-jwt.configSecrets" (dict "root" $ "context" $.Values.matrixRTC) | fromJsonArray }}
195+
{{- range $secret := include "element-io.matrix-rtc-authorizer.configSecrets" (dict "root" $ "context" $.Values.matrixRTC) | fromJsonArray }}
196196
- secret:
197197
secretName: {{ tpl $secret $ }}
198198
name: secret-{{ tpl $secret $ }}

Diff for: charts/matrix-stack/templates/matrix-rtc/sfu_jwt_deployment.yaml

+9-9
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,14 @@ metadata:
1414
{{- toYaml . | nindent 4 }}
1515
{{- end }}
1616
labels:
17-
{{- include "element-io.matrix-rtc-sfu-jwt.labels" (dict "root" $ "context" .) | nindent 4 }}
18-
name: {{ $.Release.Name }}-matrix-rtc-sfu-jwt
17+
{{- include "element-io.matrix-rtc-authorizer.labels" (dict "root" $ "context" .) | nindent 4 }}
18+
name: {{ $.Release.Name }}-matrix-rtc-authorizer
1919
namespace: {{ $.Release.Namespace }}
2020
spec:
2121
replicas: 1
2222
selector:
2323
matchLabels:
24-
app.kubernetes.io/instance: {{ $.Release.Name }}-matrix-rtc-sfu-jwt
24+
app.kubernetes.io/instance: {{ $.Release.Name }}-matrix-rtc-authorizer
2525
strategy:
2626
type: RollingUpdate
2727
rollingUpdate:
@@ -30,7 +30,7 @@ spec:
3030
template:
3131
metadata:
3232
labels:
33-
{{- include "element-io.matrix-rtc-sfu-jwt.labels" (dict "root" $ "context" .) | nindent 8 }}
33+
{{- include "element-io.matrix-rtc-authorizer.labels" (dict "root" $ "context" .) | nindent 8 }}
3434
{{- with .annotations }}
3535
annotations:
3636
{{- toYaml . | nindent 8 }}
@@ -40,9 +40,9 @@ spec:
4040
hostAliases:
4141
{{- tpl (toYaml . | nindent 8) $ }}
4242
{{- end }}
43-
{{- include "element-io.ess-library.pods.commonSpec" (dict "root" $ "context" (dict "componentValues" . "key" "matrix-rtc-sfu-jwt" "deployment" true)) | nindent 6 }}
43+
{{- include "element-io.ess-library.pods.commonSpec" (dict "root" $ "context" (dict "componentValues" . "key" "matrix-rtc-authorizer" "deployment" true)) | nindent 6 }}
4444
containers:
45-
- name: sfu-jwt
45+
- name: authorizer
4646
{{- with .image -}}
4747
{{- if .digest }}
4848
image: "{{ .registry }}/{{ .repository }}@{{ .digest }}"
@@ -57,7 +57,7 @@ spec:
5757
{{- toYaml . | nindent 10 }}
5858
{{- end }}
5959
env:
60-
{{- include "element-io.matrix-rtc-sfu-jwt.env" (dict "root" $ "context" .) | nindent 8 }}
60+
{{- include "element-io.matrix-rtc-authorizer.env" (dict "root" $ "context" .) | nindent 8 }}
6161
ports:
6262
- containerPort: 8080
6363
name: http
@@ -79,13 +79,13 @@ spec:
7979
{{- toYaml . | nindent 10 }}
8080
{{- end }}
8181
volumeMounts:
82-
{{- range $secret := include "element-io.matrix-rtc-sfu-jwt.configSecrets" (dict "root" $ "context" $.Values.matrixRTC) | fromJsonArray }}
82+
{{- range $secret := include "element-io.matrix-rtc-authorizer.configSecrets" (dict "root" $ "context" $.Values.matrixRTC) | fromJsonArray }}
8383
- mountPath: /secrets/{{ tpl $secret $ }}
8484
name: "secret-{{ tpl $secret $ }}"
8585
readOnly: true
8686
{{- end }}
8787
volumes:
88-
{{- range $secret := include "element-io.matrix-rtc-sfu-jwt.configSecrets" (dict "root" $ "context" $.Values.matrixRTC) | fromJsonArray }}
88+
{{- range $secret := include "element-io.matrix-rtc-authorizer.configSecrets" (dict "root" $ "context" $.Values.matrixRTC) | fromJsonArray }}
8989
- secret:
9090
secretName: {{ tpl $secret $ }}
9191
name: secret-{{ tpl $secret $ }}

Diff for: charts/matrix-stack/templates/matrix-rtc/sfu_jwt_secret.yaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,10 @@ SPDX-License-Identifier: AGPL-3.0-only
99
apiVersion: v1
1010
kind: Secret
1111
metadata:
12-
name: {{ $.Release.Name }}-matrix-rtc-sfu-jwt
12+
name: {{ $.Release.Name }}-matrix-rtc-authorizer
1313
namespace: {{ $.Release.Namespace }}
1414
labels:
15-
{{- include "element-io.matrix-rtc-sfu-jwt.labels" (dict "root" $ "context" .) | nindent 4 }}
15+
{{- include "element-io.matrix-rtc-authorizer.labels" (dict "root" $ "context" .) | nindent 4 }}
1616
type: Opaque
1717
data:
1818
{{- if not .keysYaml }}

Diff for: charts/matrix-stack/templates/matrix-rtc/sfu_jwt_service.yaml

+3-3
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ apiVersion: v1
1010
kind: Service
1111
metadata:
1212
labels:
13-
{{- include "element-io.matrix-rtc-sfu-jwt.labels" (dict "root" $ "context" .) | nindent 4 }}
14-
name: {{ $.Release.Name }}-matrix-rtc-sfu-jwt
13+
{{- include "element-io.matrix-rtc-authorizer.labels" (dict "root" $ "context" .) | nindent 4 }}
14+
name: {{ $.Release.Name }}-matrix-rtc-authorizer
1515
namespace: {{ $.Release.Namespace }}
1616
spec:
1717
type: ClusterIP
@@ -20,6 +20,6 @@ spec:
2020
port: 8080
2121
targetPort: http
2222
selector:
23-
app.kubernetes.io/instance: "{{ $.Release.Name }}-matrix-rtc-sfu-jwt"
23+
app.kubernetes.io/instance: "{{ $.Release.Name }}-matrix-rtc-authorizer"
2424
{{- end -}}
2525
{{- end -}}

Diff for: charts/matrix-stack/templates/matrix-rtc/sfu_jwt_service_monitor.yaml

+3-3
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ apiVersion: monitoring.coreos.com/v1
1212
kind: ServiceMonitor
1313
metadata:
1414
labels:
15-
{{- include "element-io.matrix-rtc-sfu-jwt.labels" (dict "root" $ "context" .) | nindent 4 }}
16-
name: {{ $.Release.Name }}-matrix-rtc-sfu-jwt
15+
{{- include "element-io.matrix-rtc-authorizer.labels" (dict "root" $ "context" .) | nindent 4 }}
16+
name: {{ $.Release.Name }}-matrix-rtc-authorizer
1717
namespace: {{ $.Release.Namespace }}
1818
spec:
1919
endpoints:
@@ -23,7 +23,7 @@ spec:
2323
matchLabels:
2424
app.kubernetes.io/part-of: matrix-stack
2525
app.kubernetes.io/component: matrix-rtc-authorizer
26-
app.kubernetes.io/instance: {{ $.Release.Name }}-matrix-rtc-sfu-jwt
26+
app.kubernetes.io/instance: {{ $.Release.Name }}-matrix-rtc-authorizer
2727
{{- end }}
2828
{{- end }}
2929
{{- end -}}

Diff for: charts/matrix-stack/templates/matrix-rtc/sfu_jwt_serviceaccount.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,6 @@ SPDX-License-Identifier: AGPL-3.0-only
66

77
{{- with $.Values.matrixRTC -}}
88
{{- if .enabled -}}
9-
{{- include "element-io.ess-library.serviceAccount" (dict "root" $ "context" (dict "componentValues" . "key" "matrix-rtc-sfu-jwt")) }}
9+
{{- include "element-io.ess-library.serviceAccount" (dict "root" $ "context" (dict "componentValues" . "key" "matrix-rtc-authorizer")) }}
1010
{{- end -}}
1111
{{- end -}}

Diff for: tests/integration/test_element_call.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ async def test_element_call_livekit_jwt(ingress_ready, users, generated_data: ES
3131
"device_id": "something",
3232
}
3333

34-
await ingress_ready("matrix-rtc-sfu-jwt")
34+
await ingress_ready("matrix-rtc")
3535
await ingress_ready("well-known")
3636
livekit_jwt = await aiohttp_post_json(
3737
f"https://mrtc.{generated_data.server_name}/sfu/get",

Diff for: tests/manifests/__init__.py

+4-8
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,6 @@ class DeployableDetails(abc.ABC):
3939
has_db: bool = field(default=False, hash=False)
4040
has_image: bool | None = field(default=None, hash=False)
4141
has_ingress: bool = field(default=True, hash=False)
42-
uses_shared_ingress: bool = field(default=False, hash=False)
4342
has_workloads: bool = field(default=True, hash=False)
4443
has_service_monitor: bool = field(default=True, hash=False)
4544

@@ -177,12 +176,9 @@ def should_visit_with_values(
177176
is_shared_component=True,
178177
),
179178
ComponentDetails(
180-
name="matrix-rtc-sfu-jwt",
181-
value_file_prefix="matrix-rtc",
179+
name="matrix-rtc",
182180
helm_key="matrixRTC",
183-
sub_components=[
184-
SubComponentDetails(name="matrix-rtc-sfu", helm_key="sfu", has_ingress=False, uses_shared_ingress=True)
185-
],
181+
sub_components=[SubComponentDetails(name="matrix-rtc-sfu", helm_key="sfu", has_ingress=False)],
186182
shared_component_names=["init-secrets"],
187183
),
188184
ComponentDetails(
@@ -269,8 +265,8 @@ def _get_deployables_details_from_base_components_names(base_components_names: l
269265
"synapse",
270266
],
271267
"matrix-authentication-service-synapse-secrets-in-helm-values.yaml": ["matrix-authentication-service", "synapse"],
272-
"matrix-rtc-external-livekit-secrets-in-helm-values.yaml": ["matrix-rtc-sfu-jwt"],
273-
"matrix-rtc-external-livekit-secrets-externally-values.yaml": ["matrix-rtc-sfu-jwt"],
268+
"matrix-rtc-external-livekit-secrets-in-helm-values.yaml": ["matrix-rtc"],
269+
"matrix-rtc-external-livekit-secrets-externally-values.yaml": ["matrix-rtc"],
274270
}
275271

276272

Diff for: tests/manifests/test_ingresses.py

+4-6
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,8 @@ async def test_has_ingress(templates, template_to_deployable_details):
2222
if template["kind"] == "Ingress":
2323
seen_deployables_with_ingresses.add(deployable_details)
2424

25-
for seen_deployable in seen_deployables:
26-
assert seen_deployable.has_ingress or seen_deployable.uses_shared_ingress == (
27-
seen_deployable in seen_deployables_with_ingresses
28-
)
25+
for seen_deployable in seen_deployables_with_ingresses:
26+
assert seen_deployable.has_ingress
2927

3028

3129
@pytest.mark.parametrize("values_file", values_files_with_ingresses)
@@ -320,7 +318,7 @@ async def test_ingress_certManager_clusterissuer(make_templates, values):
320318
)
321319
assert template["metadata"]["annotations"]["cert-manager.io/cluster-issuer"] == "cluster-issuer-name"
322320
assert template["spec"]["tls"][0]["secretName"] == f"{template['metadata']['name']}-certmanager-tls", (
323-
f"Ingress {template['name']} does not have correct secret name for cert-manager tls"
321+
f"Ingress {template['metadata']['name']} does not have correct secret name for cert-manager tls"
324322
)
325323

326324

@@ -335,7 +333,7 @@ async def test_ingress_certManager_issuer(make_templates, values):
335333
)
336334
assert template["metadata"]["annotations"]["cert-manager.io/issuer"] == "issuer-name"
337335
assert template["spec"]["tls"][0]["secretName"] == f"{template['metadata']['name']}-certmanager-tls", (
338-
f"Ingress {template['name']} does not have correct secret name for cert-manager tls"
336+
f"Ingress {template['metadata']['name']} does not have correct secret name for cert-manager tls"
339337
)
340338

341339

0 commit comments

Comments
 (0)