From 7a1150b13715c974b894eba3db01d946d539a6fb Mon Sep 17 00:00:00 2001 From: Ankit152 Date: Wed, 25 Feb 2026 18:23:45 +0530 Subject: [PATCH] chore: fixing rhobs dependency and inline parameter issues Signed-off-by: Ankit152 --- .../addon/monitoring_federation_reconciler.go | 4 +- .../monitoring_federation_reconciler_test.go | 56 +++++++++++++------ controllers/addon/utils.go | 29 +++++++--- go.mod | 17 ++++-- go.sum | 31 +++++----- integration/monitoring_federation_test.go | 49 +++++++++++----- 6 files changed, 122 insertions(+), 64 deletions(-) diff --git a/controllers/addon/monitoring_federation_reconciler.go b/controllers/addon/monitoring_federation_reconciler.go index 0067c17a8..c2af368b0 100644 --- a/controllers/addon/monitoring_federation_reconciler.go +++ b/controllers/addon/monitoring_federation_reconciler.go @@ -323,7 +323,7 @@ func (r *monitoringFederationReconciler) ensureDeletionOfUnwantedMonitoringFeder continue } - if err := client.IgnoreNotFound(r.client.Delete(ctx, serviceMonitor)); err != nil { + if err := client.IgnoreNotFound(r.client.Delete(ctx, &serviceMonitor)); err != nil { return fmt.Errorf("could not remove monitoring federation ServiceMonitor: %w", err) } if err := client.IgnoreNotFound(r.client.Delete(ctx, &corev1.Secret{ @@ -350,7 +350,7 @@ func (r *monitoringFederationReconciler) ensureDeletionOfUnwantedMonitoringFeder func (r *monitoringFederationReconciler) getOwnedServiceMonitorsViaCommonLabels( ctx context.Context, c client.Client, - addon *addonsv1alpha1.Addon) ([]*monitoringv1.ServiceMonitor, error) { + addon *addonsv1alpha1.Addon) ([]monitoringv1.ServiceMonitor, error) { selector := controllers.CommonLabelsAsLabelSelector(addon) list := &monitoringv1.ServiceMonitorList{} diff --git a/controllers/addon/monitoring_federation_reconciler_test.go b/controllers/addon/monitoring_federation_reconciler_test.go index dfd921b17..17fd33e43 100644 --- a/controllers/addon/monitoring_federation_reconciler_test.go +++ b/controllers/addon/monitoring_federation_reconciler_test.go @@ -324,15 +324,44 @@ func TestEnsureMonitoringFederation_MonitoringPresentInSpec_SMPresentInCluster(t controllers.AddCommonLabels(serviceMonitor, addon) err := controllerutil.SetControllerReference(addon, serviceMonitor, r.scheme) assert.NoError(t, err) + + var scheme monitoringv1.Scheme + scheme = "https" // inject expected ServiceMonitor spec into response serviceMonitor.Spec = monitoringv1.ServiceMonitorSpec{ Endpoints: []monitoringv1.Endpoint{ { - Authorization: &monitoringv1.SafeAuthorization{Type: "Bearer", Credentials: &corev1.SecretKeySelector{LocalObjectReference: corev1.LocalObjectReference{Name: "addon-foo-bearertoken-secret"}, Key: "token"}}, - HonorLabels: true, - Port: "portName", - Path: "/federate", - Scheme: "https", + HTTPConfigWithProxyAndTLSFiles: monitoringv1.HTTPConfigWithProxyAndTLSFiles{ + HTTPConfigWithTLSFiles: monitoringv1.HTTPConfigWithTLSFiles{ + HTTPConfigWithoutTLS: monitoringv1.HTTPConfigWithoutTLS{ + Authorization: &monitoringv1.SafeAuthorization{ + Type: "Bearer", + Credentials: &corev1.SecretKeySelector{ + LocalObjectReference: corev1.LocalObjectReference{ + Name: "addon-foo-bearertoken-secret", + }, + Key: "token", + }, + }, + }, + TLSConfig: &monitoringv1.TLSConfig{ + TLSFilesConfig: monitoringv1.TLSFilesConfig{ + CAFile: "/etc/prometheus/configmaps/serving-certs-ca-bundle/service-ca.crt", + }, + SafeTLSConfig: monitoringv1.SafeTLSConfig{ + ServerName: ptr.To(fmt.Sprintf( + "prometheus.%s.svc", + addon.Spec.Monitoring.Federation.Namespace, + )), + }, + }, + }, + }, + + HonorLabels: true, + Port: "portName", + Path: "/federate", + Scheme: &scheme, Params: map[string][]string{ "match[]": { `ALERTS{alertstate="firing"}`, @@ -340,15 +369,6 @@ func TestEnsureMonitoringFederation_MonitoringPresentInSpec_SMPresentInCluster(t }, }, Interval: "30s", - TLSConfig: &monitoringv1.TLSConfig{ - CAFile: "/etc/prometheus/configmaps/serving-certs-ca-bundle/service-ca.crt", - SafeTLSConfig: monitoringv1.SafeTLSConfig{ - ServerName: ptr.To(fmt.Sprintf( - "prometheus.%s.svc", - addon.Spec.Monitoring.Federation.Namespace, - )), - }, - }, }, }, NamespaceSelector: monitoringv1.NamespaceSelector{ @@ -592,7 +612,7 @@ func TestEnsureDeletionOfMonitoringFederation_MonitoringFullyMissingInSpec_Prese addon := testutil.NewTestAddonWithoutNamespace() serviceMonitorsInCluster := &monitoringv1.ServiceMonitorList{ - Items: []*monitoringv1.ServiceMonitor{ + Items: []monitoringv1.ServiceMonitor{ { ObjectMeta: metav1.ObjectMeta{ Name: "foo", @@ -667,11 +687,11 @@ func TestEnsureDeletionOfMonitoringFederation_MonitoringFullyPresentInSpec_Prese addon := testutil.NewTestAddonWithMonitoringFederation() serviceMonitorsInCluster := &monitoringv1.ServiceMonitorList{ - Items: []*monitoringv1.ServiceMonitor{ - testServiceMonitor(addon), + Items: []monitoringv1.ServiceMonitor{ + *testServiceMonitor(addon), }, } - controllers.AddCommonLabels(serviceMonitorsInCluster.Items[0], addon) + controllers.AddCommonLabels(&serviceMonitorsInCluster.Items[0], addon) c.On("List", testutil.IsContext, mock.IsType(&monitoringv1.ServiceMonitorList{}), mock.Anything). Run(func(args mock.Arguments) { diff --git a/controllers/addon/utils.go b/controllers/addon/utils.go index 33e9a98de..7310e9d93 100644 --- a/controllers/addon/utils.go +++ b/controllers/addon/utils.go @@ -494,7 +494,9 @@ func GetMonitoringFederationServiceMonitorEndpoints(addon *addonsv1alpha1.Addon, const cacert = "/etc/prometheus/configmaps/serving-certs-ca-bundle/service-ca.crt" tlsConfig := &monitoringv1.TLSConfig{ - CAFile: cacert, + TLSFilesConfig: monitoringv1.TLSFilesConfig{ + CAFile: cacert, + }, SafeTLSConfig: monitoringv1.SafeTLSConfig{ ServerName: ptr.To(fmt.Sprintf("prometheus.%s.svc", addon.Spec.Monitoring.Federation.Namespace)), }, @@ -507,15 +509,24 @@ func GetMonitoringFederationServiceMonitorEndpoints(addon *addonsv1alpha1.Addon, } auth := &monitoringv1.SafeAuthorization{Type: "Bearer", Credentials: &corev1.SecretKeySelector{LocalObjectReference: corev1.LocalObjectReference{Name: bearertokensecret.Name}, Key: "token"}} + var scheme monitoringv1.Scheme + scheme = "https" + return []monitoringv1.Endpoint{{ - Authorization: auth, - HonorLabels: true, - Port: addon.Spec.Monitoring.Federation.PortName, - Path: "/federate", - Scheme: "https", - Interval: "30s", - TLSConfig: tlsConfig, - Params: map[string][]string{"match[]": matchParams}, + HTTPConfigWithProxyAndTLSFiles: monitoringv1.HTTPConfigWithProxyAndTLSFiles{ + HTTPConfigWithTLSFiles: monitoringv1.HTTPConfigWithTLSFiles{ + HTTPConfigWithoutTLS: monitoringv1.HTTPConfigWithoutTLS{ + Authorization: auth, + }, + TLSConfig: tlsConfig, + }, + }, + HonorLabels: true, + Port: addon.Spec.Monitoring.Federation.PortName, + Path: "/federate", + Scheme: &scheme, + Interval: "30s", + Params: map[string][]string{"match[]": matchParams}, }} } diff --git a/go.mod b/go.mod index fcddd3a90..e6c3355a5 100644 --- a/go.mod +++ b/go.mod @@ -14,15 +14,15 @@ require ( github.com/mt-sre/devkube v0.7.1 github.com/novln/docker-parser v1.0.0 github.com/openshift/addon-operator/apis v0.0.0-20231110045543-dd01f2f5c184 - github.com/openshift/api v0.0.0-20260224223200-1105fd4ecddf + github.com/openshift/api v3.9.0+incompatible github.com/operator-framework/api v0.40.0 - github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring v0.76.0 + github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring v0.89.0 github.com/prometheus/client_golang v1.23.2 github.com/prometheus/client_model v0.6.2 github.com/prometheus/common v0.67.5 github.com/prometheus/prometheus v1.8.2-0.20211105201321-411021ada9ab - github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring v0.75.2-rhobs1 - github.com/rhobs/observability-operator v0.4.0 + github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring v0.89.0-rhobs1 + github.com/rhobs/observability-operator/pkg/apis v0.0.0-20251009091129-76135c924ed6 github.com/sethvargo/go-retry v0.3.0 github.com/stretchr/testify v1.11.1 k8s.io/api v0.35.1 @@ -49,10 +49,11 @@ require ( github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/cncf/xds/go v0.0.0-20251022180443-0feb69152e9f // indirect github.com/dennwc/varint v1.0.0 // indirect + github.com/edsrzf/mmap-go v1.2.0 // indirect github.com/emicklei/go-restful/v3 v3.13.0 // indirect github.com/envoyproxy/go-control-plane/envoy v1.35.0 // indirect github.com/envoyproxy/protoc-gen-validate v1.2.1 // indirect - github.com/evanphx/json-patch v5.6.0+incompatible // indirect + github.com/evanphx/json-patch v5.9.0+incompatible // indirect github.com/evanphx/json-patch/v5 v5.9.11 // indirect github.com/fsnotify/fsnotify v1.9.0 // indirect github.com/fxamacker/cbor/v2 v2.9.0 // indirect @@ -86,7 +87,9 @@ require ( github.com/jpillora/backoff v1.0.0 // indirect github.com/json-iterator/go v1.1.12 // indirect github.com/kylelemons/godebug v1.1.0 // indirect + github.com/mattn/go-colorable v0.1.14 // indirect github.com/mattn/go-isatty v0.0.20 // indirect + github.com/mitchellh/mapstructure v1.5.0 // indirect github.com/moby/spdystream v0.5.0 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee // indirect @@ -117,7 +120,7 @@ require ( golang.org/x/term v0.39.0 // indirect golang.org/x/text v0.33.0 // indirect golang.org/x/time v0.14.0 // indirect - gomodules.xyz/jsonpatch/v2 v2.4.0 // indirect + gomodules.xyz/jsonpatch/v2 v2.5.0 // indirect google.golang.org/genproto/googleapis/api v0.0.0-20260202165425-ce8ad4cf556b // indirect google.golang.org/genproto/googleapis/rpc v0.0.0-20260202165425-ce8ad4cf556b // indirect google.golang.org/protobuf v1.36.11 // indirect @@ -130,3 +133,5 @@ require ( sigs.k8s.io/randfill v1.0.0 // indirect sigs.k8s.io/structured-merge-diff/v6 v6.3.2-0.20260122202528-d9cc6641c482 // indirect ) + +replace github.com/openshift/api v3.9.0+incompatible => github.com/openshift/api v0.0.0-20260225105806-8713f3f64bcf diff --git a/go.sum b/go.sum index f6f996946..8fade3376 100644 --- a/go.sum +++ b/go.sum @@ -404,8 +404,8 @@ github.com/eapache/go-xerial-snappy v0.0.0-20180814174437-776d5712da21/go.mod h1 github.com/eapache/queue v1.1.0/go.mod h1:6eCeP0CKFpHLu8blIFXhExK/dRa7WDZfr6jVFPTqq+I= github.com/eclipse/paho.mqtt.golang v1.2.0/go.mod h1:H9keYFcgq3Qr5OUJm/JZI/i6U7joQ8SYLhZwfeOo6Ts= github.com/edsrzf/mmap-go v1.0.0/go.mod h1:YO35OhQPt3KJa3ryjFM5Bs14WD66h8eGKpfaBNrHW5M= -github.com/edsrzf/mmap-go v1.1.0 h1:6EUwBLQ/Mcr1EYLE4Tn1VdW1A4ckqCQWZBw8Hr0kjpQ= -github.com/edsrzf/mmap-go v1.1.0/go.mod h1:19H/e8pUPLicwkyNgOykDXkJ9F0MHE+Z52B8EIth78Q= +github.com/edsrzf/mmap-go v1.2.0 h1:hXLYlkbaPzt1SaQk+anYwKSRNhufIDCchSPkUD6dD84= +github.com/edsrzf/mmap-go v1.2.0/go.mod h1:19H/e8pUPLicwkyNgOykDXkJ9F0MHE+Z52B8EIth78Q= github.com/elazarl/goproxy v0.0.0-20170405201442-c4fc26588b6e/go.mod h1:/Zj4wYkgs4iZTTu3o/KG3Itv/qCCa8VVMlb3i9OVuzc= github.com/elazarl/goproxy v0.0.0-20180725130230-947c36da3153/go.mod h1:/Zj4wYkgs4iZTTu3o/KG3Itv/qCCa8VVMlb3i9OVuzc= github.com/emicklei/go-restful v0.0.0-20170410110728-ff4f55a20633/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs= @@ -430,8 +430,8 @@ github.com/envoyproxy/protoc-gen-validate v1.2.1/go.mod h1:d/C80l/jxXLdfEIhX1W2T github.com/evanphx/json-patch v4.2.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= github.com/evanphx/json-patch v4.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= github.com/evanphx/json-patch v4.11.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= -github.com/evanphx/json-patch v5.6.0+incompatible h1:jBYDEEiFBPxA0v50tFdvOzQQTCvpL6mnFh5mB2/l16U= -github.com/evanphx/json-patch v5.6.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/evanphx/json-patch v5.9.0+incompatible h1:fBXyNpNMuTTDdquAq/uisOr2lShz4oaXpDTX2bLe7ls= +github.com/evanphx/json-patch v5.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= github.com/evanphx/json-patch/v5 v5.9.11 h1:/8HVnzMq13/3x9TPvjG08wUGqBTmZBsCWzjTM0wiaDU= github.com/evanphx/json-patch/v5 v5.9.11/go.mod h1:3j+LviiESTElxA4p3EMKAB9HXj3/XEtnUf6OZxqIQTM= github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= @@ -1001,8 +1001,9 @@ github.com/mattn/go-colorable v0.1.2/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVc github.com/mattn/go-colorable v0.1.4/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE= github.com/mattn/go-colorable v0.1.6/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= github.com/mattn/go-colorable v0.1.7/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= -github.com/mattn/go-colorable v0.1.8 h1:c1ghPdyEDarC70ftn0y+A/Ee++9zz8ljHG1b13eJ0s8= github.com/mattn/go-colorable v0.1.8/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= +github.com/mattn/go-colorable v0.1.14 h1:9A9LHSqF/7dyVVX6g0U9cwm9pG3kP9gSzcuIPHPsaIE= +github.com/mattn/go-colorable v0.1.14/go.mod h1:6LmQG8QLFO4G5z1gPvYEzlUgJ2wF+stgPZH1UqBm1s8= github.com/mattn/go-isatty v0.0.3/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= github.com/mattn/go-isatty v0.0.4/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= @@ -1144,8 +1145,8 @@ github.com/opencontainers/selinux v1.6.0/go.mod h1:VVGKuOLlE7v4PJyT6h7mNWvq1rzqi github.com/opencontainers/selinux v1.8.0/go.mod h1:RScLhm78qiWa2gbVCcGkC7tCGdgk3ogry1nUQF8Evvo= github.com/openshift/addon-operator/apis v0.0.0-20231110045543-dd01f2f5c184 h1:P93o33VcHaOTjOTm6/UojtJdr1qLc2U7vPMBno39rdc= github.com/openshift/addon-operator/apis v0.0.0-20231110045543-dd01f2f5c184/go.mod h1:JS2tbakhIZRgBiULsIUSHGsdz7G/Vylvg1mqI1TlXzs= -github.com/openshift/api v0.0.0-20260224223200-1105fd4ecddf h1:SFNdep5KzLfujA4ZwNb5tSns3rNb3fy2B2bVnCNYH5M= -github.com/openshift/api v0.0.0-20260224223200-1105fd4ecddf/go.mod h1:ZYAxo9t1AALeEotN07tNzIvqqqWSxcZIqMUKnY/xCeQ= +github.com/openshift/api v0.0.0-20260225105806-8713f3f64bcf h1:k7GwOMUZcKWhy80OtDCiu6Dq0Uklr7OopipwnPAKHUk= +github.com/openshift/api v0.0.0-20260225105806-8713f3f64bcf/go.mod h1:ZYAxo9t1AALeEotN07tNzIvqqqWSxcZIqMUKnY/xCeQ= github.com/opentracing-contrib/go-observer v0.0.0-20170622124052-a52f23424492/go.mod h1:Ngi6UdF0k5OKD5t5wlmGhe/EDKPoUM3BXZSSfIuJbis= github.com/opentracing-contrib/go-stdlib v0.0.0-20190519235532-cf7a6c988dc9/go.mod h1:PLldrQSroqzH70Xl+1DQcGnefIbqsKR7UDaiux3zV+w= github.com/opentracing-contrib/go-stdlib v1.0.0 h1:TBS7YuVotp8myLon4Pv7BtCBzOTo1DeZCld0Z63mW2w= @@ -1196,8 +1197,8 @@ github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH github.com/posener/complete v1.1.1/go.mod h1:em0nMJCgc9GFtwrmVmEMR/ZL6WyhyjMBndrE9hABlRI= github.com/posener/complete v1.2.3/go.mod h1:WZIdtGGp+qx0sLrYKtIRAruyNpv6hFCicSgv7Sy7s/s= github.com/pquerna/cachecontrol v0.0.0-20171018203845-0dec1b30a021/go.mod h1:prYjPmNq4d1NPVmpShWobRqXY3q7Vp+80DqgxxUrUIA= -github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring v0.76.0 h1:tRwEFYFg+To2TGnibGl8dHBCh8Z/BVNKnXj2O5Za/2M= -github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring v0.76.0/go.mod h1:Rd8YnCqz+2FYsiGmE2DMlaLjQRB4v2jFNnzCt9YY4IM= +github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring v0.89.0 h1:nZ9Ov2SbA8pWcyWKpf6AbQipG5Negg5CfDKWOEtnnwc= +github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring v0.89.0/go.mod h1:IJwk1oNs212afqGbNnE84GAB95OHtJR/BuI1rKESiYk= github.com/prometheus/alertmanager v0.20.0/go.mod h1:9g2i48FAyZW6BtbsnvHtMHQXl2aVtrORKwKVCQ+nbrg= github.com/prometheus/alertmanager v0.23.0/go.mod h1:0MLTrjQI8EuVmvykEhcfr/7X0xmaDAZrqMgxIq3OXHk= github.com/prometheus/client_golang v0.0.0-20180209125602-c332b6f63c06/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= @@ -1263,10 +1264,10 @@ github.com/prometheus/prometheus v1.8.2-0.20211105201321-411021ada9ab/go.mod h1: github.com/prometheus/tsdb v0.7.1/go.mod h1:qhTCs0VvXwvX/y3TZrWD7rabWM+ijKTux40TwIPHuXU= github.com/rcrowley/go-metrics v0.0.0-20181016184325-3113b8401b8a/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4= github.com/retailnext/hllpp v1.0.1-0.20180308014038-101a6d2f8b52/go.mod h1:RDpi1RftBQPUCDRw6SmxeaREsAaRKnOclghuzp/WRzc= -github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring v0.75.2-rhobs1 h1:y9Cmq1S26FSVKJKY5fwQ7rG8JyLnFKKa2KpQJReOOWw= -github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring v0.75.2-rhobs1/go.mod h1:iFg19KNtxmInR5wz2wKHE6jXoPdfjPqgKS2OO64gs9k= -github.com/rhobs/observability-operator v0.4.0 h1:V/vTuKq1T4NmjaPqJgEqdzcbzXLCitXanMA12YwwqjA= -github.com/rhobs/observability-operator v0.4.0/go.mod h1:LZyHiQUqJEP711/dNLnsCUVrto82YU7GxgY4bCz7T4Q= +github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring v0.89.0-rhobs1 h1:e2ZFNrG7m7YE7SQCI0Ic/6rhEH8NCBEylA6+kpJQLWg= +github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring v0.89.0-rhobs1/go.mod h1:n3FXshd/fzRA5gzdmNQFI2td0KZ5GRj5RRZghYPNHvw= +github.com/rhobs/observability-operator/pkg/apis v0.0.0-20251009091129-76135c924ed6 h1:f+J6l48RMDomN9YrDxd0cZVo7+L+a/TCzH6ycat5tMI= +github.com/rhobs/observability-operator/pkg/apis v0.0.0-20251009091129-76135c924ed6/go.mod h1:bNP815/mCv8ydNQ2Q3a9gqlx9b2XouWa6hws9vthq78= github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg= github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ= github.com/rogpeppe/go-internal v1.1.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= @@ -1901,8 +1902,8 @@ golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8T golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -gomodules.xyz/jsonpatch/v2 v2.4.0 h1:Ci3iUJyx9UeRx7CeFN8ARgGbkESwJK+KB9lLcWxY/Zw= -gomodules.xyz/jsonpatch/v2 v2.4.0/go.mod h1:AH3dM2RI6uoBZxn3LVrfvJ3E0/9dG4cSrbuBJT4moAY= +gomodules.xyz/jsonpatch/v2 v2.5.0 h1:JELs8RLM12qJGXU4u/TO3V25KW8GreMKl9pdkk14RM0= +gomodules.xyz/jsonpatch/v2 v2.5.0/go.mod h1:AH3dM2RI6uoBZxn3LVrfvJ3E0/9dG4cSrbuBJT4moAY= gonum.org/v1/gonum v0.0.0-20180816165407-929014505bf4/go.mod h1:Y+Yx5eoAFn32cQvJDxZx5Dpnq+c3wtXuadVZAcxbbBo= gonum.org/v1/gonum v0.0.0-20181121035319-3f7ecaa7e8ca/go.mod h1:Y+Yx5eoAFn32cQvJDxZx5Dpnq+c3wtXuadVZAcxbbBo= gonum.org/v1/gonum v0.6.0/go.mod h1:9mxDZsDKxgMAuccQkewq682L+0eCu4dCN2yonUJTCLU= diff --git a/integration/monitoring_federation_test.go b/integration/monitoring_federation_test.go index 1928bc8c3..16a169e7c 100644 --- a/integration/monitoring_federation_test.go +++ b/integration/monitoring_federation_test.go @@ -227,14 +227,44 @@ func validateMonitoringFederationServiceMonitor(t *testing.T, ctx context.Contex Namespace: monitoringNamespaceName, }, currentServiceMonitor) require.NoError(t, err, "could not get monitoring federation ServiceMonitor %s", serviceMonitorName) + + var scheme monitoringv1.Scheme + scheme = "https" + assert.Equal(t, monitoringv1.ServiceMonitorSpec{ Endpoints: []monitoringv1.Endpoint{ { - Authorization: &monitoringv1.SafeAuthorization{Type: "Bearer", Credentials: &corev1.SecretKeySelector{LocalObjectReference: corev1.LocalObjectReference{Name: fmt.Sprintf("%s-bearertoken-secret", addon.Name)}, Key: "token"}}, - HonorLabels: true, - Port: "https", - Path: "/federate", - Scheme: "https", + HTTPConfigWithProxyAndTLSFiles: monitoringv1.HTTPConfigWithProxyAndTLSFiles{ + HTTPConfigWithTLSFiles: monitoringv1.HTTPConfigWithTLSFiles{ + HTTPConfigWithoutTLS: monitoringv1.HTTPConfigWithoutTLS{ + Authorization: &monitoringv1.SafeAuthorization{ + Type: "Bearer", + Credentials: &corev1.SecretKeySelector{ + LocalObjectReference: corev1.LocalObjectReference{ + Name: fmt.Sprintf("%s-bearertoken-secret", addon.Name), + }, + Key: "token", + }, + }, + }, + TLSConfig: &monitoringv1.TLSConfig{ + TLSFilesConfig: monitoringv1.TLSFilesConfig{ + CAFile: "/etc/prometheus/configmaps/serving-certs-ca-bundle/service-ca.crt", + }, + SafeTLSConfig: monitoringv1.SafeTLSConfig{ + ServerName: ptr.To(fmt.Sprintf( + "prometheus.%s.svc", + addon.Spec.Monitoring.Federation.Namespace, + )), + }, + }, + }, + }, + + HonorLabels: true, + Port: "https", + Path: "/federate", + Scheme: &scheme, Params: map[string][]string{ "match[]": { `ALERTS{alertstate="firing"}`, @@ -242,15 +272,6 @@ func validateMonitoringFederationServiceMonitor(t *testing.T, ctx context.Contex }, }, Interval: "30s", - TLSConfig: &monitoringv1.TLSConfig{ - CAFile: "/etc/prometheus/configmaps/serving-certs-ca-bundle/service-ca.crt", - SafeTLSConfig: monitoringv1.SafeTLSConfig{ - ServerName: ptr.To(fmt.Sprintf( - "prometheus.%s.svc", - addon.Spec.Monitoring.Federation.Namespace, - )), - }, - }, }, }, NamespaceSelector: monitoringv1.NamespaceSelector{