diff --git a/clickhouse/schemas/datasources/click-house-datasource/click-house-datasource.cue b/clickhouse/schemas/datasources/click-house-datasource/click-house-datasource.cue index 7d522cd7..683fa249 100644 --- a/clickhouse/schemas/datasources/click-house-datasource/click-house-datasource.cue +++ b/clickhouse/schemas/datasources/click-house-datasource/click-house-datasource.cue @@ -18,15 +18,11 @@ import ( commonProxy "github.com/perses/shared/cue/common/proxy" ) -kind: "ClickHouseDatasource" -spec: { - #directUrl | #proxy -} +#kind: "ClickHouseDatasource" -#directUrl: { - directUrl: common.#url +kind: #kind +spec: { + commonProxy.#baseHTTPDatasourceSpec } -#proxy: { - proxy: commonProxy.#HTTPProxy -} +#selector: common.#datasourceSelector & { _kind: #kind } diff --git a/clickhouse/schemas/queries/click-house-log-query/query.cue b/clickhouse/schemas/queries/click-house-log-query/query.cue index ef23d021..23bb8dec 100644 --- a/clickhouse/schemas/queries/click-house-log-query/query.cue +++ b/clickhouse/schemas/queries/click-house-log-query/query.cue @@ -15,12 +15,11 @@ package model import ( "strings" + ds "github.com/perses/plugins/clickhouse/schemas/datasources/click-house-datasource:model" ) kind: "ClickHouseLogQuery" spec: close({ - datasource?: { - kind: "ClickHouseDatasource" - } - query: strings.MinRunes(1) + ds.#selector + query: strings.MinRunes(1) }) diff --git a/clickhouse/schemas/queries/click-house-time-series-query/query.cue b/clickhouse/schemas/queries/click-house-time-series-query/query.cue index d9ab60cd..51c4464e 100644 --- a/clickhouse/schemas/queries/click-house-time-series-query/query.cue +++ b/clickhouse/schemas/queries/click-house-time-series-query/query.cue @@ -15,12 +15,11 @@ package model import ( "strings" + ds "github.com/perses/plugins/clickhouse/schemas/datasources/click-house-datasource:model" ) kind: "ClickHouseTimeSeriesQuery" spec: close({ - datasource?: { - kind: "ClickHouseDatasource" - } - query: strings.MinRunes(1) + ds.#selector + query: strings.MinRunes(1) }) diff --git a/loki/schemas/datasources/loki.cue b/loki/schemas/datasources/loki.cue index 13399921..b6e3b124 100644 --- a/loki/schemas/datasources/loki.cue +++ b/loki/schemas/datasources/loki.cue @@ -18,15 +18,11 @@ import ( commonProxy "github.com/perses/shared/cue/common/proxy" ) -kind: "LokiDatasource" -spec: { - #directUrl | #proxy -} +#kind: "LokiDatasource" -#directUrl: { - directUrl: common.#url +kind: #kind +spec: { + commonProxy.#baseHTTPDatasourceSpec } -#proxy: { - proxy: commonProxy.#HTTPProxy -} +#selector: common.#datasourceSelector & { _kind: #kind } diff --git a/loki/schemas/queries/loki-log-query/query.cue b/loki/schemas/queries/loki-log-query/query.cue index 7742633b..541869d0 100644 --- a/loki/schemas/queries/loki-log-query/query.cue +++ b/loki/schemas/queries/loki-log-query/query.cue @@ -15,13 +15,12 @@ package model import ( "strings" + ds "github.com/perses/plugins/loki/schemas/datasources:model" ) kind: "LokiLogQuery" spec: close({ - datasource?: { - kind: "LokiDatasource" - } + ds.#selector direction?: "forward" | "backward" query: strings.MinRunes(1) }) diff --git a/loki/schemas/queries/loki-time-series-query/query.cue b/loki/schemas/queries/loki-time-series-query/query.cue index 5af23637..486352a1 100644 --- a/loki/schemas/queries/loki-time-series-query/query.cue +++ b/loki/schemas/queries/loki-time-series-query/query.cue @@ -15,12 +15,11 @@ package model import ( "strings" + ds "github.com/perses/plugins/loki/schemas/datasources:model" ) kind: "LokiTimeSeriesQuery" spec: close({ - datasource?: { - kind: "LokiDatasource" - } + ds.#selector query: strings.MinRunes(1) }) diff --git a/prometheus/schemas/datasource/prometheus.cue b/prometheus/schemas/datasource/prometheus.cue index 32349324..1dc9549c 100644 --- a/prometheus/schemas/datasource/prometheus.cue +++ b/prometheus/schemas/datasource/prometheus.cue @@ -20,25 +20,13 @@ import ( kind: #kind spec: { - #directUrl | #proxy + commonProxy.#baseHTTPDatasourceSpec scrapeInterval?: =~#durationRegex queryParams?: {[string]: string} } #kind: "PrometheusDatasource" -#directUrl: { - directUrl: common.#url -} - -#proxy: { - proxy: commonProxy.#HTTPProxy -} - #durationRegex: "^(\\d+y)?(\\d+w)?(\\d+d)?(\\d+h)?(\\d+m)?(\\d+s)?(\\d+ms)?$" -#selector: common.#datasourceSelector & { - datasource?: =~common.#variableSyntaxRegex | { - kind: #kind - } -} +#selector: common.#datasourceSelector & { _kind: #kind } diff --git a/prometheus/schemas/prometheus-time-series-query/query.cue b/prometheus/schemas/prometheus-time-series-query/query.cue index 4a7707dc..13efd1b4 100644 --- a/prometheus/schemas/prometheus-time-series-query/query.cue +++ b/prometheus/schemas/prometheus-time-series-query/query.cue @@ -16,15 +16,15 @@ package model import ( "strings" "github.com/perses/shared/cue/common" - promDs "github.com/perses/plugins/prometheus/schemas/datasource:model" + ds "github.com/perses/plugins/prometheus/schemas/datasource:model" ) kind: "PrometheusTimeSeriesQuery" spec: close({ - promDs.#selector + ds.#selector query: strings.MinRunes(1) seriesNameFormat?: string - minStep?: =~promDs.#durationRegex | =~common.#variableSyntaxRegex + minStep?: =~ds.#durationRegex | =~common.#variableSyntaxRegex resolution?: number }) diff --git a/pyroscope/schemas/datasource/pyroscope.cue b/pyroscope/schemas/datasource/pyroscope.cue index b73609a2..d8ff0136 100644 --- a/pyroscope/schemas/datasource/pyroscope.cue +++ b/pyroscope/schemas/datasource/pyroscope.cue @@ -18,15 +18,11 @@ import ( commonProxy "github.com/perses/shared/cue/common/proxy" ) -kind: "PyroscopeDatasource" -spec: { - #directUrl | #proxy -} +#kind: "PyroscopeDatasource" -#directUrl: { - directUrl: common.#url +kind: #kind +spec: { + commonProxy.#baseHTTPDatasourceSpec } -#proxy: { - proxy: commonProxy.#HTTPProxy -} +#selector: common.#datasourceSelector & { _kind: #kind } diff --git a/pyroscope/schemas/pyroscope-profile-query/query.cue b/pyroscope/schemas/pyroscope-profile-query/query.cue index 1a1e30d8..4104fc40 100644 --- a/pyroscope/schemas/pyroscope-profile-query/query.cue +++ b/pyroscope/schemas/pyroscope-profile-query/query.cue @@ -15,13 +15,12 @@ package model import ( pyroscope "github.com/perses/plugins/pyroscope/schemas/datasource:model" + ds "github.com/perses/plugins/pyroscope/schemas/datasource:model" ) kind: "PyroscopeProfileQuery" spec: close({ - datasource?: { - kind: pyroscope.kind - } + ds.#selector maxNodes?: number profileType: string filters?: [...{ diff --git a/tempo/schemas/datasource/tempo.cue b/tempo/schemas/datasource/tempo.cue index 1f82b607..932f1ff2 100644 --- a/tempo/schemas/datasource/tempo.cue +++ b/tempo/schemas/datasource/tempo.cue @@ -18,23 +18,11 @@ import ( commonProxy "github.com/perses/shared/cue/common/proxy" ) -kind: #kind -spec: { - #directUrl | #proxy -} - #kind: "TempoDatasource" -#directUrl: { - directUrl: common.#url -} - -#proxy: { - proxy: commonProxy.#HTTPProxy +kind: #kind +spec: { + commonProxy.#baseHTTPDatasourceSpec } -#selector: common.#datasourceSelector & { - datasource?: =~common.#variableSyntaxRegex | { - kind: #kind - } -} +#selector: common.#datasourceSelector & { _kind: #kind } \ No newline at end of file diff --git a/tempo/schemas/tempo-trace-query/query.cue b/tempo/schemas/tempo-trace-query/query.cue index 356b3a9a..4142761a 100644 --- a/tempo/schemas/tempo-trace-query/query.cue +++ b/tempo/schemas/tempo-trace-query/query.cue @@ -15,12 +15,12 @@ package model import ( "strings" - tempoDs "github.com/perses/plugins/tempo/schemas/datasource:model" + ds "github.com/perses/plugins/tempo/schemas/datasource:model" ) kind: "TempoTraceQuery" spec: close({ - tempoDs.#selector + ds.#selector query: strings.MinRunes(1) limit?: number }) diff --git a/victorialogs/schemas/datasources/victorialogs.cue b/victorialogs/schemas/datasources/victorialogs.cue index 472d937b..c0d4a4ac 100644 --- a/victorialogs/schemas/datasources/victorialogs.cue +++ b/victorialogs/schemas/datasources/victorialogs.cue @@ -18,23 +18,11 @@ import ( commonProxy "github.com/perses/shared/cue/common/proxy" ) -kind: #kind -spec: { - #directUrl | #proxy -} - #kind: "VictoriaLogsDatasource" -#directUrl: { - directUrl: common.#url -} - -#proxy: { - proxy: commonProxy.#HTTPProxy +kind: #kind +spec: { + commonProxy.#baseHTTPDatasourceSpec } -#selector: common.#datasourceSelector & { - datasource?: =~common.#variableSyntaxRegex | { - kind: #kind - } -} +#selector: common.#datasourceSelector & { _kind: #kind } \ No newline at end of file