Refactor iam app cue files (#108542)

A breaking change was introduced by this grafana-app-sdk PR: https://github.com/grafana/grafana-app-sdk/pull/795

This PR refactors the definition of our CUE files (manifest and kinds) to match the new model in the latest version of grafana-app-sdk.
This commit is contained in:
Mihai Turdean 2025-07-24 02:52:52 -06:00 committed by GitHub
parent 69731658a2
commit b1de534092
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
9 changed files with 119 additions and 149 deletions

View File

@ -9,4 +9,3 @@ generate: install-app-sdk update-app-sdk ## Run Grafana App SDK code generation
--defencoding=none \ --defencoding=none \
--noschemasinmanifest \ --noschemasinmanifest \
--postprocess \ --postprocess \
--useoldmanifestkinds

View File

@ -3,16 +3,22 @@ package kinds
manifest: { manifest: {
appName: "iam" appName: "iam"
groupOverride: "iam.grafana.app" groupOverride: "iam.grafana.app"
versions: {
"v0alpha1": v0alpha1
}
}
v0alpha1: {
kinds: [ kinds: [
globalrole, globalrolev0alpha1,
globalrolebinding, globalrolebindingv0alpha1,
corerole, corerolev0alpha1,
role, rolev0alpha1,
rolebinding, rolebindingv0alpha1,
resourcepermission, resourcepermissionv0alpha1,
user, userv0alpha1,
team, teamv0alpha1,
teambinding, teambindingv0alpha1,
serviceaccount, serviceaccountv0alpha1,
] ]
} }

View File

@ -4,20 +4,17 @@ import (
"github.com/grafana/grafana/apps/iam/kinds/v0alpha1" "github.com/grafana/grafana/apps/iam/kinds/v0alpha1"
) )
resourcepermission: { resourcepermissionKind: {
kind: "ResourcePermission" kind: "ResourcePermission"
pluralName: "ResourcePermissions" pluralName: "ResourcePermissions"
current: "v0alpha1"
versions: {
"v0alpha1": {
codegen: { codegen: {
ts: { enabled: false } ts: { enabled: false }
go: { enabled: true } go: { enabled: true }
} }
}
resourcepermissionv0alpha1: resourcepermissionKind & {
schema: { schema: {
spec: v0alpha1.ResourcePermission spec: v0alpha1.ResourcePermission
} }
}
}
} }

View File

@ -4,56 +4,47 @@ import (
"github.com/grafana/grafana/apps/iam/kinds/v0alpha1" "github.com/grafana/grafana/apps/iam/kinds/v0alpha1"
) )
role: { roleKind: {
kind: "Role" kind: "Role"
pluralName: "Roles" pluralName: "Roles"
current: "v0alpha1"
versions: {
"v0alpha1": {
codegen: { codegen: {
ts: { enabled: false } ts: { enabled: false }
go: { enabled: true } go: { enabled: true }
} }
schema: {
spec: v0alpha1.RoleSpec
}
}
}
} }
corerole: { coreroleKind: {
kind: "CoreRole" kind: "CoreRole"
pluralName: "CoreRoles" pluralName: "CoreRoles"
current: "v0alpha1"
versions: {
"v0alpha1": {
codegen: { codegen: {
ts: { enabled: false } ts: { enabled: false }
go: { enabled: true } go: { enabled: true }
} }
schema: {
spec: v0alpha1.RoleSpec
}
}
}
} }
globalrole: { globalroleKind: {
kind: "GlobalRole" kind: "GlobalRole"
pluralName: "GlobalRoles" pluralName: "GlobalRoles"
current: "v0alpha1"
versions: {
"v0alpha1": {
codegen: { codegen: {
ts: { enabled: false } ts: { enabled: false }
go: { enabled: true } go: { enabled: true }
} }
}
rolev0alpha1: roleKind & {
schema: { schema: {
spec: v0alpha1.RoleSpec spec: v0alpha1.RoleSpec
} }
} }
corerolev0alpha1: coreroleKind & {
schema: {
spec: v0alpha1.RoleSpec
}
}
globalrolev0alpha1: globalroleKind & {
schema: {
spec: v0alpha1.RoleSpec
} }
} }

View File

@ -4,38 +4,32 @@ import (
"github.com/grafana/grafana/apps/iam/kinds/v0alpha1" "github.com/grafana/grafana/apps/iam/kinds/v0alpha1"
) )
rolebinding: { rolebindingKind: {
kind: "RoleBinding" kind: "RoleBinding"
pluralName: "RoleBindings" pluralName: "RoleBindings"
current: "v0alpha1"
versions: {
"v0alpha1": {
codegen: { codegen: {
ts: { enabled: false } ts: { enabled: false }
go: { enabled: true } go: { enabled: true }
} }
}
globalrolebindingKind: {
kind: "GlobalRoleBinding"
pluralName: "GlobalRoleBindings"
codegen: {
ts: { enabled: false }
go: { enabled: true }
}
}
rolebindingv0alpha1: rolebindingKind & {
schema: { schema: {
spec: v0alpha1.RoleBindingSpec spec: v0alpha1.RoleBindingSpec
} }
}
}
} }
globalrolebinding: { globalrolebindingv0alpha1: globalrolebindingKind & {
kind: "GlobalRoleBinding"
pluralName: "GlobalRoleBindings"
current: "v0alpha1"
versions: {
"v0alpha1": {
codegen: {
ts: { enabled: false }
go: { enabled: true }
}
schema: { schema: {
spec: v0alpha1.GlobalRoleBindingSpec spec: v0alpha1.GlobalRoleBindingSpec
} }
}
}
} }

View File

@ -4,20 +4,17 @@ import (
"github.com/grafana/grafana/apps/iam/kinds/v0alpha1" "github.com/grafana/grafana/apps/iam/kinds/v0alpha1"
) )
serviceaccount: { serviceaccountKind: {
kind: "ServiceAccount" kind: "ServiceAccount"
pluralName: "ServiceAccounts" pluralName: "ServiceAccounts"
current: "v0alpha1"
versions: {
"v0alpha1": {
codegen: { codegen: {
ts: { enabled: false } ts: { enabled: false }
go: { enabled: true } go: { enabled: true }
} }
}
serviceaccountv0alpha1: serviceaccountKind & {
schema: { schema: {
spec: v0alpha1.ServiceAccountSpec spec: v0alpha1.ServiceAccountSpec
} }
}
}
} }

View File

@ -4,20 +4,18 @@ import (
"github.com/grafana/grafana/apps/iam/kinds/v0alpha1" "github.com/grafana/grafana/apps/iam/kinds/v0alpha1"
) )
team: { teamKind: {
kind: "Team" kind: "Team"
pluralName: "Teams" pluralName: "Teams"
current: "v0alpha1" current: "v0alpha1"
versions: {
"v0alpha1": {
codegen: { codegen: {
ts: { enabled: false } ts: { enabled: false }
go: { enabled: true } go: { enabled: true }
} }
}
teamv0alpha1: teamKind & {
schema: { schema: {
spec: v0alpha1.TeamSpec spec: v0alpha1.TeamSpec
} }
}
}
} }

View File

@ -4,20 +4,17 @@ import (
"github.com/grafana/grafana/apps/iam/kinds/v0alpha1" "github.com/grafana/grafana/apps/iam/kinds/v0alpha1"
) )
teambinding: { teambindingKind: {
kind: "TeamBinding" kind: "TeamBinding"
pluralName: "TeamBindings" pluralName: "TeamBindings"
current: "v0alpha1"
versions: {
"v0alpha1": {
codegen: { codegen: {
ts: { enabled: false } ts: { enabled: false }
go: { enabled: true } go: { enabled: true }
} }
}
teambindingv0alpha1: teambindingKind & {
schema: { schema: {
spec: v0alpha1.TeamBindingSpec spec: v0alpha1.TeamBindingSpec
} }
}
}
} }

View File

@ -4,26 +4,17 @@ import (
"github.com/grafana/grafana/apps/iam/kinds/v0alpha1" "github.com/grafana/grafana/apps/iam/kinds/v0alpha1"
) )
user: { userKind: {
kind: "User" kind: "User"
pluralName: "Users" pluralName: "Users"
current: "v0alpha1"
versions: {
"v0alpha1": {
codegen: { codegen: {
ts: { enabled: false } ts: { enabled: false }
go: { enabled: true } go: { enabled: true }
} }
validation: { }
operations: [
"CREATE", userv0alpha1: userKind & {
"UPDATE",
]
}
schema: { schema: {
spec: v0alpha1.UserSpec spec: v0alpha1.UserSpec
} }
}
}
} }