Datasource Variable CUE SDK

This library helps creating datasource variables in the format expected by Perses.

Usage#

package myDaC

import (
	datasourceVarBuilder "github.com/perses/plugins/datasourcevariable/sdk/cue"
)

datasourceVarBuilder & {} // input parameters expected

Parameters#

ParameterTypeMandatory/OptionalDefaultDescription
#namestringMandatoryThe name of this variable.
#datasourcePluginKindstringMandatoryThe kind of datasource plugin that this variable should reference (e.g., "PrometheusDatasource", "TempoDatasource", etc.).
#displayDisplayOptionalDisplay object to tune the display name, description and visibility (show/hide).
#allowAllValuebooleanOptionalfalseWhether to append the "All" value to the list.
#allowMultiplebooleanOptionalfalseWhether to allow multi-selection of values.
#customAllValuestringOptionalCustom value that will be used if #allowAllValue is true and if All is selected.
#capturingRegexpstringOptionalRegexp used to catch and filter the results of the query. If empty, then nothing is filtered (equivalent of setting it to (.*)).
#sortSortOptionalSort method to apply when rendering the list of values.

Output#

FieldTypeDescription
variableVariableThe final variable object, to be passed to the dashboard.

Example#

package myDaC

import (
	datasourceVarBuilder "github.com/perses/plugins/datasourcevariable/sdk/cue"
)

{datasourceVarBuilder & {
	#name:                  "datasource"
	#datasourcePluginKind:  "PrometheusDatasource"
	#display: {
		name: "Prometheus Instance"
		description: "Select the Prometheus datasource to use"
	}
}}.variable