diff --git a/charts/consul/templates/ingress-gateways-deployment.yaml b/charts/consul/templates/ingress-gateways-deployment.yaml index a0efdceff9..b0815296c2 100644 --- a/charts/consul/templates/ingress-gateways-deployment.yaml +++ b/charts/consul/templates/ingress-gateways-deployment.yaml @@ -294,6 +294,9 @@ spec: {{- if (and $root.Values.global.metrics.enabled $root.Values.global.metrics.enableGatewayMetrics) }} -telemetry-prom-scrape-path="/metrics" {{- end }} + {{- if and $root.Values.externalServers.enabled $root.Values.externalServers.skipServerWatch }} + -server-watch-disabled=true + {{- end }} livenessProbe: tcpSocket: port: 21000 diff --git a/charts/consul/templates/mesh-gateway-deployment.yaml b/charts/consul/templates/mesh-gateway-deployment.yaml index 460bd06fa3..6ee57819f5 100644 --- a/charts/consul/templates/mesh-gateway-deployment.yaml +++ b/charts/consul/templates/mesh-gateway-deployment.yaml @@ -244,6 +244,9 @@ spec: {{- if (and .Values.global.metrics.enabled .Values.global.metrics.enableGatewayMetrics) }} -telemetry-prom-scrape-path="/metrics" {{- end }} + {{- if and .Values.externalServers.enabled .Values.externalServers.skipServerWatch }} + -server-watch-disabled=true + {{- end }} livenessProbe: tcpSocket: port: {{ .Values.meshGateway.containerPort }} diff --git a/charts/consul/templates/terminating-gateways-deployment.yaml b/charts/consul/templates/terminating-gateways-deployment.yaml index 52baf20903..958bbc5f4f 100644 --- a/charts/consul/templates/terminating-gateways-deployment.yaml +++ b/charts/consul/templates/terminating-gateways-deployment.yaml @@ -285,6 +285,9 @@ spec: {{- if (and $root.Values.global.metrics.enabled $root.Values.global.metrics.enableGatewayMetrics) }} -telemetry-prom-scrape-path="/metrics" {{- end }} + {{- if and $root.Values.externalServers.enabled $root.Values.externalServers.skipServerWatch }} + -server-watch-disabled=true + {{- end }} livenessProbe: tcpSocket: port: 8443 diff --git a/charts/consul/test/unit/ingress-gateways-deployment.bats b/charts/consul/test/unit/ingress-gateways-deployment.bats index 16327084bc..faf3451020 100644 --- a/charts/consul/test/unit/ingress-gateways-deployment.bats +++ b/charts/consul/test/unit/ingress-gateways-deployment.bats @@ -312,6 +312,27 @@ load _helpers [ "${actual}" = "null" ] } +#-------------------------------------------------------------------- +# externalServers.skipServerWatch + +@test "ingressGateways/Deployment: sets server-watch-disabled flag when externalServers.enabled and externalServers.skipServerWatch is true" { + cd `chart_dir` + local object=$(helm template \ + -s templates/ingress-gateways-deployment.yaml \ + --set 'ingressGateways.enabled=true' \ + --set 'connectInject.enabled=true' \ + --set 'global.tls.enabled=false' \ + --set 'server.enabled=false' \ + --set 'externalServers.enabled=true' \ + --set 'externalServers.hosts[0]=consul' \ + --set 'externalServers.skipServerWatch=true' \ + . | tee /dev/stderr | + yq -s -r '.[0].spec.template.spec.containers[0].command[2]' | tee /dev/stderr) + + local actual=$(echo $object | yq -r '. | contains("-server-watch-disabled")' | tee /dev/stderr) + [ "${actual}" = "true" ] +} + #-------------------------------------------------------------------- # replicas diff --git a/charts/consul/test/unit/mesh-gateway-deployment.bats b/charts/consul/test/unit/mesh-gateway-deployment.bats index 30b612ef35..00daf34269 100755 --- a/charts/consul/test/unit/mesh-gateway-deployment.bats +++ b/charts/consul/test/unit/mesh-gateway-deployment.bats @@ -140,6 +140,27 @@ key2: value2' \ [ "${actual}" = "null" ] } +#-------------------------------------------------------------------- +# externalServers.skipServerWatch + +@test "meshGateway/Deployment: sets server-watch-disabled flag when externalServers.enabled and externalServers.skipServerWatch is true" { + cd `chart_dir` + local object=$(helm template \ + -s templates/ingress-gateways-deployment.yaml \ + --set 'ingressGateways.enabled=true' \ + --set 'connectInject.enabled=true' \ + --set 'global.tls.enabled=false' \ + --set 'server.enabled=false' \ + --set 'externalServers.enabled=true' \ + --set 'externalServers.hosts[0]=consul' \ + --set 'externalServers.skipServerWatch=true' \ + . | tee /dev/stderr | + yq -s -r '.[0].spec.template.spec.containers[0].command[2]' | tee /dev/stderr) + + local actual=$(echo $object | yq -r '. | contains("-server-watch-disabled")' | tee /dev/stderr) + [ "${actual}" = "true" ] +} + #-------------------------------------------------------------------- # replicas diff --git a/charts/consul/test/unit/terminating-gateways-deployment.bats b/charts/consul/test/unit/terminating-gateways-deployment.bats index 3f312cf760..79c338934e 100644 --- a/charts/consul/test/unit/terminating-gateways-deployment.bats +++ b/charts/consul/test/unit/terminating-gateways-deployment.bats @@ -369,6 +369,27 @@ load _helpers [ "${actual}" = "null" ] } +#-------------------------------------------------------------------- +# externalServers.skipServerWatch + +@test "terminatingGateways/Deployment: sets server-watch-disabled flag when externalServers.enabled and externalServers.skipServerWatch is true" { + cd `chart_dir` + local object=$(helm template \ + -s templates/ingress-gateways-deployment.yaml \ + --set 'ingressGateways.enabled=true' \ + --set 'connectInject.enabled=true' \ + --set 'global.tls.enabled=false' \ + --set 'server.enabled=false' \ + --set 'externalServers.enabled=true' \ + --set 'externalServers.hosts[0]=consul' \ + --set 'externalServers.skipServerWatch=true' \ + . | tee /dev/stderr | + yq -s -r '.[0].spec.template.spec.containers[0].command[2]' | tee /dev/stderr) + + local actual=$(echo $object | yq -r '. | contains("-server-watch-disabled")' | tee /dev/stderr) + [ "${actual}" = "true" ] +} + #-------------------------------------------------------------------- # replicas