diff options
author | Omar Pakker <Omar007@users.noreply.github.com> | 2023-08-29 08:20:37 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-08-29 08:20:37 +0200 |
commit | b538f237df0b78634d3b2f092309faeca102ed36 (patch) | |
tree | cf588ef0e9507531a2ee78e03036d57ca8b8e947 | |
parent | e3a7039c81ae7a123bb705585cfea8c93910d381 (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.yaml | 2 | ||||
-rw-r--r-- | helm/dendrite/templates/deployment.yaml | 9 | ||||
-rw-r--r-- | helm/dendrite/templates/ingress.yaml | 4 | ||||
-rw-r--r-- | helm/dendrite/values.yaml | 10 |
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: |