Skip to content

Commit b1a5ead

Browse files
committed
fix: openshift-gitops-operator-metrics-monitor ServiceMonitor is attempting to use a bearerTokenFile configuration in its endpoints definition
Signed-off-by: akhil nittala <[email protected]>
1 parent a86ef5c commit b1a5ead

7 files changed

+86
-21
lines changed

bundle/manifests/gitops-operator.clusterserviceversion.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -180,7 +180,7 @@ metadata:
180180
capabilities: Deep Insights
181181
console.openshift.io/plugins: '["gitops-plugin"]'
182182
containerImage: quay.io/redhat-developer/gitops-operator
183-
createdAt: "2025-07-30T13:03:16Z"
183+
createdAt: "2025-12-08T07:34:14Z"
184184
description: Enables teams to adopt GitOps principles for managing cluster configurations
185185
and application delivery across hybrid multi-cluster Kubernetes environments.
186186
features.operators.openshift.io/disconnected: "true"
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
apiVersion: v1
2+
kind: Secret
3+
metadata:
4+
annotations:
5+
kubernetes.io/service-account.name: openshift-gitops-operator-controller-manager
6+
name: openshift-gitops-operator-metrics-monitor-bearer-token
7+
type: kubernetes.io/service-account-token
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
apiVersion: v1
2+
kind: Secret
3+
metadata:
4+
annotations:
5+
kubernetes.io/service-account.name: openshift-gitops-operator-controller-manager
6+
name: openshift-gitops-operator-metrics-monitor-bearer-token
7+
type: kubernetes.io/service-account-token
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
apiVersion: v1
2+
kind: ConfigMap
3+
metadata:
4+
annotations:
5+
openshift.io/description: This ConfigMap is used for Prometheus monitoring of
6+
the GitOps Operator.
7+
openshift.io/display-name: GitOps Operator Prometheus Monitor ConfigMap
8+
openshift.io/owning-component: service-ca
9+
service.beta.openshift.io/inject-cabundle: "true"
10+
name: openshift-gitops-operator-metrics-monitor-ca-bundle

bundle/manifests/openshift-gitops-operator-metrics-monitor_monitoring.coreos.com_v1_servicemonitor.yaml

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,18 @@ metadata:
66
name: openshift-gitops-operator-metrics-monitor
77
spec:
88
endpoints:
9-
- bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
9+
- bearerTokenSecret:
10+
key: token
11+
name: openshift-gitops-operator-metrics-monitor-bearer-token
1012
interval: 30s
1113
path: /metrics
1214
port: metrics
1315
scheme: https
1416
tlsConfig:
15-
caFile: /etc/prometheus/configmaps/serving-certs-ca-bundle/service-ca.crt
17+
ca:
18+
configMap:
19+
key: service-ca.crt
20+
name: openshift-gitops-operator-metrics-monitor-ca-bundle
1621
serverName: openshift-gitops-operator-metrics-service.openshift-gitops-operator.svc
1722
selector:
1823
matchLabels:

config/prometheus/monitor.yaml

Lines changed: 35 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,46 @@
1-
2-
# Prometheus Monitor Service (Metrics)
1+
---
2+
apiVersion: v1
3+
kind: Secret
4+
metadata:
5+
name: metrics-monitor-bearer-token
6+
namespace: openshift-gitops-operator
7+
annotations:
8+
kubernetes.io/service-account.name: openshift-gitops-operator-controller-manager
9+
type: kubernetes.io/service-account-token
10+
---
11+
apiVersion: v1
12+
kind: ConfigMap
13+
metadata:
14+
annotations:
15+
openshift.io/description: This ConfigMap is used for Prometheus monitoring of the GitOps Operator.
16+
openshift.io/display-name: GitOps Operator Prometheus Monitor ConfigMap
17+
openshift.io/owning-component: service-ca
18+
service.beta.openshift.io/inject-cabundle: "true"
19+
name: metrics-monitor-ca-bundle
20+
namespace: openshift-gitops-operator
21+
---
322
apiVersion: monitoring.coreos.com/v1
423
kind: ServiceMonitor
524
metadata:
25+
name: metrics-monitor
26+
namespace: openshift-gitops-operator
627
labels:
728
control-plane: gitops-operator
8-
name: metrics-monitor
9-
namespace: system
1029
spec:
30+
selector:
31+
matchLabels:
32+
control-plane: gitops-operator
1133
endpoints:
12-
- bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
13-
path: /metrics
34+
- bearerTokenSecret:
35+
name: openshift-gitops-operator-metrics-monitor-bearer-token
36+
key: token
1437
interval: 30s
38+
path: /metrics
1539
port: metrics
1640
scheme: https
1741
tlsConfig:
18-
caFile: /etc/prometheus/configmaps/serving-certs-ca-bundle/service-ca.crt
19-
serverName: openshift-gitops-operator-metrics-service.openshift-gitops-operator.svc
20-
selector:
21-
matchLabels:
22-
control-plane: gitops-operator
42+
ca:
43+
configMap:
44+
name: openshift-gitops-operator-metrics-monitor-ca-bundle
45+
key: service-ca.crt
46+
serverName: openshift-gitops-operator-metrics-service.openshift-gitops-operator.svc

test/openshift/e2e/ginkgo/sequential/1-104_validate_prometheus_alert_test.go

Lines changed: 19 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import (
66
monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1"
77
"github.com/redhat-developer/gitops-operator/test/openshift/e2e/ginkgo/fixture"
88
k8sFixture "github.com/redhat-developer/gitops-operator/test/openshift/e2e/ginkgo/fixture/k8s"
9+
corev1 "k8s.io/api/core/v1"
910
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
1011
)
1112

@@ -34,18 +35,29 @@ var _ = Describe("GitOps Operator Sequential E2E Tests", func() {
3435
Eventually(sm).Should(k8sFixture.ExistByName())
3536

3637
Expect(sm.Spec.Endpoints).Should(Equal([]monitoringv1.Endpoint{{
37-
BearerTokenFile: "/var/run/secrets/kubernetes.io/serviceaccount/token",
38-
Interval: monitoringv1.Duration("30s"),
39-
Path: "/metrics",
40-
Port: "metrics",
41-
Scheme: "https",
38+
BearerTokenSecret: &corev1.SecretKeySelector{
39+
LocalObjectReference: corev1.LocalObjectReference{
40+
Name: "openshift-gitops-operator-metrics-monitor-bearer-token",
41+
},
42+
Key: "token",
43+
},
44+
Interval: monitoringv1.Duration("30s"),
45+
Path: "/metrics",
46+
Port: "metrics",
47+
Scheme: "https",
4248
TLSConfig: &monitoringv1.TLSConfig{
4349
SafeTLSConfig: monitoringv1.SafeTLSConfig{
44-
CA: monitoringv1.SecretOrConfigMap{},
50+
CA: monitoringv1.SecretOrConfigMap{
51+
ConfigMap: &corev1.ConfigMapKeySelector{
52+
LocalObjectReference: corev1.LocalObjectReference{
53+
Name: "openshift-gitops-operator-metrics-monitor-ca-bundle",
54+
},
55+
Key: "service-ca.crt",
56+
},
57+
},
4558
Cert: monitoringv1.SecretOrConfigMap{},
4659
ServerName: "openshift-gitops-operator-metrics-service.openshift-gitops-operator.svc",
4760
},
48-
CAFile: "/etc/prometheus/configmaps/serving-certs-ca-bundle/service-ca.crt",
4961
},
5062
}}))
5163

0 commit comments

Comments
 (0)