diff --git a/pkg/prometheus/promcfg_test.go b/pkg/prometheus/promcfg_test.go index 8c5e8ee40..f73c8d78e 100644 --- a/pkg/prometheus/promcfg_test.go +++ b/pkg/prometheus/promcfg_test.go @@ -474,7 +474,17 @@ func TestNamespaceSetCorrectly(t *testing.T) { } c := cg.generateK8SSDConfig(tc.ServiceMonitor.Spec.NamespaceSelector, tc.ServiceMonitor.Namespace, nil, assets.NewTestStoreBuilder().ForNamespace(tc.ServiceMonitor.Namespace), kubernetesSDRoleEndpoint, attachMetaConfig) - s, err := yaml.Marshal(yaml.MapSlice{c}) + // Wrap partial K8s SD config in a full Prometheus config to satisfy promtool validation. + fullConfig := yaml.MapSlice{ + {Key: "scrape_configs", Value: []yaml.MapSlice{ + { + {Key: "job_name", Value: "k8s-sd-test"}, + c, + }, + }}, + } + + s, err := yaml.Marshal(fullConfig) require.NoError(t, err) golden.Assert(t, string(s), tc.Golden) } @@ -516,7 +526,17 @@ func TestNamespaceSetCorrectlyForPodMonitor(t *testing.T) { } c := cg.generateK8SSDConfig(pm.Spec.NamespaceSelector, pm.Namespace, nil, assets.NewTestStoreBuilder().ForNamespace(pm.Namespace), kubernetesSDRolePod, attachMetadataConfig) - s, err := yaml.Marshal(yaml.MapSlice{c}) + // Wrap partial K8s SD config in a full Prometheus config to satisfy promtool validation. + fullConfig := yaml.MapSlice{ + {Key: "scrape_configs", Value: []yaml.MapSlice{ + { + {Key: "job_name", Value: "k8s-sd-test"}, + c, + }, + }}, + } + + s, err := yaml.Marshal(fullConfig) require.NoError(t, err) golden.Assert(t, string(s), "NamespaceSetCorrectlyForPodMonitor.golden") @@ -891,8 +911,6 @@ func TestK8SSDConfigGeneration(t *testing.T) { Key: "password", }, }, - BearerToken: "bearer_token", - BearerTokenFile: "bearer_token_file", }, store: assets.NewTestStoreBuilder( &v1.Secret{ @@ -978,7 +996,17 @@ func TestK8SSDConfigGeneration(t *testing.T) { tc.role, attachMetaConfig, ) - s, err := yaml.Marshal(yaml.MapSlice{c}) + // Wrap partial K8s SD config in a full Prometheus config to satisfy promtool validation. + fullConfig := yaml.MapSlice{ + {Key: "scrape_configs", Value: []yaml.MapSlice{ + { + {Key: "job_name", Value: "k8s-sd-test"}, + c, + }, + }}, + } + + s, err := yaml.Marshal(fullConfig) require.NoError(t, err) golden.Assert(t, string(s), tc.golden) } @@ -1510,7 +1538,7 @@ func TestAdditionalScrapeConfigs(t *testing.T) { nil, nil, &assets.StoreBuilder{}, - golden.Get(t, "TestAdditionalScrapeConfigsAdditionalScrapeConfig.golden"), + golden.Get(t, "input/TestAdditionalScrapeConfigsAdditionalScrapeConfig.golden"), nil, nil, nil, @@ -1570,7 +1598,7 @@ func TestAdditionalAlertRelabelConfigs(t *testing.T) { nil, &assets.StoreBuilder{}, nil, - golden.Get(t, "AdditionalAlertRelabelConfigs.golden"), + golden.Get(t, "input/AdditionalAlertRelabelConfigs.golden"), nil, nil, ) @@ -4008,7 +4036,7 @@ func TestRemoteWriteConfig(t *testing.T) { SendInterval: "1m", }, }, - golden: "RemoteWriteConfig_v2.10.0_1.golden", + golden: "legacy-versions/RemoteWriteConfig_v2.10.0_1.golden", }, { version: "v2.27.1", @@ -5051,7 +5079,7 @@ func TestNativeHistogramConfig(t *testing.T) { NativeHistogramMinBucketFactor: ptr.To(resource.MustParse("12.124")), ConvertClassicHistogramsToNHCB: ptr.To(true), }, - golden: "NativeHistogramConfigMissConvertClassicHistogramsToNHCB.golden", + golden: "native-histograms/NativeHistogramConfigMissConvertClassicHistogramsToNHCB.golden", }, { version: "v2.46.0", @@ -5061,7 +5089,7 @@ func TestNativeHistogramConfig(t *testing.T) { NativeHistogramMinBucketFactor: ptr.To(resource.MustParse("12.124")), ConvertClassicHistogramsToNHCB: ptr.To(true), }, - golden: "NativeHistogramConfigWithMissNativeHistogramMinBucketFactor.golden", + golden: "native-histograms/NativeHistogramConfigWithMissNativeHistogramMinBucketFactor.golden", }, { version: "v2.44.0", diff --git a/pkg/prometheus/testdata/Any_returns_an_empty_list_instead_of_the_current_namespace.golden b/pkg/prometheus/testdata/Any_returns_an_empty_list_instead_of_the_current_namespace.golden index b429bcf34..9d05f2df2 100644 --- a/pkg/prometheus/testdata/Any_returns_an_empty_list_instead_of_the_current_namespace.golden +++ b/pkg/prometheus/testdata/Any_returns_an_empty_list_instead_of_the_current_namespace.golden @@ -1,2 +1,4 @@ -kubernetes_sd_configs: -- role: endpoints +scrape_configs: +- job_name: k8s-sd-test + kubernetes_sd_configs: + - role: endpoints diff --git a/pkg/prometheus/testdata/Any_takes_precedence_over_MatchNames.golden b/pkg/prometheus/testdata/Any_takes_precedence_over_MatchNames.golden index b429bcf34..9d05f2df2 100644 --- a/pkg/prometheus/testdata/Any_takes_precedence_over_MatchNames.golden +++ b/pkg/prometheus/testdata/Any_takes_precedence_over_MatchNames.golden @@ -1,2 +1,4 @@ -kubernetes_sd_configs: -- role: endpoints +scrape_configs: +- job_name: k8s-sd-test + kubernetes_sd_configs: + - role: endpoints diff --git a/pkg/prometheus/testdata/IgnoreNamespaceSelectors_overrides_Any_and_MatchNames.golden b/pkg/prometheus/testdata/IgnoreNamespaceSelectors_overrides_Any_and_MatchNames.golden index 410e4d426..3de5430a8 100644 --- a/pkg/prometheus/testdata/IgnoreNamespaceSelectors_overrides_Any_and_MatchNames.golden +++ b/pkg/prometheus/testdata/IgnoreNamespaceSelectors_overrides_Any_and_MatchNames.golden @@ -1,5 +1,7 @@ -kubernetes_sd_configs: -- role: endpoints - namespaces: - names: - - default +scrape_configs: +- job_name: k8s-sd-test + kubernetes_sd_configs: + - role: endpoints + namespaces: + names: + - default diff --git a/pkg/prometheus/testdata/K8SSDConfigGenerationBearerToken.golden b/pkg/prometheus/testdata/K8SSDConfigGenerationBearerToken.golden new file mode 100644 index 000000000..294850bf3 --- /dev/null +++ b/pkg/prometheus/testdata/K8SSDConfigGenerationBearerToken.golden @@ -0,0 +1,11 @@ +global: + scrape_interval: 30s +scrape_configs: +- job_name: k8s-sd-test + kubernetes_sd_configs: + - role: endpoints + namespaces: + names: + - test + api_server: example.com + bearer_token: bearer_token diff --git a/pkg/prometheus/testdata/K8SSDConfigGenerationFirst.golden b/pkg/prometheus/testdata/K8SSDConfigGenerationFirst.golden index 042c26e12..017929672 100644 --- a/pkg/prometheus/testdata/K8SSDConfigGenerationFirst.golden +++ b/pkg/prometheus/testdata/K8SSDConfigGenerationFirst.golden @@ -1,5 +1,7 @@ -kubernetes_sd_configs: -- role: endpoints - namespaces: - names: - - test +scrape_configs: +- job_name: k8s-sd-test + kubernetes_sd_configs: + - role: endpoints + namespaces: + names: + - test diff --git a/pkg/prometheus/testdata/K8SSDConfigGenerationTLSConfig.golden b/pkg/prometheus/testdata/K8SSDConfigGenerationTLSConfig.golden index 7abd4dd70..6fe7477f9 100644 --- a/pkg/prometheus/testdata/K8SSDConfigGenerationTLSConfig.golden +++ b/pkg/prometheus/testdata/K8SSDConfigGenerationTLSConfig.golden @@ -1,10 +1,12 @@ -kubernetes_sd_configs: -- role: endpoints - namespaces: - names: - - test - api_server: example.com - tls_config: - ca_file: /etc/prometheus/certs/0_default_tls_ca - cert_file: /etc/prometheus/certs/0_default_tls_cert - key_file: /etc/prometheus/certs/0_default_tls_private-key +scrape_configs: +- job_name: k8s-sd-test + kubernetes_sd_configs: + - role: endpoints + namespaces: + names: + - test + api_server: example.com + tls_config: + ca_file: /etc/prometheus/certs/0_default_tls_ca + cert_file: /etc/prometheus/certs/0_default_tls_cert + key_file: /etc/prometheus/certs/0_default_tls_private-key diff --git a/pkg/prometheus/testdata/K8SSDConfigGenerationThree.golden b/pkg/prometheus/testdata/K8SSDConfigGenerationThree.golden index cc0797c81..57bd9b1ab 100644 --- a/pkg/prometheus/testdata/K8SSDConfigGenerationThree.golden +++ b/pkg/prometheus/testdata/K8SSDConfigGenerationThree.golden @@ -1,5 +1,7 @@ -kubernetes_sd_configs: -- role: endpointslice - namespaces: - names: - - test +scrape_configs: +- job_name: k8s-sd-test + kubernetes_sd_configs: + - role: endpointslice + namespaces: + names: + - test diff --git a/pkg/prometheus/testdata/K8SSDConfigGenerationTwo.golden b/pkg/prometheus/testdata/K8SSDConfigGenerationTwo.golden index e5c657a4f..5aad7313c 100644 --- a/pkg/prometheus/testdata/K8SSDConfigGenerationTwo.golden +++ b/pkg/prometheus/testdata/K8SSDConfigGenerationTwo.golden @@ -1,11 +1,11 @@ -kubernetes_sd_configs: -- role: endpoints - namespaces: - names: - - test - api_server: example.com - basic_auth: - username: foo - password: bar - bearer_token: bearer_token - bearer_token_file: bearer_token_file +scrape_configs: +- job_name: k8s-sd-test + kubernetes_sd_configs: + - role: endpoints + namespaces: + names: + - test + api_server: example.com + basic_auth: + username: foo + password: bar diff --git a/pkg/prometheus/testdata/NamespaceSetCorrectlyForPodMonitor.golden b/pkg/prometheus/testdata/NamespaceSetCorrectlyForPodMonitor.golden index 95995f3a6..b9b15c48f 100644 --- a/pkg/prometheus/testdata/NamespaceSetCorrectlyForPodMonitor.golden +++ b/pkg/prometheus/testdata/NamespaceSetCorrectlyForPodMonitor.golden @@ -1,7 +1,9 @@ -kubernetes_sd_configs: -- role: pod - namespaces: - names: - - test - attach_metadata: - node: true +scrape_configs: +- job_name: k8s-sd-test + kubernetes_sd_configs: + - role: pod + namespaces: + names: + - test + attach_metadata: + node: true diff --git a/pkg/prometheus/testdata/AdditionalAlertRelabelConfigs.golden b/pkg/prometheus/testdata/input/AdditionalAlertRelabelConfigs.golden similarity index 100% rename from pkg/prometheus/testdata/AdditionalAlertRelabelConfigs.golden rename to pkg/prometheus/testdata/input/AdditionalAlertRelabelConfigs.golden diff --git a/pkg/prometheus/testdata/TestAdditionalScrapeConfigsAdditionalScrapeConfig.golden b/pkg/prometheus/testdata/input/TestAdditionalScrapeConfigsAdditionalScrapeConfig.golden similarity index 100% rename from pkg/prometheus/testdata/TestAdditionalScrapeConfigsAdditionalScrapeConfig.golden rename to pkg/prometheus/testdata/input/TestAdditionalScrapeConfigsAdditionalScrapeConfig.golden diff --git a/pkg/prometheus/testdata/RemoteWriteConfig_v2.10.0_1.golden b/pkg/prometheus/testdata/legacy-versions/RemoteWriteConfig_v2.10.0_1.golden similarity index 100% rename from pkg/prometheus/testdata/RemoteWriteConfig_v2.10.0_1.golden rename to pkg/prometheus/testdata/legacy-versions/RemoteWriteConfig_v2.10.0_1.golden diff --git a/pkg/prometheus/testdata/namespaces_from_MatchNames_are_returned_instead_of_the_current_namespace.golden b/pkg/prometheus/testdata/namespaces_from_MatchNames_are_returned_instead_of_the_current_namespace.golden index ea7fedf06..9f3f7d7fa 100644 --- a/pkg/prometheus/testdata/namespaces_from_MatchNames_are_returned_instead_of_the_current_namespace.golden +++ b/pkg/prometheus/testdata/namespaces_from_MatchNames_are_returned_instead_of_the_current_namespace.golden @@ -1,8 +1,10 @@ -kubernetes_sd_configs: -- role: endpoints - namespaces: - names: - - test1 - - test2 - attach_metadata: - node: true +scrape_configs: +- job_name: k8s-sd-test + kubernetes_sd_configs: + - role: endpoints + namespaces: + names: + - test1 + - test2 + attach_metadata: + node: true diff --git a/pkg/prometheus/testdata/NativeHistogramConfigMissConvertClassicHistogramsToNHCB.golden b/pkg/prometheus/testdata/native-histograms/NativeHistogramConfigMissConvertClassicHistogramsToNHCB.golden similarity index 100% rename from pkg/prometheus/testdata/NativeHistogramConfigMissConvertClassicHistogramsToNHCB.golden rename to pkg/prometheus/testdata/native-histograms/NativeHistogramConfigMissConvertClassicHistogramsToNHCB.golden diff --git a/pkg/prometheus/testdata/NativeHistogramConfigWithMissNativeHistogramMinBucketFactor.golden b/pkg/prometheus/testdata/native-histograms/NativeHistogramConfigWithMissNativeHistogramMinBucketFactor.golden similarity index 100% rename from pkg/prometheus/testdata/NativeHistogramConfigWithMissNativeHistogramMinBucketFactor.golden rename to pkg/prometheus/testdata/native-histograms/NativeHistogramConfigWithMissNativeHistogramMinBucketFactor.golden