prometheus-community / helm-charts

Prometheus community Helm charts
Apache License 2.0
4.82k stars 4.93k forks source link

[kube-prometheus-stack] alertmanager.config.global.http_config.no_proxy is invalid #4234

Open lkeijser opened 5 months ago

lkeijser commented 5 months ago

Describe the bug a clear and concise description of what the bug is.

Specifying alertmanager.config.global.http_config.no_proxy throws an error in the operator logs

What's your helm version?

v3.13.2+g2a2fb3b

What's your kubectl version?

Client Version: version.Info{Major:"1", Minor:"26", GitVersion:"v1.26.5", GitCommit:"890a139214b4de1f01543d15003b5bda71aae9c7", GitTreeState:"clean", BuildDate:"2023-05-17T14:14:46Z", GoVersion:"go1.19.9", Compiler:"gc", Platform:"linux/amd64"} Kustomize Version: v4.5.7 Server Version: version.Info{Major:"1", Minor:"26", GitVersion:"v1.26.5", GitCommit:"890a139214b4de1f01543d15003b5bda71aae9c7", GitTreeState:"clean", BuildDate:"2023-05-17T14:08:49Z", GoVersion:"go1.19.9", Compiler:"gc", Platform:"linux/amd64"}

Which chart?

kube-prometheus-stack

What's the chart version?

56.6.2

What happened?

Added this piece of config to values.yaml:

alertmanager:
    config:
      global:
        http_config:
          proxy_url: 'http://webproxy.my.corp:8080'
          no_proxy: 'prometheus-msteams:2000'
        resolve_timeout: 6m

Resulted in an error in the operator logs:

level=error ts=2024-02-05T08:50:16.702986872Z caller=klog.go:126 component=k8s_client_runtime func=ErrorDepth msg="sync \"monitoring/prometheus-stack-rotterdam-alertmanager\" failed: provision alertmanager configuration: failed to initialize from secret: yaml: unmarshal errors:\n line 3: field no_proxy not found in type alertmanager.httpClientConfig"

What you expected to happen?

The configuration should be applied to alertmanager.yml inside the pod

How to reproduce it?

Add the alertmanager.config.global.http_config.no_proxy with any value

Enter the changed values of values.yaml?

alertmanager:
    config:
      global:
        http_config:
          proxy_url: 'http://webproxy.my.corp:8080'
          no_proxy: 'prometheus-msteams:2000'
        resolve_timeout: 6m

Enter the command that you execute and failing/misfunctioning.

N/A

Anything else we need to know?

No response

zeritti commented 5 months ago

The no_proxy field is currently not supported by the operator (0.71). Work in progress: https://github.com/prometheus-operator/prometheus-operator/pull/6290