1
0
mirror of https://github.com/coreos/prometheus-operator.git synced 2026-02-05 06:45:27 +01:00

feat: unify HTTP configuration for Probe CRD

Signed-off-by: Simon Pasquier <spasquie@redhat.com>
This commit is contained in:
Simon Pasquier
2025-10-10 12:40:46 +02:00
parent 0ff52b38b8
commit ca5bf4a119
26 changed files with 1007 additions and 569 deletions

View File

@@ -1783,29 +1783,31 @@ func testUserDefinedAlertmanagerConfigFromCustomResource(t *testing.T) {
RequireTLS: ptr.To(true),
},
ResolveTimeout: "30s",
HTTPConfig: &monitoringv1.HTTPConfig{
OAuth2: &monitoringv1.OAuth2{
ClientID: monitoringv1.SecretOrConfigMap{
ConfigMap: &v1.ConfigMapKeySelector{
HTTPConfigWithProxy: &monitoringv1.HTTPConfigWithProxy{
HTTPConfig: monitoringv1.HTTPConfig{
OAuth2: &monitoringv1.OAuth2{
ClientID: monitoringv1.SecretOrConfigMap{
ConfigMap: &v1.ConfigMapKeySelector{
LocalObjectReference: v1.LocalObjectReference{
Name: "webhook-client-id",
},
Key: "test",
},
},
ClientSecret: v1.SecretKeySelector{
LocalObjectReference: v1.LocalObjectReference{
Name: "webhook-client-id",
Name: "webhook-client-secret",
},
Key: "test",
},
},
ClientSecret: v1.SecretKeySelector{
LocalObjectReference: v1.LocalObjectReference{
Name: "webhook-client-secret",
TokenURL: "https://test.com",
Scopes: []string{"any"},
EndpointParams: map[string]string{
"some": "value",
},
Key: "test",
},
TokenURL: "https://test.com",
Scopes: []string{"any"},
EndpointParams: map[string]string{
"some": "value",
},
FollowRedirects: ptr.To(true),
},
FollowRedirects: ptr.To(true),
},
},
Templates: []monitoringv1.SecretOrConfigMap{

View File

@@ -3500,19 +3500,21 @@ func testPromSecurePodMonitor(t *testing.T) {
name: "basic-auth-secret",
endpoint: monitoringv1.PodMetricsEndpoint{
Port: ptr.To("web"),
HTTPConfig: monitoringv1.HTTPConfig{
BasicAuth: &monitoringv1.BasicAuth{
Username: v1.SecretKeySelector{
LocalObjectReference: v1.LocalObjectReference{
Name: name,
HTTPConfigWithProxy: monitoringv1.HTTPConfigWithProxy{
HTTPConfig: monitoringv1.HTTPConfig{
BasicAuth: &monitoringv1.BasicAuth{
Username: v1.SecretKeySelector{
LocalObjectReference: v1.LocalObjectReference{
Name: name,
},
Key: "user",
},
Key: "user",
},
Password: v1.SecretKeySelector{
LocalObjectReference: v1.LocalObjectReference{
Name: name,
Password: v1.SecretKeySelector{
LocalObjectReference: v1.LocalObjectReference{
Name: name,
},
Key: "password",
},
Key: "password",
},
},
},
@@ -3525,12 +3527,14 @@ func testPromSecurePodMonitor(t *testing.T) {
name: "bearer-secret",
endpoint: monitoringv1.PodMetricsEndpoint{
Port: ptr.To("web"),
HTTPConfig: monitoringv1.HTTPConfig{
BearerTokenSecret: &v1.SecretKeySelector{
LocalObjectReference: v1.LocalObjectReference{
Name: name,
HTTPConfigWithProxy: monitoringv1.HTTPConfigWithProxy{
HTTPConfig: monitoringv1.HTTPConfig{
BearerTokenSecret: &v1.SecretKeySelector{
LocalObjectReference: v1.LocalObjectReference{
Name: name,
},
Key: "bearer-token",
},
Key: "bearer-token",
},
},
Path: "/bearer-metrics",
@@ -3544,31 +3548,33 @@ func testPromSecurePodMonitor(t *testing.T) {
endpoint: monitoringv1.PodMetricsEndpoint{
Port: ptr.To("mtls"),
Scheme: ptr.To(monitoringv1.SchemeHTTPS),
HTTPConfig: monitoringv1.HTTPConfig{
TLSConfig: &monitoringv1.SafeTLSConfig{
InsecureSkipVerify: ptr.To(true),
CA: monitoringv1.SecretOrConfigMap{
Secret: &v1.SecretKeySelector{
HTTPConfigWithProxy: monitoringv1.HTTPConfigWithProxy{
HTTPConfig: monitoringv1.HTTPConfig{
TLSConfig: &monitoringv1.SafeTLSConfig{
InsecureSkipVerify: ptr.To(true),
CA: monitoringv1.SecretOrConfigMap{
Secret: &v1.SecretKeySelector{
LocalObjectReference: v1.LocalObjectReference{
Name: name,
},
Key: "cert.pem",
},
},
Cert: monitoringv1.SecretOrConfigMap{
Secret: &v1.SecretKeySelector{
LocalObjectReference: v1.LocalObjectReference{
Name: name,
},
Key: "cert.pem",
},
},
KeySecret: &v1.SecretKeySelector{
LocalObjectReference: v1.LocalObjectReference{
Name: name,
},
Key: "cert.pem",
Key: "key.pem",
},
},
Cert: monitoringv1.SecretOrConfigMap{
Secret: &v1.SecretKeySelector{
LocalObjectReference: v1.LocalObjectReference{
Name: name,
},
Key: "cert.pem",
},
},
KeySecret: &v1.SecretKeySelector{
LocalObjectReference: v1.LocalObjectReference{
Name: name,
},
Key: "key.pem",
},
},
},
Path: "/",
@@ -3579,31 +3585,33 @@ func testPromSecurePodMonitor(t *testing.T) {
endpoint: monitoringv1.PodMetricsEndpoint{
Port: ptr.To("mtls"),
Scheme: ptr.To(monitoringv1.SchemeHTTPS),
HTTPConfig: monitoringv1.HTTPConfig{
TLSConfig: &monitoringv1.SafeTLSConfig{
InsecureSkipVerify: ptr.To(true),
CA: monitoringv1.SecretOrConfigMap{
ConfigMap: &v1.ConfigMapKeySelector{
HTTPConfigWithProxy: monitoringv1.HTTPConfigWithProxy{
HTTPConfig: monitoringv1.HTTPConfig{
TLSConfig: &monitoringv1.SafeTLSConfig{
InsecureSkipVerify: ptr.To(true),
CA: monitoringv1.SecretOrConfigMap{
ConfigMap: &v1.ConfigMapKeySelector{
LocalObjectReference: v1.LocalObjectReference{
Name: name,
},
Key: "cert.pem",
},
},
Cert: monitoringv1.SecretOrConfigMap{
ConfigMap: &v1.ConfigMapKeySelector{
LocalObjectReference: v1.LocalObjectReference{
Name: name,
},
Key: "cert.pem",
},
},
KeySecret: &v1.SecretKeySelector{
LocalObjectReference: v1.LocalObjectReference{
Name: name,
},
Key: "cert.pem",
Key: "key.pem",
},
},
Cert: monitoringv1.SecretOrConfigMap{
ConfigMap: &v1.ConfigMapKeySelector{
LocalObjectReference: v1.LocalObjectReference{
Name: name,
},
Key: "cert.pem",
},
},
KeySecret: &v1.SecretKeySelector{
LocalObjectReference: v1.LocalObjectReference{
Name: name,
},
Key: "key.pem",
},
},
},
Path: "/",