aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOmar Pakker <Omar007@users.noreply.github.com>2023-08-29 08:20:37 +0200
committerGitHub <noreply@github.com>2023-08-29 08:20:37 +0200
commitb538f237df0b78634d3b2f092309faeca102ed36 (patch)
treecf588ef0e9507531a2ee78e03036d57ca8b8e947
parente3a7039c81ae7a123bb705585cfea8c93910d381 (diff)
[helm] Update Ingress hosts to account for IPv6 (server+client) and scheme (client) (#3182)helm-dendrite-0.13.3
This updates the matchers for deriving the host values from the dendrite config. The original version turned out to have 2 complications: - It did not support IPv6 addresses as host value - It failed for `well_known_client_host` which is a (base) URL instead of a hostname+port. I've verified `well_known_server_name` with ``` dendrite.example.net:443 dendrite.example.net 192.168.1.1 192.168.1.1:1324 [dead::beef]:1234 [dead::beef] [ffff:dead::beef] ``` and `well_known_client_name` with: ``` https://dendrite.example.net:443 https://dendrite.example.net https://dendrite.example.net/ http://dendrite.example.net:8080/ http://192.168.1.1 http://192.168.1.1:8080/ http://[dead::beef]:1234 http://[dead::beef]/ http://[ffff:dead::beef] ``` Fixes #3175 ### Pull Request Checklist <!-- Please read https://matrix-org.github.io/dendrite/development/contributing before submitting your pull request --> * [x] I have added Go unit tests or [Complement integration tests](https://github.com/matrix-org/complement) for this PR _or_ I have justified why this PR doesn't need tests * [x] Pull request includes a [sign off below using a legally identifiable name](https://matrix-org.github.io/dendrite/development/contributing#sign-off) _or_ I have already signed off privately Signed-off-by: `Omar Pakker <Omar007@users.noreply.github.com>` --------- Signed-off-by: Omar Pakker <Omar007@users.noreply.github.com> [skip CI]
-rw-r--r--helm/dendrite/Chart.yaml2
-rw-r--r--helm/dendrite/templates/deployment.yaml9
-rw-r--r--helm/dendrite/templates/ingress.yaml4
-rw-r--r--helm/dendrite/values.yaml10
4 files changed, 4 insertions, 21 deletions
diff --git a/helm/dendrite/Chart.yaml b/helm/dendrite/Chart.yaml
index 46be9f78..5590a39b 100644
--- a/helm/dendrite/Chart.yaml
+++ b/helm/dendrite/Chart.yaml
@@ -1,6 +1,6 @@
apiVersion: v2
name: dendrite
-version: "0.13.2"
+version: "0.13.3"
appVersion: "0.13.2"
description: Dendrite Matrix Homeserver
type: application
diff --git a/helm/dendrite/templates/deployment.yaml b/helm/dendrite/templates/deployment.yaml
index 3a0bd68d..e3f84cda 100644
--- a/helm/dendrite/templates/deployment.yaml
+++ b/helm/dendrite/templates/deployment.yaml
@@ -26,13 +26,6 @@ spec:
annotations:
confighash: secret-{{ .Values.dendrite_config | toYaml | sha256sum | trunc 32 }}
spec:
- strategy:
- type: {{ $.Values.strategy.type }}
- {{- if eq $.Values.strategy.type "RollingUpdate" }}
- rollingUpdate:
- maxSurge: {{ $.Values.strategy.rollingUpdate.maxSurge }}
- maxUnavailable: {{ $.Values.strategy.rollingUpdate.maxUnavailable }}
- {{- end }}
volumes:
- name: {{ include "dendrite.fullname" . }}-conf-vol
secret:
@@ -116,4 +109,4 @@ spec:
failureThreshold: 10
httpGet:
path: /_dendrite/monitor/up
- port: http \ No newline at end of file
+ port: http
diff --git a/helm/dendrite/templates/ingress.yaml b/helm/dendrite/templates/ingress.yaml
index 9ef413dc..4bcaee12 100644
--- a/helm/dendrite/templates/ingress.yaml
+++ b/helm/dendrite/templates/ingress.yaml
@@ -1,8 +1,8 @@
{{- if .Values.ingress.enabled -}}
{{- $fullName := include "dendrite.fullname" . -}}
{{- $serverNameHost := .Values.dendrite_config.global.server_name -}}
-{{- $wellKnownServerHost := default $serverNameHost (regexFind "^[^:]+" .Values.dendrite_config.global.well_known_server_name) -}}
-{{- $wellKnownClientHost := default $serverNameHost (regexFind "^[^:]+" .Values.dendrite_config.global.well_known_client_name) -}}
+{{- $wellKnownServerHost := default $serverNameHost (regexFind "^(\\[.+\\])?[^:]*" .Values.dendrite_config.global.well_known_server_name) -}}
+{{- $wellKnownClientHost := default $serverNameHost (regexFind "//(\\[.+\\])?[^:/]*" .Values.dendrite_config.global.well_known_client_name | trimAll "/") -}}
{{- $allHosts := list $serverNameHost $wellKnownServerHost $wellKnownClientHost | uniq -}}
{{- if semverCompare ">=1.19-0" .Capabilities.KubeVersion.GitVersion -}}
apiVersion: networking.k8s.io/v1
diff --git a/helm/dendrite/values.yaml b/helm/dendrite/values.yaml
index 396e7031..8a72f669 100644
--- a/helm/dendrite/values.yaml
+++ b/helm/dendrite/values.yaml
@@ -75,16 +75,6 @@ strategy:
# -- Maximum number of pods that can be scheduled above the desired number of pods
maxSurge: 25%
-strategy:
- # -- Strategy to use for rolling updates (e.g. Recreate, RollingUpdate)
- # If you are using ReadWriteOnce volumes, you should probably use Recreate
- type: RollingUpdate
- rollingUpdate:
- # -- Maximum number of pods that can be unavailable during the update process
- maxUnavailable: 25%
- # -- Maximum number of pods that can be scheduled above the desired number of pods
- maxSurge: 25%
-
dendrite_config:
version: 2
global: