diff --git a/apis/management.cattle.io/v3/cluster_types.go b/apis/management.cattle.io/v3/cluster_types.go index b854986f..ea602242 100644 --- a/apis/management.cattle.io/v3/cluster_types.go +++ b/apis/management.cattle.io/v3/cluster_types.go @@ -220,3 +220,7 @@ type ClusterRegistrationTokenStatus struct { ManifestURL string `json:"manifestUrl"` Token string `json:"token"` } + +type GenerateKubeConfigOutput struct { + Config string `json:"config"` +} diff --git a/apis/management.cattle.io/v3/schema/schema.go b/apis/management.cattle.io/v3/schema/schema.go index 3e1f2859..5bae9942 100644 --- a/apis/management.cattle.io/v3/schema/schema.go +++ b/apis/management.cattle.io/v3/schema/schema.go @@ -133,6 +133,7 @@ func clusterTypes(schemas *types.Schemas) *types.Schemas { MustImport(&Version, v3.Cluster{}). MustImport(&Version, v3.ClusterEvent{}). MustImport(&Version, v3.ClusterRegistrationToken{}). + MustImport(&Version, v3.GenerateKubeConfigOutput{}). MustImportAndCustomize(&Version, v3.Cluster{}, func(schema *types.Schema) { schema.MustCustomizeField("name", func(field types.Field) types.Field { field.Type = "dnsLabel" @@ -140,6 +141,9 @@ func clusterTypes(schemas *types.Schemas) *types.Schemas { field.Required = false return field }) + schema.ResourceActions["generateKubeconfig"] = types.Action{ + Output: "generateKubeConfigOutput", + } }) }