mirror of
https://github.com/coreos/prometheus-operator.git
synced 2026-02-05 06:45:27 +01:00
Merge pull request #7966 from nutmos/refactor-kuma-sd
Chore: Refactor KumaSD
This commit is contained in:
@@ -626,6 +626,9 @@ func testScrapeConfigCRDValidations(t *testing.T) {
|
||||
t.Run("OpenStackSD", func(t *testing.T) {
|
||||
runScrapeConfigCRDValidation(t, OpenStackSDTestCases)
|
||||
})
|
||||
t.Run("KumaSD", func(t *testing.T) {
|
||||
runScrapeConfigCRDValidation(t, KumaSDTestCases)
|
||||
})
|
||||
t.Run("ScalewaySD", func(t *testing.T) {
|
||||
runScrapeConfigCRDValidation(t, ScalewaySDTestCases)
|
||||
})
|
||||
@@ -3221,6 +3224,170 @@ var OpenStackSDTestCases = []scrapeCRDTestCase{
|
||||
},
|
||||
}
|
||||
|
||||
var KumaSDTestCases = []scrapeCRDTestCase{
|
||||
{
|
||||
name: "Valid KumaSDConfig - Required Fields",
|
||||
scrapeConfigSpec: monitoringv1alpha1.ScrapeConfigSpec{
|
||||
KumaSDConfigs: []monitoringv1alpha1.KumaSDConfig{
|
||||
{
|
||||
Server: "http://kuma-control-plane.example.com",
|
||||
},
|
||||
},
|
||||
},
|
||||
expectedError: false,
|
||||
},
|
||||
{
|
||||
name: "Invalid - Required Fields Not Specified",
|
||||
scrapeConfigSpec: monitoringv1alpha1.ScrapeConfigSpec{
|
||||
KumaSDConfigs: []monitoringv1alpha1.KumaSDConfig{
|
||||
{},
|
||||
},
|
||||
},
|
||||
expectedError: true,
|
||||
},
|
||||
{
|
||||
name: "Invalid Server schema",
|
||||
scrapeConfigSpec: monitoringv1alpha1.ScrapeConfigSpec{
|
||||
KumaSDConfigs: []monitoringv1alpha1.KumaSDConfig{
|
||||
{
|
||||
Server: "ftp://example.com",
|
||||
},
|
||||
},
|
||||
},
|
||||
expectedError: true,
|
||||
},
|
||||
{
|
||||
name: "Invalid empty Server",
|
||||
scrapeConfigSpec: monitoringv1alpha1.ScrapeConfigSpec{
|
||||
KumaSDConfigs: []monitoringv1alpha1.KumaSDConfig{
|
||||
{
|
||||
Server: "",
|
||||
},
|
||||
},
|
||||
},
|
||||
expectedError: true,
|
||||
},
|
||||
{
|
||||
name: "Valid ClientID specified",
|
||||
scrapeConfigSpec: monitoringv1alpha1.ScrapeConfigSpec{
|
||||
KumaSDConfigs: []monitoringv1alpha1.KumaSDConfig{
|
||||
{
|
||||
Server: "http://example.com",
|
||||
ClientID: ptr.To("valid-client-id"),
|
||||
},
|
||||
},
|
||||
},
|
||||
expectedError: false,
|
||||
},
|
||||
{
|
||||
name: "Invalid empty ClientID",
|
||||
scrapeConfigSpec: monitoringv1alpha1.ScrapeConfigSpec{
|
||||
KumaSDConfigs: []monitoringv1alpha1.KumaSDConfig{
|
||||
{
|
||||
Server: "http://example.com",
|
||||
ClientID: ptr.To(""),
|
||||
},
|
||||
},
|
||||
},
|
||||
expectedError: true,
|
||||
},
|
||||
{
|
||||
name: "Valid RefreshInterval",
|
||||
scrapeConfigSpec: monitoringv1alpha1.ScrapeConfigSpec{
|
||||
KumaSDConfigs: []monitoringv1alpha1.KumaSDConfig{
|
||||
{
|
||||
Server: "http://example.com",
|
||||
RefreshInterval: ptr.To(monitoringv1.Duration("60s")),
|
||||
},
|
||||
},
|
||||
},
|
||||
expectedError: false,
|
||||
},
|
||||
{
|
||||
name: "Invalid RefreshInterval",
|
||||
scrapeConfigSpec: monitoringv1alpha1.ScrapeConfigSpec{
|
||||
KumaSDConfigs: []monitoringv1alpha1.KumaSDConfig{
|
||||
{
|
||||
Server: "http://example.com",
|
||||
RefreshInterval: ptr.To(monitoringv1.Duration("60g")),
|
||||
},
|
||||
},
|
||||
},
|
||||
expectedError: true,
|
||||
},
|
||||
{
|
||||
name: "Invalid FetchTimeout",
|
||||
scrapeConfigSpec: monitoringv1alpha1.ScrapeConfigSpec{
|
||||
KumaSDConfigs: []monitoringv1alpha1.KumaSDConfig{
|
||||
{
|
||||
Server: "http://example.com",
|
||||
FetchTimeout: ptr.To(monitoringv1.Duration("60g")),
|
||||
},
|
||||
},
|
||||
},
|
||||
expectedError: true,
|
||||
},
|
||||
{
|
||||
name: "Valid FetchTimeout",
|
||||
scrapeConfigSpec: monitoringv1alpha1.ScrapeConfigSpec{
|
||||
KumaSDConfigs: []monitoringv1alpha1.KumaSDConfig{
|
||||
{
|
||||
Server: "http://example.com",
|
||||
FetchTimeout: ptr.To(monitoringv1.Duration("60s")),
|
||||
},
|
||||
},
|
||||
},
|
||||
expectedError: false,
|
||||
},
|
||||
{
|
||||
name: "FollowRedirects True",
|
||||
scrapeConfigSpec: monitoringv1alpha1.ScrapeConfigSpec{
|
||||
KumaSDConfigs: []monitoringv1alpha1.KumaSDConfig{
|
||||
{
|
||||
Server: "http://example.com",
|
||||
FollowRedirects: ptr.To(true),
|
||||
},
|
||||
},
|
||||
},
|
||||
expectedError: false,
|
||||
},
|
||||
{
|
||||
name: "FollowRedirects False",
|
||||
scrapeConfigSpec: monitoringv1alpha1.ScrapeConfigSpec{
|
||||
KumaSDConfigs: []monitoringv1alpha1.KumaSDConfig{
|
||||
{
|
||||
Server: "http://example.com",
|
||||
FollowRedirects: ptr.To(false),
|
||||
},
|
||||
},
|
||||
},
|
||||
expectedError: false,
|
||||
},
|
||||
{
|
||||
name: "EnableHTTP2 True",
|
||||
scrapeConfigSpec: monitoringv1alpha1.ScrapeConfigSpec{
|
||||
KumaSDConfigs: []monitoringv1alpha1.KumaSDConfig{
|
||||
{
|
||||
Server: "http://example.com",
|
||||
EnableHTTP2: ptr.To(true),
|
||||
},
|
||||
},
|
||||
},
|
||||
expectedError: false,
|
||||
},
|
||||
{
|
||||
name: "EnableHTTP2 False",
|
||||
scrapeConfigSpec: monitoringv1alpha1.ScrapeConfigSpec{
|
||||
KumaSDConfigs: []monitoringv1alpha1.KumaSDConfig{
|
||||
{
|
||||
Server: "http://example.com",
|
||||
EnableHTTP2: ptr.To(false),
|
||||
},
|
||||
},
|
||||
},
|
||||
expectedError: false,
|
||||
},
|
||||
}
|
||||
var ScalewaySDTestCases = []scrapeCRDTestCase{
|
||||
{
|
||||
name: "Valid Project ID",
|
||||
|
||||
Reference in New Issue
Block a user