grafana/kinds/serviceaccount/serviceaccount_kind.cue
sam boyer 323cbe1997
kindsys: Adapt to new flattened lineage syntax in Thema (#68034)
* Update all core kinds to flattened lineages

* Regen Go types, without any

* Regen Go types, s/interface{}/any/

* Update generated core typescript

* Update generate docs

* Fix defaults gen in veneer index jenny

* Flatten plugindef lineage

* Convert all plugin kinds to flattened form

* Switch back to interface{} for now

* Switch to fs.Sub in plugin DeclParser

* Mostly undesirable codegen changes, to be fixed

* Update mod and sum

* Update pfs tests to flattened lineages

* Update thema to latest, regen docs
2023-05-24 10:47:25 +02:00

42 lines
1.6 KiB
CUE

package kind
name: "ServiceAccount"
maturity: "merged"
description: "system account"
lineage: schemas: [{
version: [0, 0]
schema: {
spec: {
// ID is the unique identifier of the service account in the database.
id: int64 @grafanamaturity(ToMetadata="sys")
// OrgId is the ID of an organisation the service account belongs to.
orgId: int64 @grafanamaturity(ToMetadata="sys")
// Name of the service account.
name: string
// Login of the service account.
login: string
// IsDisabled indicates if the service account is disabled.
isDisabled: bool
// Role is the Grafana organization role of the service account which can be 'Viewer', 'Editor', 'Admin'.
role: #OrgRole @grafanamaturity(ToMetadata="kind")
// Tokens is the number of active tokens for the service account.
// Tokens are used to authenticate the service account against Grafana.
tokens: int64 @grafanamaturity(ToMetadata="kind")
// AvatarUrl is the service account's avatar URL. It allows the frontend to display a picture in front
// of the service account.
avatarUrl: string @grafanamaturity(ToMetadata="kind")
// AccessControl metadata associated with a given resource.
accessControl?: {
[string]: bool @grafanamaturity(ToMetadata="sys")
}
// Teams is a list of teams the service account belongs to.
teams?: [...string] @grafanamaturity(ToMetadata="sys")
} @cuetsy(kind="interface")
// OrgRole is a Grafana Organization Role which can be 'Viewer', 'Editor', 'Admin'.
#OrgRole: "Admin" | "Editor" | "Viewer" @cuetsy(kind="type")
}
}]