Kindsys: Target k8s style resource definitions (#67008)

Co-authored-by: sam boyer <sdboyer@grafana.com>
This commit is contained in:
Ryan McKinley
2023-04-27 13:32:38 -07:00
committed by GitHub
parent b71b778d0d
commit ca1f79b9ba
80 changed files with 1991 additions and 640 deletions

View File

@@ -1,7 +1,5 @@
package kind
import "time"
name: "ServiceAccount"
maturity: "merged"
description: "system account"
@@ -11,35 +9,33 @@ lineage: seqs: [
schemas: [
// v0.0
{
// 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")
}
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")
// Created indicates when the service account was created.
created?: string & time.Time
// Updated indicates when the service account was updated.
updated?: string & time.Time
// 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")