1
0
Fork 0
mirror of https://github.com/prometheus-operator/prometheus-operator.git synced 2025-04-21 03:38:43 +00:00

Merge pull request from simonpasquier/merge-release-0.78.2

Merge release 0.78.2
This commit is contained in:
Simon Pasquier 2024-11-21 16:39:55 +01:00 committed by GitHub
commit f13acd0ae2
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
55 changed files with 687 additions and 126 deletions
CHANGELOG.md
Documentation
VERSIONbundle.yaml
example
go.mod
jsonnet/prometheus-operator
pkg

View file

@ -3,6 +3,10 @@
* [ENHANCEMENT] Add support for the `PrometheusText1.0.0` scrape protocol. #7085
* [BUGFIX] Add `goGC` field to `PrometheusAgent` CRD. #6667
## 0.78.2 / 2024-11-21
* [BUGFIX] Revert the removal of the `proxyURL` field in `AlertmanagerConfig` CRD. The field takes precedence over `proxyUrl`. #7114
## 0.78.1 / 2024-10-30
* [BUGFIX] Fix container images for architectures other than `amd64`. #7065 #7066 #7067

26
Documentation/api.md generated
View file

@ -22837,6 +22837,19 @@ SafeTLSConfig
</tr>
<tr>
<td>
<code>proxyURL</code><br/>
<em>
string
</em>
</td>
<td>
<em>(Optional)</em>
<p>Optional proxy URL.</p>
<p>If defined, this field takes precedence over <code>proxyUrl</code>.</p>
</td>
</tr>
<tr>
<td>
<code>proxyUrl</code><br/>
<em>
string
@ -31596,6 +31609,19 @@ SafeTLSConfig
</tr>
<tr>
<td>
<code>proxyURL</code><br/>
<em>
string
</em>
</td>
<td>
<em>(Optional)</em>
<p>Optional proxy URL.</p>
<p>If defined, this field takes precedence over <code>proxyUrl</code>.</p>
</td>
</tr>
<tr>
<td>
<code>proxyUrl</code><br/>
<em>
string

View file

@ -80,7 +80,7 @@ Usage of ./operator:
-namespaces value
Namespaces to scope the interaction of the Prometheus Operator and the apiserver (allow list). This is mutually exclusive with --deny-namespaces.
-prometheus-config-reloader string
Prometheus config reloader image (default "quay.io/prometheus-operator/prometheus-config-reloader:v0.78.1")
Prometheus config reloader image (default "quay.io/prometheus-operator/prometheus-config-reloader:v0.78.2")
-prometheus-default-base-image string
Prometheus default base image (path without tag/version) (default "quay.io/prometheus/prometheus")
-prometheus-instance-namespaces value

View file

@ -26,7 +26,7 @@ metadata:
labels:
app.kubernetes.io/component: controller
app.kubernetes.io/name: prometheus-operator
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
name: prometheus-operator
rules:
- apiGroups:
@ -207,7 +207,7 @@ metadata:
labels:
app.kubernetes.io/component: controller
app.kubernetes.io/name: prometheus-operator
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
name: prometheus-operator
namespace: default
```
@ -223,7 +223,7 @@ metadata:
labels:
app.kubernetes.io/component: controller
app.kubernetes.io/name: prometheus-operator
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
name: prometheus-operator
roleRef:
apiGroup: rbac.authorization.k8s.io

View file

@ -26,7 +26,7 @@ metadata:
labels:
app.kubernetes.io/component: controller
app.kubernetes.io/name: prometheus-operator
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
name: prometheus-operator
rules:
- apiGroups:

View file

@ -86,7 +86,7 @@ kind: ServiceAccount
metadata:
labels:
app.kubernetes.io/name: prometheus-operator-admission-webhook
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
name: prometheus-operator-admission-webhook
namespace: default
```
@ -97,7 +97,7 @@ kind: Deployment
metadata:
labels:
app.kubernetes.io/name: prometheus-operator-admission-webhook
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
name: prometheus-operator-admission-webhook
namespace: default
spec:
@ -114,7 +114,7 @@ spec:
kubectl.kubernetes.io/default-container: prometheus-operator-admission-webhook
labels:
app.kubernetes.io/name: prometheus-operator-admission-webhook
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
spec:
affinity:
podAntiAffinity:
@ -131,7 +131,7 @@ spec:
- --web.enable-tls=true
- --web.cert-file=/etc/tls/private/tls.crt
- --web.key-file=/etc/tls/private/tls.key
image: quay.io/prometheus-operator/admission-webhook:v0.78.1
image: quay.io/prometheus-operator/admission-webhook:v0.78.2
name: prometheus-operator-admission-webhook
ports:
- containerPort: 8443
@ -179,7 +179,7 @@ kind: Service
metadata:
labels:
app.kubernetes.io/name: prometheus-operator-admission-webhook
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
name: prometheus-operator-admission-webhook
namespace: default
spec:

View file

@ -1 +1 @@
0.78.1
0.78.2

108
bundle.yaml generated
View file

@ -4,7 +4,7 @@ kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.16.5
operator.prometheus.io/version: 0.78.1
operator.prometheus.io/version: 0.78.2
name: alertmanagerconfigs.monitoring.coreos.com
spec:
group: monitoring.coreos.com
@ -775,6 +775,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -1766,6 +1772,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -2570,6 +2582,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -3356,6 +3374,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -4176,6 +4200,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -5090,6 +5120,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -5829,6 +5865,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -6671,6 +6713,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -7442,6 +7490,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -8168,6 +8222,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -8881,6 +8941,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -9659,6 +9725,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -9970,7 +10042,7 @@ kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.16.5
operator.prometheus.io/version: 0.78.1
operator.prometheus.io/version: 0.78.2
name: alertmanagers.monitoring.coreos.com
spec:
group: monitoring.coreos.com
@ -18607,7 +18679,7 @@ kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.16.5
operator.prometheus.io/version: 0.78.1
operator.prometheus.io/version: 0.78.2
name: podmonitors.monitoring.coreos.com
spec:
group: monitoring.coreos.com
@ -19796,7 +19868,7 @@ kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.16.5
operator.prometheus.io/version: 0.78.1
operator.prometheus.io/version: 0.78.2
name: probes.monitoring.coreos.com
spec:
group: monitoring.coreos.com
@ -20970,7 +21042,7 @@ kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.16.5
operator.prometheus.io/version: 0.78.1
operator.prometheus.io/version: 0.78.2
name: prometheusagents.monitoring.coreos.com
spec:
group: monitoring.coreos.com
@ -31639,7 +31711,7 @@ kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.16.5
operator.prometheus.io/version: 0.78.1
operator.prometheus.io/version: 0.78.2
name: prometheuses.monitoring.coreos.com
spec:
group: monitoring.coreos.com
@ -44476,7 +44548,7 @@ kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.16.5
operator.prometheus.io/version: 0.78.1
operator.prometheus.io/version: 0.78.2
name: prometheusrules.monitoring.coreos.com
spec:
group: monitoring.coreos.com
@ -44626,7 +44698,7 @@ kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.16.5
operator.prometheus.io/version: 0.78.1
operator.prometheus.io/version: 0.78.2
name: scrapeconfigs.monitoring.coreos.com
spec:
group: monitoring.coreos.com
@ -56132,7 +56204,7 @@ kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.16.5
operator.prometheus.io/version: 0.78.1
operator.prometheus.io/version: 0.78.2
name: servicemonitors.monitoring.coreos.com
spec:
group: monitoring.coreos.com
@ -57349,7 +57421,7 @@ kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.16.5
operator.prometheus.io/version: 0.78.1
operator.prometheus.io/version: 0.78.2
name: thanosrulers.monitoring.coreos.com
spec:
group: monitoring.coreos.com
@ -65412,7 +65484,7 @@ metadata:
labels:
app.kubernetes.io/component: controller
app.kubernetes.io/name: prometheus-operator
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
name: prometheus-operator
roleRef:
apiGroup: rbac.authorization.k8s.io
@ -65429,7 +65501,7 @@ metadata:
labels:
app.kubernetes.io/component: controller
app.kubernetes.io/name: prometheus-operator
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
name: prometheus-operator
rules:
- apiGroups:
@ -65537,7 +65609,7 @@ metadata:
labels:
app.kubernetes.io/component: controller
app.kubernetes.io/name: prometheus-operator
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
name: prometheus-operator
namespace: default
spec:
@ -65553,19 +65625,19 @@ spec:
labels:
app.kubernetes.io/component: controller
app.kubernetes.io/name: prometheus-operator
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
spec:
automountServiceAccountToken: true
containers:
- args:
- --kubelet-service=kube-system/kubelet
- --prometheus-config-reloader=quay.io/prometheus-operator/prometheus-config-reloader:v0.78.1
- --prometheus-config-reloader=quay.io/prometheus-operator/prometheus-config-reloader:v0.78.2
- --kubelet-endpoints=true
- --kubelet-endpointslice=false
env:
- name: GOGC
value: "30"
image: quay.io/prometheus-operator/prometheus-operator:v0.78.1
image: quay.io/prometheus-operator/prometheus-operator:v0.78.2
name: prometheus-operator
ports:
- containerPort: 8080
@ -65599,7 +65671,7 @@ metadata:
labels:
app.kubernetes.io/component: controller
app.kubernetes.io/name: prometheus-operator
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
name: prometheus-operator
namespace: default
---
@ -65609,7 +65681,7 @@ metadata:
labels:
app.kubernetes.io/component: controller
app.kubernetes.io/name: prometheus-operator
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
name: prometheus-operator
namespace: default
spec:

View file

@ -3,7 +3,7 @@ kind: Deployment
metadata:
labels:
app.kubernetes.io/name: prometheus-operator-admission-webhook
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
name: prometheus-operator-admission-webhook
namespace: default
spec:
@ -20,7 +20,7 @@ spec:
kubectl.kubernetes.io/default-container: prometheus-operator-admission-webhook
labels:
app.kubernetes.io/name: prometheus-operator-admission-webhook
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
spec:
affinity:
podAntiAffinity:
@ -37,7 +37,7 @@ spec:
- --web.enable-tls=true
- --web.cert-file=/etc/tls/private/tls.crt
- --web.key-file=/etc/tls/private/tls.key
image: quay.io/prometheus-operator/admission-webhook:v0.78.1
image: quay.io/prometheus-operator/admission-webhook:v0.78.2
name: prometheus-operator-admission-webhook
ports:
- containerPort: 8443

View file

@ -3,7 +3,7 @@ kind: PodDisruptionBudget
metadata:
labels:
app.kubernetes.io/name: prometheus-operator-admission-webhook
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
name: prometheus-operator-admission-webhook
namespace: default
spec:

View file

@ -4,6 +4,6 @@ kind: ServiceAccount
metadata:
labels:
app.kubernetes.io/name: prometheus-operator-admission-webhook
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
name: prometheus-operator-admission-webhook
namespace: default

View file

@ -3,7 +3,7 @@ kind: ServiceMonitor
metadata:
labels:
app.kubernetes.io/name: prometheus-operator-admission-webhook
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
name: prometheus-operator-admission-webhook
namespace: default
spec:
@ -13,4 +13,4 @@ spec:
selector:
matchLabels:
app.kubernetes.io/name: prometheus-operator-admission-webhook
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2

View file

@ -3,7 +3,7 @@ kind: Service
metadata:
labels:
app.kubernetes.io/name: prometheus-operator-admission-webhook
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
name: prometheus-operator-admission-webhook
namespace: default
spec:

View file

@ -4,7 +4,7 @@
"metadata": {
"annotations": {
"controller-gen.kubebuilder.io/version": "v0.16.5",
"operator.prometheus.io/version": "0.78.1"
"operator.prometheus.io/version": "0.78.2"
},
"name": "alertmanagerconfigs.monitoring.coreos.com"
},

View file

@ -774,6 +774,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -1765,6 +1771,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -2569,6 +2581,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -3355,6 +3373,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -4175,6 +4199,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -5089,6 +5119,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -5828,6 +5864,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -6670,6 +6712,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -7441,6 +7489,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -8167,6 +8221,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -8880,6 +8940,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -9658,6 +9724,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -10620,6 +10692,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -11590,6 +11668,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -12380,6 +12464,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -13160,6 +13250,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -13959,6 +14055,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -14845,6 +14947,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -15577,6 +15685,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -16405,6 +16519,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -17162,6 +17282,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -17879,6 +18005,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -18585,6 +18717,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -19342,6 +19480,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'

View file

@ -4,7 +4,7 @@ kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.16.5
operator.prometheus.io/version: 0.78.1
operator.prometheus.io/version: 0.78.2
name: alertmanagerconfigs.monitoring.coreos.com
spec:
group: monitoring.coreos.com
@ -775,6 +775,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -1766,6 +1772,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -2570,6 +2582,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -3356,6 +3374,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -4176,6 +4200,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -5090,6 +5120,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -5829,6 +5865,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -6671,6 +6713,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -7442,6 +7490,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -8168,6 +8222,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -8881,6 +8941,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'
@ -9659,6 +9725,12 @@ spec:
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
type: boolean
proxyURL:
description: |-
Optional proxy URL.
If defined, this field takes precedence over `proxyUrl`.
type: string
proxyUrl:
description: '`proxyURL` defines the HTTP proxy server
to use.'

View file

@ -4,7 +4,7 @@ kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.16.5
operator.prometheus.io/version: 0.78.1
operator.prometheus.io/version: 0.78.2
name: alertmanagers.monitoring.coreos.com
spec:
group: monitoring.coreos.com

View file

@ -4,7 +4,7 @@ kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.16.5
operator.prometheus.io/version: 0.78.1
operator.prometheus.io/version: 0.78.2
name: podmonitors.monitoring.coreos.com
spec:
group: monitoring.coreos.com

View file

@ -4,7 +4,7 @@ kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.16.5
operator.prometheus.io/version: 0.78.1
operator.prometheus.io/version: 0.78.2
name: probes.monitoring.coreos.com
spec:
group: monitoring.coreos.com

View file

@ -4,7 +4,7 @@ kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.16.5
operator.prometheus.io/version: 0.78.1
operator.prometheus.io/version: 0.78.2
name: prometheusagents.monitoring.coreos.com
spec:
group: monitoring.coreos.com

View file

@ -4,7 +4,7 @@ kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.16.5
operator.prometheus.io/version: 0.78.1
operator.prometheus.io/version: 0.78.2
name: prometheuses.monitoring.coreos.com
spec:
group: monitoring.coreos.com

View file

@ -4,7 +4,7 @@ kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.16.5
operator.prometheus.io/version: 0.78.1
operator.prometheus.io/version: 0.78.2
name: prometheusrules.monitoring.coreos.com
spec:
group: monitoring.coreos.com

View file

@ -4,7 +4,7 @@ kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.16.5
operator.prometheus.io/version: 0.78.1
operator.prometheus.io/version: 0.78.2
name: scrapeconfigs.monitoring.coreos.com
spec:
group: monitoring.coreos.com

View file

@ -4,7 +4,7 @@ kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.16.5
operator.prometheus.io/version: 0.78.1
operator.prometheus.io/version: 0.78.2
name: servicemonitors.monitoring.coreos.com
spec:
group: monitoring.coreos.com

View file

@ -4,7 +4,7 @@ kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.16.5
operator.prometheus.io/version: 0.78.1
operator.prometheus.io/version: 0.78.2
name: thanosrulers.monitoring.coreos.com
spec:
group: monitoring.coreos.com

View file

@ -4,7 +4,7 @@ metadata:
labels:
app.kubernetes.io/component: controller
app.kubernetes.io/name: prometheus-operator
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
name: prometheus-operator
roleRef:
apiGroup: rbac.authorization.k8s.io

View file

@ -4,7 +4,7 @@ metadata:
labels:
app.kubernetes.io/component: controller
app.kubernetes.io/name: prometheus-operator
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
name: prometheus-operator
rules:
- apiGroups:

View file

@ -4,7 +4,7 @@ metadata:
labels:
app.kubernetes.io/component: controller
app.kubernetes.io/name: prometheus-operator
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
name: prometheus-operator
namespace: default
spec:
@ -20,19 +20,19 @@ spec:
labels:
app.kubernetes.io/component: controller
app.kubernetes.io/name: prometheus-operator
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
spec:
automountServiceAccountToken: true
containers:
- args:
- --kubelet-service=kube-system/kubelet
- --prometheus-config-reloader=quay.io/prometheus-operator/prometheus-config-reloader:v0.78.1
- --prometheus-config-reloader=quay.io/prometheus-operator/prometheus-config-reloader:v0.78.2
- --kubelet-endpoints=true
- --kubelet-endpointslice=false
env:
- name: GOGC
value: "30"
image: quay.io/prometheus-operator/prometheus-operator:v0.78.1
image: quay.io/prometheus-operator/prometheus-operator:v0.78.2
name: prometheus-operator
ports:
- containerPort: 8080

View file

@ -5,6 +5,6 @@ metadata:
labels:
app.kubernetes.io/component: controller
app.kubernetes.io/name: prometheus-operator
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
name: prometheus-operator
namespace: default

View file

@ -4,7 +4,7 @@ metadata:
labels:
app.kubernetes.io/component: controller
app.kubernetes.io/name: prometheus-operator
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
name: prometheus-operator
namespace: default
spec:
@ -15,4 +15,4 @@ spec:
matchLabels:
app.kubernetes.io/component: controller
app.kubernetes.io/name: prometheus-operator
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2

View file

@ -4,7 +4,7 @@ metadata:
labels:
app.kubernetes.io/component: controller
app.kubernetes.io/name: prometheus-operator
app.kubernetes.io/version: 0.78.1
app.kubernetes.io/version: 0.78.2
name: prometheus-operator
namespace: default
spec:

4
go.mod
View file

@ -21,8 +21,8 @@ require (
github.com/mitchellh/hashstructure v1.1.0
github.com/oklog/run v1.1.0
github.com/prometheus-community/prom-label-proxy v0.11.0
github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring v0.78.1
github.com/prometheus-operator/prometheus-operator/pkg/client v0.78.1
github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring v0.78.2
github.com/prometheus-operator/prometheus-operator/pkg/client v0.78.2
github.com/prometheus/alertmanager v0.27.0
github.com/prometheus/client_golang v1.20.5
github.com/prometheus/common v0.60.1

View file

@ -4,7 +4,7 @@
"metadata": {
"annotations": {
"controller-gen.kubebuilder.io/version": "v0.16.5",
"operator.prometheus.io/version": "0.78.1"
"operator.prometheus.io/version": "0.78.2"
},
"name": "alertmanagerconfigs.monitoring.coreos.com"
},
@ -726,6 +726,10 @@
"description": "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.",
"type": "boolean"
},
"proxyURL": {
"description": "Optional proxy URL.\n\nIf defined, this field takes precedence over `proxyUrl`.",
"type": "string"
},
"proxyUrl": {
"description": "`proxyURL` defines the HTTP proxy server to use.",
"pattern": "^http(s)?://.+$",
@ -1664,6 +1668,10 @@
"description": "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.",
"type": "boolean"
},
"proxyURL": {
"description": "Optional proxy URL.\n\nIf defined, this field takes precedence over `proxyUrl`.",
"type": "string"
},
"proxyUrl": {
"description": "`proxyURL` defines the HTTP proxy server to use.",
"pattern": "^http(s)?://.+$",
@ -2416,6 +2424,10 @@
"description": "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.",
"type": "boolean"
},
"proxyURL": {
"description": "Optional proxy URL.\n\nIf defined, this field takes precedence over `proxyUrl`.",
"type": "string"
},
"proxyUrl": {
"description": "`proxyURL` defines the HTTP proxy server to use.",
"pattern": "^http(s)?://.+$",
@ -3164,6 +3176,10 @@
"description": "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.",
"type": "boolean"
},
"proxyURL": {
"description": "Optional proxy URL.\n\nIf defined, this field takes precedence over `proxyUrl`.",
"type": "string"
},
"proxyUrl": {
"description": "`proxyURL` defines the HTTP proxy server to use.",
"pattern": "^http(s)?://.+$",
@ -3922,6 +3938,10 @@
"description": "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.",
"type": "boolean"
},
"proxyURL": {
"description": "Optional proxy URL.\n\nIf defined, this field takes precedence over `proxyUrl`.",
"type": "string"
},
"proxyUrl": {
"description": "`proxyURL` defines the HTTP proxy server to use.",
"pattern": "^http(s)?://.+$",
@ -4777,6 +4797,10 @@
"description": "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.",
"type": "boolean"
},
"proxyURL": {
"description": "Optional proxy URL.\n\nIf defined, this field takes precedence over `proxyUrl`.",
"type": "string"
},
"proxyUrl": {
"description": "`proxyURL` defines the HTTP proxy server to use.",
"pattern": "^http(s)?://.+$",
@ -5474,6 +5498,10 @@
"description": "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.",
"type": "boolean"
},
"proxyURL": {
"description": "Optional proxy URL.\n\nIf defined, this field takes precedence over `proxyUrl`.",
"type": "string"
},
"proxyUrl": {
"description": "`proxyURL` defines the HTTP proxy server to use.",
"pattern": "^http(s)?://.+$",
@ -6245,6 +6273,10 @@
"description": "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.",
"type": "boolean"
},
"proxyURL": {
"description": "Optional proxy URL.\n\nIf defined, this field takes precedence over `proxyUrl`.",
"type": "string"
},
"proxyUrl": {
"description": "`proxyURL` defines the HTTP proxy server to use.",
"pattern": "^http(s)?://.+$",
@ -6967,6 +6999,10 @@
"description": "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.",
"type": "boolean"
},
"proxyURL": {
"description": "Optional proxy URL.\n\nIf defined, this field takes precedence over `proxyUrl`.",
"type": "string"
},
"proxyUrl": {
"description": "`proxyURL` defines the HTTP proxy server to use.",
"pattern": "^http(s)?://.+$",
@ -7635,6 +7671,10 @@
"description": "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.",
"type": "boolean"
},
"proxyURL": {
"description": "Optional proxy URL.\n\nIf defined, this field takes precedence over `proxyUrl`.",
"type": "string"
},
"proxyUrl": {
"description": "`proxyURL` defines the HTTP proxy server to use.",
"pattern": "^http(s)?://.+$",
@ -8294,6 +8334,10 @@
"description": "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.",
"type": "boolean"
},
"proxyURL": {
"description": "Optional proxy URL.\n\nIf defined, this field takes precedence over `proxyUrl`.",
"type": "string"
},
"proxyUrl": {
"description": "`proxyURL` defines the HTTP proxy server to use.",
"pattern": "^http(s)?://.+$",
@ -9008,6 +9052,10 @@
"description": "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.",
"type": "boolean"
},
"proxyURL": {
"description": "Optional proxy URL.\n\nIf defined, this field takes precedence over `proxyUrl`.",
"type": "string"
},
"proxyUrl": {
"description": "`proxyURL` defines the HTTP proxy server to use.",
"pattern": "^http(s)?://.+$",

View file

@ -595,6 +595,10 @@
description: 'Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.',
type: 'boolean',
},
proxyURL: {
description: 'Optional proxy URL.\n\nIf defined, this field takes precedence over `proxyUrl`.',
type: 'string',
},
proxyUrl: {
description: '`proxyURL` defines the HTTP proxy server to use.',
pattern: '^http(s)?://.+$',
@ -1524,6 +1528,10 @@
description: 'Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.',
type: 'boolean',
},
proxyURL: {
description: 'Optional proxy URL.\n\nIf defined, this field takes precedence over `proxyUrl`.',
type: 'string',
},
proxyUrl: {
description: '`proxyURL` defines the HTTP proxy server to use.',
pattern: '^http(s)?://.+$',
@ -2270,6 +2278,10 @@
description: 'Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.',
type: 'boolean',
},
proxyURL: {
description: 'Optional proxy URL.\n\nIf defined, this field takes precedence over `proxyUrl`.',
type: 'string',
},
proxyUrl: {
description: '`proxyURL` defines the HTTP proxy server to use.',
pattern: '^http(s)?://.+$',
@ -3018,6 +3030,10 @@
description: 'Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.',
type: 'boolean',
},
proxyURL: {
description: 'Optional proxy URL.\n\nIf defined, this field takes precedence over `proxyUrl`.',
type: 'string',
},
proxyUrl: {
description: '`proxyURL` defines the HTTP proxy server to use.',
pattern: '^http(s)?://.+$',
@ -3767,6 +3783,10 @@
description: 'Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.',
type: 'boolean',
},
proxyURL: {
description: 'Optional proxy URL.\n\nIf defined, this field takes precedence over `proxyUrl`.',
type: 'string',
},
proxyUrl: {
description: '`proxyURL` defines the HTTP proxy server to use.',
pattern: '^http(s)?://.+$',
@ -4610,6 +4630,10 @@
description: 'Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.',
type: 'boolean',
},
proxyURL: {
description: 'Optional proxy URL.\n\nIf defined, this field takes precedence over `proxyUrl`.',
type: 'string',
},
proxyUrl: {
description: '`proxyURL` defines the HTTP proxy server to use.',
pattern: '^http(s)?://.+$',
@ -5304,6 +5328,10 @@
description: 'Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.',
type: 'boolean',
},
proxyURL: {
description: 'Optional proxy URL.\n\nIf defined, this field takes precedence over `proxyUrl`.',
type: 'string',
},
proxyUrl: {
description: '`proxyURL` defines the HTTP proxy server to use.',
pattern: '^http(s)?://.+$',
@ -6069,6 +6097,10 @@
description: 'Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.',
type: 'boolean',
},
proxyURL: {
description: 'Optional proxy URL.\n\nIf defined, this field takes precedence over `proxyUrl`.',
type: 'string',
},
proxyUrl: {
description: '`proxyURL` defines the HTTP proxy server to use.',
pattern: '^http(s)?://.+$',
@ -6785,6 +6817,10 @@
description: 'Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.',
type: 'boolean',
},
proxyURL: {
description: 'Optional proxy URL.\n\nIf defined, this field takes precedence over `proxyUrl`.',
type: 'string',
},
proxyUrl: {
description: '`proxyURL` defines the HTTP proxy server to use.',
pattern: '^http(s)?://.+$',
@ -7450,6 +7486,10 @@
description: 'Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.',
type: 'boolean',
},
proxyURL: {
description: 'Optional proxy URL.\n\nIf defined, this field takes precedence over `proxyUrl`.',
type: 'string',
},
proxyUrl: {
description: '`proxyURL` defines the HTTP proxy server to use.',
pattern: '^http(s)?://.+$',
@ -8106,6 +8146,10 @@
description: 'Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.',
type: 'boolean',
},
proxyURL: {
description: 'Optional proxy URL.\n\nIf defined, this field takes precedence over `proxyUrl`.',
type: 'string',
},
proxyUrl: {
description: '`proxyURL` defines the HTTP proxy server to use.',
pattern: '^http(s)?://.+$',
@ -8811,6 +8855,10 @@
description: 'Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.',
type: 'boolean',
},
proxyURL: {
description: 'Optional proxy URL.\n\nIf defined, this field takes precedence over `proxyUrl`.',
type: 'string',
},
proxyUrl: {
description: '`proxyURL` defines the HTTP proxy server to use.',
pattern: '^http(s)?://.+$',

View file

@ -4,7 +4,7 @@
"metadata": {
"annotations": {
"controller-gen.kubebuilder.io/version": "v0.16.5",
"operator.prometheus.io/version": "0.78.1"
"operator.prometheus.io/version": "0.78.2"
},
"name": "alertmanagers.monitoring.coreos.com"
},

View file

@ -4,7 +4,7 @@
"metadata": {
"annotations": {
"controller-gen.kubebuilder.io/version": "v0.16.5",
"operator.prometheus.io/version": "0.78.1"
"operator.prometheus.io/version": "0.78.2"
},
"name": "podmonitors.monitoring.coreos.com"
},

View file

@ -4,7 +4,7 @@
"metadata": {
"annotations": {
"controller-gen.kubebuilder.io/version": "v0.16.5",
"operator.prometheus.io/version": "0.78.1"
"operator.prometheus.io/version": "0.78.2"
},
"name": "probes.monitoring.coreos.com"
},

View file

@ -4,7 +4,7 @@
"metadata": {
"annotations": {
"controller-gen.kubebuilder.io/version": "v0.16.5",
"operator.prometheus.io/version": "0.78.1"
"operator.prometheus.io/version": "0.78.2"
},
"name": "prometheusagents.monitoring.coreos.com"
},

View file

@ -4,7 +4,7 @@
"metadata": {
"annotations": {
"controller-gen.kubebuilder.io/version": "v0.16.5",
"operator.prometheus.io/version": "0.78.1"
"operator.prometheus.io/version": "0.78.2"
},
"name": "prometheuses.monitoring.coreos.com"
},

View file

@ -4,7 +4,7 @@
"metadata": {
"annotations": {
"controller-gen.kubebuilder.io/version": "v0.16.5",
"operator.prometheus.io/version": "0.78.1"
"operator.prometheus.io/version": "0.78.2"
},
"name": "prometheusrules.monitoring.coreos.com"
},

View file

@ -4,7 +4,7 @@
"metadata": {
"annotations": {
"controller-gen.kubebuilder.io/version": "v0.16.5",
"operator.prometheus.io/version": "0.78.1"
"operator.prometheus.io/version": "0.78.2"
},
"name": "scrapeconfigs.monitoring.coreos.com"
},

View file

@ -4,7 +4,7 @@
"metadata": {
"annotations": {
"controller-gen.kubebuilder.io/version": "v0.16.5",
"operator.prometheus.io/version": "0.78.1"
"operator.prometheus.io/version": "0.78.2"
},
"name": "servicemonitors.monitoring.coreos.com"
},

View file

@ -4,7 +4,7 @@
"metadata": {
"annotations": {
"controller-gen.kubebuilder.io/version": "v0.16.5",
"operator.prometheus.io/version": "0.78.1"
"operator.prometheus.io/version": "0.78.2"
},
"name": "thanosrulers.monitoring.coreos.com"
},

View file

@ -33,6 +33,7 @@ import (
"gopkg.in/yaml.v2"
v1 "k8s.io/api/core/v1"
"k8s.io/apimachinery/pkg/types"
"k8s.io/utils/ptr"
"github.com/prometheus-operator/prometheus-operator/internal/util"
"github.com/prometheus-operator/prometheus-operator/pkg/alertmanager/validation"
@ -1505,6 +1506,15 @@ func (cb *configBuilder) convertHTTPConfig(ctx context.Context, in *monitoringv1
return nil, err
}
// in.ProxyURL comes from the common v1.ProxyConfig struct and is
// serialized as `proxyUrl` while in.ProxyURLOriginal is serialized as
// `proxyURL`. ProxyURLOriginal existed first in the CRD spec hence it
// can't be removed till the next API bump and should take precedence over
// in.ProxyURL.
if ptr.Deref(in.ProxyURLOriginal, "") != "" {
proxyConfig.ProxyURL = *in.ProxyURLOriginal
}
out := &httpClientConfig{
proxyConfig: proxyConfig,
FollowRedirects: in.FollowRedirects,

View file

@ -35,13 +35,15 @@ import (
apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
v1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/types"
"k8s.io/client-go/kubernetes"
"k8s.io/client-go/kubernetes/fake"
"k8s.io/utils/ptr"
monitoringingv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1"
monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1"
monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1"
"github.com/prometheus-operator/prometheus-operator/pkg/assets"
"github.com/prometheus-operator/prometheus-operator/pkg/operator"
)
func mustMarshalRoute(r monitoringv1alpha1.Route) []byte {
@ -77,18 +79,18 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
tests := []struct {
name string
amVersion *semver.Version
globalConfig *monitoringingv1.AlertmanagerGlobalConfig
matcherStrategy monitoringingv1.AlertmanagerConfigMatcherStrategy
globalConfig *monitoringv1.AlertmanagerGlobalConfig
matcherStrategy monitoringv1.AlertmanagerConfigMatcherStrategy
amConfig *monitoringv1alpha1.AlertmanagerConfig
want *alertmanagerConfig
wantErr bool
}{
{
name: "valid global config",
globalConfig: &monitoringingv1.AlertmanagerGlobalConfig{
SMTPConfig: &monitoringingv1.GlobalSMTPConfig{
globalConfig: &monitoringv1.AlertmanagerGlobalConfig{
SMTPConfig: &monitoringv1.GlobalSMTPConfig{
From: ptr.To("from"),
SmartHost: &monitoringingv1.HostPort{
SmartHost: &monitoringv1.HostPort{
Host: "smtp.example.org",
Port: "587",
},
@ -110,9 +112,9 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
RequireTLS: ptr.To(true),
},
ResolveTimeout: "30s",
HTTPConfig: &monitoringingv1.HTTPConfig{
OAuth2: &monitoringingv1.OAuth2{
ClientID: monitoringingv1.SecretOrConfigMap{
HTTPConfig: &monitoringv1.HTTPConfig{
OAuth2: &monitoringv1.OAuth2{
ClientID: monitoringv1.SecretOrConfigMap{
ConfigMap: &corev1.ConfigMapKeySelector{
LocalObjectReference: corev1.LocalObjectReference{
Name: "webhook-client-id",
@ -159,7 +161,7 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
},
},
},
matcherStrategy: monitoringingv1.AlertmanagerConfigMatcherStrategy{
matcherStrategy: monitoringv1.AlertmanagerConfigMatcherStrategy{
Type: "OnNamespace",
},
want: &alertmanagerConfig{
@ -213,7 +215,7 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
},
{
name: "valid global config with Slack API URL",
globalConfig: &monitoringingv1.AlertmanagerGlobalConfig{
globalConfig: &monitoringv1.AlertmanagerGlobalConfig{
SlackAPIURL: &corev1.SecretKeySelector{
Key: "url",
LocalObjectReference: corev1.LocalObjectReference{
@ -245,7 +247,7 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
},
},
},
matcherStrategy: monitoringingv1.AlertmanagerConfigMatcherStrategy{
matcherStrategy: monitoringv1.AlertmanagerConfigMatcherStrategy{
Type: "OnNamespace",
},
want: &alertmanagerConfig{
@ -276,7 +278,7 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
},
{
name: "global config with invalid Slack API URL",
globalConfig: &monitoringingv1.AlertmanagerGlobalConfig{
globalConfig: &monitoringv1.AlertmanagerGlobalConfig{
SlackAPIURL: &corev1.SecretKeySelector{
Key: "invalid_url",
LocalObjectReference: corev1.LocalObjectReference{
@ -305,14 +307,14 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
},
},
},
matcherStrategy: monitoringingv1.AlertmanagerConfigMatcherStrategy{
matcherStrategy: monitoringv1.AlertmanagerConfigMatcherStrategy{
Type: "OnNamespace",
},
wantErr: true,
},
{
name: "global config with missing Slack API URL",
globalConfig: &monitoringingv1.AlertmanagerGlobalConfig{
globalConfig: &monitoringv1.AlertmanagerGlobalConfig{
SlackAPIURL: &corev1.SecretKeySelector{
Key: "url",
LocalObjectReference: corev1.LocalObjectReference{
@ -341,14 +343,14 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
},
},
},
matcherStrategy: monitoringingv1.AlertmanagerConfigMatcherStrategy{
matcherStrategy: monitoringv1.AlertmanagerConfigMatcherStrategy{
Type: "OnNamespace",
},
wantErr: true,
},
{
name: "valid global config with OpsGenie API URL",
globalConfig: &monitoringingv1.AlertmanagerGlobalConfig{
globalConfig: &monitoringv1.AlertmanagerGlobalConfig{
OpsGenieAPIURL: &corev1.SecretKeySelector{
Key: "url",
LocalObjectReference: corev1.LocalObjectReference{
@ -380,7 +382,7 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
},
},
},
matcherStrategy: monitoringingv1.AlertmanagerConfigMatcherStrategy{
matcherStrategy: monitoringv1.AlertmanagerConfigMatcherStrategy{
Type: "OnNamespace",
},
want: &alertmanagerConfig{
@ -411,7 +413,7 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
},
{
name: "global config with invalid OpsGenie API URL",
globalConfig: &monitoringingv1.AlertmanagerGlobalConfig{
globalConfig: &monitoringv1.AlertmanagerGlobalConfig{
OpsGenieAPIURL: &corev1.SecretKeySelector{
Key: "invalid_url",
LocalObjectReference: corev1.LocalObjectReference{
@ -440,14 +442,14 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
},
},
},
matcherStrategy: monitoringingv1.AlertmanagerConfigMatcherStrategy{
matcherStrategy: monitoringv1.AlertmanagerConfigMatcherStrategy{
Type: "OnNamespace",
},
wantErr: true,
},
{
name: "global config with missing OpsGenie API URL",
globalConfig: &monitoringingv1.AlertmanagerGlobalConfig{
globalConfig: &monitoringv1.AlertmanagerGlobalConfig{
OpsGenieAPIURL: &corev1.SecretKeySelector{
Key: "url",
LocalObjectReference: corev1.LocalObjectReference{
@ -476,14 +478,14 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
},
},
},
matcherStrategy: monitoringingv1.AlertmanagerConfigMatcherStrategy{
matcherStrategy: monitoringv1.AlertmanagerConfigMatcherStrategy{
Type: "OnNamespace",
},
wantErr: true,
},
{
name: "valid global config with OpsGenie API KEY",
globalConfig: &monitoringingv1.AlertmanagerGlobalConfig{
globalConfig: &monitoringv1.AlertmanagerGlobalConfig{
OpsGenieAPIKey: &corev1.SecretKeySelector{
Key: "api_key",
LocalObjectReference: corev1.LocalObjectReference{
@ -515,7 +517,7 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
},
},
},
matcherStrategy: monitoringingv1.AlertmanagerConfigMatcherStrategy{
matcherStrategy: monitoringv1.AlertmanagerConfigMatcherStrategy{
Type: "OnNamespace",
},
want: &alertmanagerConfig{
@ -546,7 +548,7 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
},
{
name: "global config with missing OpsGenie API KEY",
globalConfig: &monitoringingv1.AlertmanagerGlobalConfig{
globalConfig: &monitoringv1.AlertmanagerGlobalConfig{
OpsGenieAPIKey: &corev1.SecretKeySelector{
Key: "api_key",
LocalObjectReference: corev1.LocalObjectReference{
@ -575,14 +577,14 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
},
},
},
matcherStrategy: monitoringingv1.AlertmanagerConfigMatcherStrategy{
matcherStrategy: monitoringv1.AlertmanagerConfigMatcherStrategy{
Type: "OnNamespace",
},
wantErr: true,
},
{
name: "valid global config with Pagerduty URL",
globalConfig: &monitoringingv1.AlertmanagerGlobalConfig{
globalConfig: &monitoringv1.AlertmanagerGlobalConfig{
PagerdutyURL: &pagerdutyURL,
},
amConfig: &monitoringv1alpha1.AlertmanagerConfig{
@ -609,7 +611,7 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
},
},
},
matcherStrategy: monitoringingv1.AlertmanagerConfigMatcherStrategy{
matcherStrategy: monitoringv1.AlertmanagerConfigMatcherStrategy{
Type: "OnNamespace",
},
want: &alertmanagerConfig{
@ -640,7 +642,7 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
},
{
name: "global config with invalid Pagerduty URL",
globalConfig: &monitoringingv1.AlertmanagerGlobalConfig{
globalConfig: &monitoringv1.AlertmanagerGlobalConfig{
PagerdutyURL: &invalidPagerdutyURL,
},
amConfig: &monitoringv1alpha1.AlertmanagerConfig{
@ -664,7 +666,7 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
},
},
},
matcherStrategy: monitoringingv1.AlertmanagerConfigMatcherStrategy{
matcherStrategy: monitoringv1.AlertmanagerConfigMatcherStrategy{
Type: "OnNamespace",
},
wantErr: true,
@ -681,8 +683,8 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
},
{
name: "globalConfig has null resolve timeout",
globalConfig: &monitoringingv1.AlertmanagerGlobalConfig{
HTTPConfig: &monitoringingv1.HTTPConfig{
globalConfig: &monitoringv1.AlertmanagerGlobalConfig{
HTTPConfig: &monitoringv1.HTTPConfig{
FollowRedirects: ptr.To(true),
},
},
@ -702,7 +704,7 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
},
},
},
matcherStrategy: monitoringingv1.AlertmanagerConfigMatcherStrategy{
matcherStrategy: monitoringv1.AlertmanagerConfigMatcherStrategy{
Type: "OnNamespace",
},
want: &alertmanagerConfig{
@ -724,9 +726,9 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
},
{
name: "globalConfig httpconfig/proxyconfig has null secretKey for proxyConnectHeader",
globalConfig: &monitoringingv1.AlertmanagerGlobalConfig{
HTTPConfig: &monitoringingv1.HTTPConfig{
ProxyConfig: monitoringingv1.ProxyConfig{
globalConfig: &monitoringv1.AlertmanagerGlobalConfig{
HTTPConfig: &monitoringv1.HTTPConfig{
ProxyConfig: monitoringv1.ProxyConfig{
ProxyURL: ptr.To("http://example.com"),
NoProxy: ptr.To("svc.cluster.local"),
ProxyConnectHeader: map[string][]corev1.SecretKeySelector{
@ -759,7 +761,7 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
},
},
},
matcherStrategy: monitoringingv1.AlertmanagerConfigMatcherStrategy{
matcherStrategy: monitoringv1.AlertmanagerConfigMatcherStrategy{
Type: "OnNamespace",
},
wantErr: true,
@ -767,9 +769,9 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
{
name: "valid globalConfig httpconfig/proxyconfig/proxyConnectHeader with amVersion24",
amVersion: &version24,
globalConfig: &monitoringingv1.AlertmanagerGlobalConfig{
HTTPConfig: &monitoringingv1.HTTPConfig{
ProxyConfig: monitoringingv1.ProxyConfig{
globalConfig: &monitoringv1.AlertmanagerGlobalConfig{
HTTPConfig: &monitoringv1.HTTPConfig{
ProxyConfig: monitoringv1.ProxyConfig{
ProxyURL: ptr.To("http://example.com"),
NoProxy: ptr.To("svc.cluster.local"),
ProxyConnectHeader: map[string][]corev1.SecretKeySelector{
@ -802,7 +804,7 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
},
},
},
matcherStrategy: monitoringingv1.AlertmanagerConfigMatcherStrategy{
matcherStrategy: monitoringv1.AlertmanagerConfigMatcherStrategy{
Type: "OnNamespace",
},
want: &alertmanagerConfig{
@ -831,9 +833,9 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
{
name: "valid globalConfig httpconfig/proxyconfig/proxyConnectHeader with amVersion26",
amVersion: &version26,
globalConfig: &monitoringingv1.AlertmanagerGlobalConfig{
HTTPConfig: &monitoringingv1.HTTPConfig{
ProxyConfig: monitoringingv1.ProxyConfig{
globalConfig: &monitoringv1.AlertmanagerGlobalConfig{
HTTPConfig: &monitoringv1.HTTPConfig{
ProxyConfig: monitoringv1.ProxyConfig{
ProxyURL: ptr.To("http://example.com"),
NoProxy: ptr.To("svc.cluster.local"),
ProxyConnectHeader: map[string][]corev1.SecretKeySelector{
@ -866,7 +868,7 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
},
},
},
matcherStrategy: monitoringingv1.AlertmanagerConfigMatcherStrategy{
matcherStrategy: monitoringv1.AlertmanagerConfigMatcherStrategy{
Type: "OnNamespace",
},
want: &alertmanagerConfig{
@ -917,7 +919,7 @@ func TestInitializeFromAlertmanagerConfig(t *testing.T) {
},
},
},
matcherStrategy: monitoringingv1.AlertmanagerConfigMatcherStrategy{
matcherStrategy: monitoringv1.AlertmanagerConfigMatcherStrategy{
Type: "OnNamespace",
},
wantErr: true,
@ -1014,7 +1016,7 @@ func TestGenerateConfig(t *testing.T) {
kclient kubernetes.Interface
baseConfig alertmanagerConfig
amVersion *semver.Version
matcherStrategy monitoringingv1.AlertmanagerConfigMatcherStrategy
matcherStrategy monitoringv1.AlertmanagerConfigMatcherStrategy
amConfigs map[string]*monitoringv1alpha1.AlertmanagerConfig
golden string
}
@ -1359,7 +1361,7 @@ func TestGenerateConfig(t *testing.T) {
Route: &route{Receiver: "null"},
Receivers: []*receiver{{Name: "null"}},
},
matcherStrategy: monitoringingv1.AlertmanagerConfigMatcherStrategy{
matcherStrategy: monitoringv1.AlertmanagerConfigMatcherStrategy{
Type: "None",
},
amConfigs: map[string]*monitoringv1alpha1.AlertmanagerConfig{
@ -1621,8 +1623,8 @@ func TestGenerateConfig(t *testing.T) {
WebhookConfigs: []monitoringv1alpha1.WebhookConfig{{
URL: ptr.To("http://test.url"),
HTTPConfig: &monitoringv1alpha1.HTTPConfig{
OAuth2: &monitoringingv1.OAuth2{
ClientID: monitoringingv1.SecretOrConfigMap{
OAuth2: &monitoringv1.OAuth2{
ClientID: monitoringv1.SecretOrConfigMap{
ConfigMap: &corev1.ConfigMapKeySelector{
LocalObjectReference: corev1.LocalObjectReference{
Name: "webhook-client-id",
@ -1973,7 +1975,7 @@ func TestGenerateConfig(t *testing.T) {
SNSConfigs: []monitoringv1alpha1.SNSConfig{
{
ApiURL: "https://sns.us-east-2.amazonaws.com",
Sigv4: &monitoringingv1.Sigv4{
Sigv4: &monitoringv1.Sigv4{
Region: "us-east-2",
AccessKey: &corev1.SecretKeySelector{
LocalObjectReference: corev1.LocalObjectReference{
@ -2032,7 +2034,7 @@ func TestGenerateConfig(t *testing.T) {
SNSConfigs: []monitoringv1alpha1.SNSConfig{
{
ApiURL: "https://sns.us-east-2.amazonaws.com",
Sigv4: &monitoringingv1.Sigv4{
Sigv4: &monitoringv1.Sigv4{
Region: "us-east-2",
RoleArn: "test-roleARN",
},
@ -4608,6 +4610,92 @@ func TestLoadConfig(t *testing.T) {
}
}
func TestConvertHTTPConfig(t *testing.T) {
for _, tc := range []struct {
name string
cfg monitoringv1alpha1.HTTPConfig
exp *httpClientConfig
}{
{
name: "no proxy",
cfg: monitoringv1alpha1.HTTPConfig{},
exp: &httpClientConfig{},
},
{
name: "proxyURL only",
cfg: monitoringv1alpha1.HTTPConfig{
ProxyURLOriginal: ptr.To("http://example.com"),
},
exp: &httpClientConfig{
proxyConfig: proxyConfig{
ProxyURL: "http://example.com",
},
},
},
{
name: "proxyUrl only",
cfg: monitoringv1alpha1.HTTPConfig{
ProxyConfig: monitoringv1.ProxyConfig{
ProxyURL: ptr.To("http://example.com"),
},
},
exp: &httpClientConfig{
proxyConfig: proxyConfig{
ProxyURL: "http://example.com",
},
},
},
{
name: "proxyUrl and proxyURL",
cfg: monitoringv1alpha1.HTTPConfig{
ProxyURLOriginal: ptr.To("http://example.com"),
ProxyConfig: monitoringv1.ProxyConfig{
ProxyURL: ptr.To("http://bad.example.com"),
},
},
exp: &httpClientConfig{
proxyConfig: proxyConfig{
ProxyURL: "http://example.com",
},
},
},
{
name: "proxyUrl and empty proxyURL",
cfg: monitoringv1alpha1.HTTPConfig{
ProxyURLOriginal: ptr.To(""),
ProxyConfig: monitoringv1.ProxyConfig{
ProxyURL: ptr.To("http://example.com"),
},
},
exp: &httpClientConfig{
proxyConfig: proxyConfig{
ProxyURL: "http://example.com",
},
},
},
} {
t.Run(tc.name, func(t *testing.T) {
v, err := semver.ParseTolerant(operator.DefaultAlertmanagerVersion)
require.NoError(t, err)
cb := newConfigBuilder(
newNopLogger(t),
v,
nil,
monitoringv1.AlertmanagerConfigMatcherStrategy{
Type: monitoringv1.OnNamespaceConfigMatcherStrategyType,
},
)
cfg, err := cb.convertHTTPConfig(context.Background(), &tc.cfg, types.NamespacedName{})
require.NoError(t, err)
require.Equal(t, tc.exp, cfg)
})
}
}
func parseURL(t *testing.T, u string) *config.URL {
t.Helper()
url, err := url.Parse(u)

View file

@ -473,8 +473,9 @@ type HTTPConfig struct {
// TLS configuration for the client.
// +optional
TLSConfig *SafeTLSConfig `json:"tlsConfig,omitempty"`
// +optional
ProxyConfig `json:",inline"`
// FollowRedirects specifies whether the client should follow HTTP 3xx redirects.
// +optional
FollowRedirects *bool `json:"followRedirects,omitempty"`

View file

@ -621,8 +621,17 @@ type HTTPConfig struct {
BearerTokenSecret *v1.SecretKeySelector `json:"bearerTokenSecret,omitempty"`
// TLS configuration for the client.
// +optional
TLSConfig *monitoringv1.SafeTLSConfig `json:"tlsConfig,omitempty"`
TLSConfig *monitoringv1.SafeTLSConfig `json:"tlsConfig,omitempty"`
// Optional proxy URL.
//
// If defined, this field takes precedence over `proxyUrl`.
//
// +optional
ProxyURLOriginal *string `json:"proxyURL,omitempty"`
monitoringv1.ProxyConfig `json:",inline"`
// FollowRedirects specifies whether the client should follow HTTP 3xx redirects.
// +optional
FollowRedirects *bool `json:"followRedirects,omitempty"`

View file

@ -870,6 +870,11 @@ func (in *HTTPConfig) DeepCopyInto(out *HTTPConfig) {
*out = new(monitoringv1.SafeTLSConfig)
(*in).DeepCopyInto(*out)
}
if in.ProxyURLOriginal != nil {
in, out := &in.ProxyURLOriginal, &out.ProxyURLOriginal
*out = new(string)
**out = **in
}
in.ProxyConfig.DeepCopyInto(&out.ProxyConfig)
if in.FollowRedirects != nil {
in, out := &in.FollowRedirects, &out.FollowRedirects

View file

@ -614,8 +614,17 @@ type HTTPConfig struct {
BearerTokenSecret *SecretKeySelector `json:"bearerTokenSecret,omitempty"`
// TLS configuration for the client.
// +optional
TLSConfig *monitoringv1.SafeTLSConfig `json:"tlsConfig,omitempty"`
TLSConfig *monitoringv1.SafeTLSConfig `json:"tlsConfig,omitempty"`
// Optional proxy URL.
//
// If defined, this field takes precedence over `proxyUrl`.
//
// +optional
ProxyURLOriginal *string `json:"proxyURL,omitempty"`
monitoringv1.ProxyConfig `json:",inline"`
// FollowRedirects specifies whether the client should follow HTTP 3xx redirects.
// +optional
FollowRedirects *bool `json:"followRedirects,omitempty"`

View file

@ -148,6 +148,7 @@ func convertHTTPConfigFrom(in *v1alpha1.HTTPConfig) *HTTPConfig {
OAuth2: in.OAuth2,
BearerTokenSecret: convertSecretKeySelectorFrom(in.BearerTokenSecret),
TLSConfig: in.TLSConfig,
ProxyURLOriginal: in.ProxyURLOriginal,
ProxyConfig: in.ProxyConfig,
FollowRedirects: in.FollowRedirects,
}

View file

@ -141,6 +141,7 @@ func convertHTTPConfigTo(in *HTTPConfig) *v1alpha1.HTTPConfig {
OAuth2: in.OAuth2,
BearerTokenSecret: convertSecretKeySelectorTo(in.BearerTokenSecret),
TLSConfig: in.TLSConfig,
ProxyURLOriginal: in.ProxyURLOriginal,
ProxyConfig: in.ProxyConfig,
FollowRedirects: in.FollowRedirects,
}

View file

@ -244,6 +244,11 @@ func (in *HTTPConfig) DeepCopyInto(out *HTTPConfig) {
*out = new(monitoringv1.SafeTLSConfig)
(*in).DeepCopyInto(*out)
}
if in.ProxyURLOriginal != nil {
in, out := &in.ProxyURLOriginal, &out.ProxyURLOriginal
*out = new(string)
**out = **in
}
in.ProxyConfig.DeepCopyInto(&out.ProxyConfig)
if in.FollowRedirects != nil {
in, out := &in.FollowRedirects, &out.FollowRedirects

View file

@ -29,6 +29,7 @@ type HTTPConfigApplyConfiguration struct {
OAuth2 *v1.OAuth2ApplyConfiguration `json:"oauth2,omitempty"`
BearerTokenSecret *corev1.SecretKeySelector `json:"bearerTokenSecret,omitempty"`
TLSConfig *v1.SafeTLSConfigApplyConfiguration `json:"tlsConfig,omitempty"`
ProxyURLOriginal *string `json:"proxyURL,omitempty"`
v1.ProxyConfigApplyConfiguration `json:",inline"`
FollowRedirects *bool `json:"followRedirects,omitempty"`
}
@ -79,6 +80,14 @@ func (b *HTTPConfigApplyConfiguration) WithTLSConfig(value *v1.SafeTLSConfigAppl
return b
}
// WithProxyURLOriginal sets the ProxyURLOriginal field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ProxyURLOriginal field is set to the value of the last call.
func (b *HTTPConfigApplyConfiguration) WithProxyURLOriginal(value string) *HTTPConfigApplyConfiguration {
b.ProxyURLOriginal = &value
return b
}
// WithProxyURL sets the ProxyURL field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ProxyURL field is set to the value of the last call.

View file

@ -29,6 +29,7 @@ type HTTPConfigApplyConfiguration struct {
OAuth2 *v1.OAuth2ApplyConfiguration `json:"oauth2,omitempty"`
BearerTokenSecret *SecretKeySelectorApplyConfiguration `json:"bearerTokenSecret,omitempty"`
TLSConfig *v1.SafeTLSConfigApplyConfiguration `json:"tlsConfig,omitempty"`
ProxyURLOriginal *string `json:"proxyURL,omitempty"`
v1.ProxyConfigApplyConfiguration `json:",inline"`
FollowRedirects *bool `json:"followRedirects,omitempty"`
}
@ -79,6 +80,14 @@ func (b *HTTPConfigApplyConfiguration) WithTLSConfig(value *v1.SafeTLSConfigAppl
return b
}
// WithProxyURLOriginal sets the ProxyURLOriginal field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ProxyURLOriginal field is set to the value of the last call.
func (b *HTTPConfigApplyConfiguration) WithProxyURLOriginal(value string) *HTTPConfigApplyConfiguration {
b.ProxyURLOriginal = &value
return b
}
// WithProxyURL sets the ProxyURL field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ProxyURL field is set to the value of the last call.

View file

@ -5,7 +5,7 @@ go 1.23
toolchain go1.23.1
require (
github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring v0.78.1
github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring v0.78.2
k8s.io/api v0.31.2
k8s.io/apiextensions-apiserver v0.31.2
k8s.io/apimachinery v0.31.2