mirror of
https://github.com/grafana/grafana.git
synced 2024-11-29 20:24:18 -06:00
8745d7ef1b
* extract kindsys * reinstate kindsys report This may end up living somewhere else (or not! who knows!), but the important part is that I don't get rid of it right now :) I hate the package layout (kindsysreport/codegen) for the main function and will take pretty much any alternative suggestion, but we can change also change it later. Note that the generated report.json is in a different location - anything using this (ops something) needs to be updated. * kindsysreport in codeowners
32 lines
962 B
CUE
32 lines
962 B
CUE
package pfs
|
|
|
|
import (
|
|
"github.com/grafana/kindsys"
|
|
)
|
|
|
|
// GrafanaPlugin specifies what plugins may declare in .cue files in a
|
|
// `grafanaplugin` CUE package in the plugin root directory (adjacent to plugin.json).
|
|
GrafanaPlugin: {
|
|
// id and pascalName are injected from plugin.json. Plugin authors can write
|
|
// values for them in .cue files, but the only valid values will be the ones
|
|
// given in plugin.json.
|
|
id: string
|
|
pascalName: string
|
|
|
|
// A plugin defines its Composable kinds under this key.
|
|
//
|
|
// This struct is open for forwards compatibility - older versions of Grafana (or
|
|
// dependent tooling) should not break if new versions introduce additional schema interfaces.
|
|
composableKinds?: [Iface=string]: kindsys.Composable & {
|
|
name: pascalName + Iface
|
|
schemaInterface: Iface
|
|
lineage: name: pascalName + Iface
|
|
}
|
|
|
|
// A plugin defines its Custom kinds under this key.
|
|
customKinds?: [Name=string]: kindsys.Custom & {
|
|
name: Name
|
|
}
|
|
...
|
|
}
|