diff --git a/openapi/generated_openapi/zz_generated.openapi.go b/openapi/generated_openapi/zz_generated.openapi.go index ceec514ad2d..50dca9a70f9 100644 --- a/openapi/generated_openapi/zz_generated.openapi.go +++ b/openapi/generated_openapi/zz_generated.openapi.go @@ -1229,22 +1229,24 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA "github.com/openshift/api/update/v1alpha1.ControlPlaneUpdateVersions": schema_openshift_api_update_v1alpha1_ControlPlaneUpdateVersions(ref), "github.com/openshift/api/update/v1alpha1.MachineConfigPoolStatusInsight": schema_openshift_api_update_v1alpha1_MachineConfigPoolStatusInsight(ref), "github.com/openshift/api/update/v1alpha1.NodeStatusInsight": schema_openshift_api_update_v1alpha1_NodeStatusInsight(ref), - "github.com/openshift/api/update/v1alpha1.PoolNodesUpdateSummary": schema_openshift_api_update_v1alpha1_PoolNodesUpdateSummary(ref), + "github.com/openshift/api/update/v1alpha1.NodeSummary": schema_openshift_api_update_v1alpha1_NodeSummary(ref), "github.com/openshift/api/update/v1alpha1.PoolResourceRef": schema_openshift_api_update_v1alpha1_PoolResourceRef(ref), "github.com/openshift/api/update/v1alpha1.PoolUpdateStatus": schema_openshift_api_update_v1alpha1_PoolUpdateStatus(ref), "github.com/openshift/api/update/v1alpha1.ResourceRef": schema_openshift_api_update_v1alpha1_ResourceRef(ref), - "github.com/openshift/api/update/v1alpha1.UpdateEdgeVersion": schema_openshift_api_update_v1alpha1_UpdateEdgeVersion(ref), "github.com/openshift/api/update/v1alpha1.UpdateHealthInsight": schema_openshift_api_update_v1alpha1_UpdateHealthInsight(ref), "github.com/openshift/api/update/v1alpha1.UpdateInformer": schema_openshift_api_update_v1alpha1_UpdateInformer(ref), "github.com/openshift/api/update/v1alpha1.UpdateInsight": schema_openshift_api_update_v1alpha1_UpdateInsight(ref), "github.com/openshift/api/update/v1alpha1.UpdateInsightImpact": schema_openshift_api_update_v1alpha1_UpdateInsightImpact(ref), "github.com/openshift/api/update/v1alpha1.UpdateInsightRemediation": schema_openshift_api_update_v1alpha1_UpdateInsightRemediation(ref), "github.com/openshift/api/update/v1alpha1.UpdateInsightScope": schema_openshift_api_update_v1alpha1_UpdateInsightScope(ref), + "github.com/openshift/api/update/v1alpha1.UpdateInsightUnion": schema_openshift_api_update_v1alpha1_UpdateInsightUnion(ref), "github.com/openshift/api/update/v1alpha1.UpdateStatus": schema_openshift_api_update_v1alpha1_UpdateStatus(ref), "github.com/openshift/api/update/v1alpha1.UpdateStatusList": schema_openshift_api_update_v1alpha1_UpdateStatusList(ref), "github.com/openshift/api/update/v1alpha1.UpdateStatusSpec": schema_openshift_api_update_v1alpha1_UpdateStatusSpec(ref), "github.com/openshift/api/update/v1alpha1.UpdateStatusStatus": schema_openshift_api_update_v1alpha1_UpdateStatusStatus(ref), + "github.com/openshift/api/update/v1alpha1.Version": schema_openshift_api_update_v1alpha1_Version(ref), "github.com/openshift/api/update/v1alpha1.VersionMetadata": schema_openshift_api_update_v1alpha1_VersionMetadata(ref), + "github.com/openshift/api/update/v1alpha1.VersionMetadataValue": schema_openshift_api_update_v1alpha1_VersionMetadataValue(ref), "github.com/openshift/api/user/v1.Group": schema_openshift_api_user_v1_Group(ref), "github.com/openshift/api/user/v1.GroupList": schema_openshift_api_user_v1_GroupList(ref), "github.com/openshift/api/user/v1.Identity": schema_openshift_api_user_v1_Identity(ref), @@ -62937,11 +62939,12 @@ func schema_openshift_api_update_v1alpha1_ClusterOperatorStatusInsight(ref commo return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Type: []string{"object"}, + Description: "ClusterOperatorStatusInsight reports the state of a ClusterOperator resource (which represents a control plane component update in standalone clusters), during the update", + Type: []string{"object"}, Properties: map[string]spec.Schema{ "name": { SchemaProps: spec.SchemaProps{ - Description: "Name is the name of the operator", + Description: "name is the name of the operator", Default: "", Type: []string{"string"}, Format: "", @@ -62949,7 +62952,7 @@ func schema_openshift_api_update_v1alpha1_ClusterOperatorStatusInsight(ref commo }, "resource": { SchemaProps: spec.SchemaProps{ - Description: "Resource is the ClusterOperator resource that represents the operator", + Description: "resource is the ClusterOperator resource that represents the operator", Default: map[string]interface{}{}, Ref: ref("github.com/openshift/api/update/v1alpha1.ResourceRef"), }, @@ -62964,7 +62967,7 @@ func schema_openshift_api_update_v1alpha1_ClusterOperatorStatusInsight(ref commo }, }, SchemaProps: spec.SchemaProps{ - Description: "Conditions provide details about the operator", + Description: "conditions provide details about the operator", Type: []string{"array"}, Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ @@ -62989,18 +62992,19 @@ func schema_openshift_api_update_v1alpha1_ClusterVersionStatusInsight(ref common return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Type: []string{"object"}, + Description: "ClusterVersionStatusInsight reports the state of a ClusterVersion resource (which represents a control plane update in standalone clusters), during the update.", + Type: []string{"object"}, Properties: map[string]spec.Schema{ "resource": { SchemaProps: spec.SchemaProps{ - Description: "Resource is the ClusterVersion resource that represents the control plane", + Description: "resource is the ClusterVersion resource that represents the control plane", Default: map[string]interface{}{}, Ref: ref("github.com/openshift/api/update/v1alpha1.ResourceRef"), }, }, "assessment": { SchemaProps: spec.SchemaProps{ - Description: "Assessment is the assessment of the control plane update process", + Description: "assessment is the assessment of the control plane update process", Default: "", Type: []string{"string"}, Format: "", @@ -63008,14 +63012,14 @@ func schema_openshift_api_update_v1alpha1_ClusterVersionStatusInsight(ref common }, "versions": { SchemaProps: spec.SchemaProps{ - Description: "Versions contains the original and target versions of the upgrade", + Description: "versions contains the original and target versions of the upgrade", Default: map[string]interface{}{}, Ref: ref("github.com/openshift/api/update/v1alpha1.ControlPlaneUpdateVersions"), }, }, "completion": { SchemaProps: spec.SchemaProps{ - Description: "Completion is a percentage of the update completion (0-100)", + Description: "completion is a percentage of the update completion (0-100)", Default: 0, Type: []string{"integer"}, Format: "byte", @@ -63023,21 +63027,21 @@ func schema_openshift_api_update_v1alpha1_ClusterVersionStatusInsight(ref common }, "startedAt": { SchemaProps: spec.SchemaProps{ - Description: "StartedAt is the time when the update started", + Description: "startedAt is the time when the update started", Default: map[string]interface{}{}, Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), }, }, "completedAt": { SchemaProps: spec.SchemaProps{ - Description: "CompletedAt is the time when the update completed", + Description: "completedAt is the time when the update completed", Default: map[string]interface{}{}, Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), }, }, "estimatedCompletedAt": { SchemaProps: spec.SchemaProps{ - Description: "EstimatedCompletedAt is the estimated time when the update will complete", + Description: "estimatedCompletedAt is the estimated time when the update will complete", Default: map[string]interface{}{}, Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), }, @@ -63065,7 +63069,7 @@ func schema_openshift_api_update_v1alpha1_ClusterVersionStatusInsight(ref common }, }, }, - Required: []string{"resource", "assessment", "versions", "completion", "startedAt", "completedAt", "estimatedCompletedAt"}, + Required: []string{"resource", "assessment", "versions", "completion", "startedAt"}, }, }, Dependencies: []string{ @@ -63082,7 +63086,14 @@ func schema_openshift_api_update_v1alpha1_ControlPlaneUpdateStatus(ref common.Re Properties: map[string]spec.Schema{ "resource": { SchemaProps: spec.SchemaProps{ - Description: "Resource is the resource that represents the control plane. It will typically be a ClusterVersion resource in standalone OpenShift and HostedCluster in HCP.", + Description: "resource is the resource that represents the control plane. It will typically be a ClusterVersion resource in standalone OpenShift and HostedCluster in HCP.", + Default: map[string]interface{}{}, + Ref: ref("github.com/openshift/api/update/v1alpha1.ResourceRef"), + }, + }, + "poolResource": { + SchemaProps: spec.SchemaProps{ + Description: "poolResource is the resource that represents control plane node pool, typically a MachineConfigPool. This field is optional because some form factors (like HCP) do not have dedicated control plane node pools.", Default: map[string]interface{}{}, Ref: ref("github.com/openshift/api/update/v1alpha1.PoolResourceRef"), }, @@ -63097,7 +63108,7 @@ func schema_openshift_api_update_v1alpha1_ControlPlaneUpdateStatus(ref common.Re }, }, SchemaProps: spec.SchemaProps{ - Description: "Informers is a list of insight producers, each carries a list of insights", + Description: "informers is a list of insight producers, each carries a list of insights relevant for control plane", Type: []string{"array"}, Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ @@ -63119,7 +63130,7 @@ func schema_openshift_api_update_v1alpha1_ControlPlaneUpdateStatus(ref common.Re }, }, SchemaProps: spec.SchemaProps{ - Description: "Conditions provides details about the control plane update", + Description: "conditions provides details about the control plane update", Type: []string{"array"}, Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ @@ -63136,7 +63147,7 @@ func schema_openshift_api_update_v1alpha1_ControlPlaneUpdateStatus(ref common.Re }, }, Dependencies: []string{ - "github.com/openshift/api/update/v1alpha1.PoolResourceRef", "github.com/openshift/api/update/v1alpha1.UpdateInformer", "k8s.io/apimachinery/pkg/apis/meta/v1.Condition"}, + "github.com/openshift/api/update/v1alpha1.PoolResourceRef", "github.com/openshift/api/update/v1alpha1.ResourceRef", "github.com/openshift/api/update/v1alpha1.UpdateInformer", "k8s.io/apimachinery/pkg/apis/meta/v1.Condition"}, } } @@ -63149,16 +63160,16 @@ func schema_openshift_api_update_v1alpha1_ControlPlaneUpdateVersions(ref common. Properties: map[string]spec.Schema{ "previous": { SchemaProps: spec.SchemaProps{ - Description: "Previous is the version of the control plane before the update", + Description: "previous is the version of the control plane before the update", Default: map[string]interface{}{}, - Ref: ref("github.com/openshift/api/update/v1alpha1.UpdateEdgeVersion"), + Ref: ref("github.com/openshift/api/update/v1alpha1.Version"), }, }, "target": { SchemaProps: spec.SchemaProps{ - Description: "Target is the version of the control plane after the update", + Description: "target is the version of the control plane after the update", Default: map[string]interface{}{}, - Ref: ref("github.com/openshift/api/update/v1alpha1.UpdateEdgeVersion"), + Ref: ref("github.com/openshift/api/update/v1alpha1.Version"), }, }, }, @@ -63166,7 +63177,7 @@ func schema_openshift_api_update_v1alpha1_ControlPlaneUpdateVersions(ref common. }, }, Dependencies: []string{ - "github.com/openshift/api/update/v1alpha1.UpdateEdgeVersion"}, + "github.com/openshift/api/update/v1alpha1.Version"}, } } @@ -63174,11 +63185,12 @@ func schema_openshift_api_update_v1alpha1_MachineConfigPoolStatusInsight(ref com return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Type: []string{"object"}, + Description: "ClusterVersionStatusInsight reports the state of a MachineConfigPool resource during the update", + Type: []string{"object"}, Properties: map[string]spec.Schema{ "name": { SchemaProps: spec.SchemaProps{ - Description: "Name is the name of the machine config pool", + Description: "name is the name of the machine config pool", Default: "", Type: []string{"string"}, Format: "", @@ -63186,14 +63198,14 @@ func schema_openshift_api_update_v1alpha1_MachineConfigPoolStatusInsight(ref com }, "resource": { SchemaProps: spec.SchemaProps{ - Description: "Resource is the MachineConfigPool resource that represents the pool", + Description: "resource is the MachineConfigPool resource that represents the pool", Default: map[string]interface{}{}, - Ref: ref("github.com/openshift/api/update/v1alpha1.ResourceRef"), + Ref: ref("github.com/openshift/api/update/v1alpha1.PoolResourceRef"), }, }, "scopeType": { SchemaProps: spec.SchemaProps{ - Description: "Scope describes whether the pool is a control plane or a worker pool", + Description: "scopeType describes whether the pool is a control plane or a worker pool", Default: "", Type: []string{"string"}, Format: "", @@ -63201,7 +63213,7 @@ func schema_openshift_api_update_v1alpha1_MachineConfigPoolStatusInsight(ref com }, "assessment": { SchemaProps: spec.SchemaProps{ - Description: "Assessment is the assessment of the machine config pool update process", + Description: "assessment is the assessment of the machine config pool update process", Default: "", Type: []string{"string"}, Format: "", @@ -63209,10 +63221,10 @@ func schema_openshift_api_update_v1alpha1_MachineConfigPoolStatusInsight(ref com }, "completion": { SchemaProps: spec.SchemaProps{ - Description: "Completion is a percentage of the update completion (0-100)", + Description: "completion is a percentage of the update completion (0-100)", Default: 0, Type: []string{"integer"}, - Format: "int32", + Format: "byte", }, }, "summaries": { @@ -63225,13 +63237,13 @@ func schema_openshift_api_update_v1alpha1_MachineConfigPoolStatusInsight(ref com }, }, SchemaProps: spec.SchemaProps{ - Description: "Summaries is a list of counts of nodes matching certain criteria (e.g. updated, degraded, etc.)", + Description: "summaries is a list of counts of nodes matching certain criteria (e.g. updated, degraded, etc.)", Type: []string{"array"}, Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/openshift/api/update/v1alpha1.PoolNodesUpdateSummary"), + Ref: ref("github.com/openshift/api/update/v1alpha1.NodeSummary"), }, }, }, @@ -63247,7 +63259,7 @@ func schema_openshift_api_update_v1alpha1_MachineConfigPoolStatusInsight(ref com }, }, SchemaProps: spec.SchemaProps{ - Description: "Conditions provide details about the machine config pool", + Description: "conditions provide details about the machine config pool update", Type: []string{"array"}, Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ @@ -63264,7 +63276,7 @@ func schema_openshift_api_update_v1alpha1_MachineConfigPoolStatusInsight(ref com }, }, Dependencies: []string{ - "github.com/openshift/api/update/v1alpha1.PoolNodesUpdateSummary", "github.com/openshift/api/update/v1alpha1.ResourceRef", "k8s.io/apimachinery/pkg/apis/meta/v1.Condition"}, + "github.com/openshift/api/update/v1alpha1.NodeSummary", "github.com/openshift/api/update/v1alpha1.PoolResourceRef", "k8s.io/apimachinery/pkg/apis/meta/v1.Condition"}, } } @@ -63272,11 +63284,12 @@ func schema_openshift_api_update_v1alpha1_NodeStatusInsight(ref common.Reference return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Type: []string{"object"}, + Description: "NodeStatusInsight reports the state of a Node during the update", + Type: []string{"object"}, Properties: map[string]spec.Schema{ "name": { SchemaProps: spec.SchemaProps{ - Description: "Name is the name of the node", + Description: "name is the name of the node", Default: "", Type: []string{"string"}, Format: "", @@ -63284,34 +63297,34 @@ func schema_openshift_api_update_v1alpha1_NodeStatusInsight(ref common.Reference }, "resource": { SchemaProps: spec.SchemaProps{ - Description: "Resource is the Node resource that represents the node", + Description: "resource is the Node resource that represents the node", Default: map[string]interface{}{}, Ref: ref("github.com/openshift/api/update/v1alpha1.ResourceRef"), }, }, "poolResource": { SchemaProps: spec.SchemaProps{ - Description: "PoolResource is the resource that represents the pool the node is a member of", + Description: "poolResource is the resource that represents the pool the node is a member of", Default: map[string]interface{}{}, Ref: ref("github.com/openshift/api/update/v1alpha1.PoolResourceRef"), }, }, "version": { SchemaProps: spec.SchemaProps{ - Description: "Version is the version of the node, when known", + Description: "version is the version of the node, when known", Type: []string{"string"}, Format: "", }, }, "estToComplete": { SchemaProps: spec.SchemaProps{ - Description: "EstToComplete is the estimated time to complete the update, when known", + Description: "estToComplete is the estimated time to complete the update, when known", Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), }, }, "message": { SchemaProps: spec.SchemaProps{ - Description: "Message is a human-readable message about the node update status", + Description: "message is a short human-readable message about the node update status", Type: []string{"string"}, Format: "", }, @@ -63326,7 +63339,7 @@ func schema_openshift_api_update_v1alpha1_NodeStatusInsight(ref common.Reference }, }, SchemaProps: spec.SchemaProps{ - Description: "Conditions provides details about the control plane update", + Description: "conditions provides details about the control plane update", Type: []string{"array"}, Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ @@ -63347,15 +63360,16 @@ func schema_openshift_api_update_v1alpha1_NodeStatusInsight(ref common.Reference } } -func schema_openshift_api_update_v1alpha1_PoolNodesUpdateSummary(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_openshift_api_update_v1alpha1_NodeSummary(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Type: []string{"object"}, + Description: "NodeSummary is a count of nodes matching certain criteria (e.g. updated, degraded, etc.)", + Type: []string{"object"}, Properties: map[string]spec.Schema{ "type": { SchemaProps: spec.SchemaProps{ - Description: "Type is the type of the summary", + Description: "type is the type of the summary", Default: "", Type: []string{"string"}, Format: "", @@ -63363,10 +63377,10 @@ func schema_openshift_api_update_v1alpha1_PoolNodesUpdateSummary(ref common.Refe }, "count": { SchemaProps: spec.SchemaProps{ - Description: "Count is the number of nodes matching the criteria", + Description: "count is the number of nodes matching the criteria", Default: 0, Type: []string{"integer"}, - Format: "int32", + Format: "byte", }, }, }, @@ -63380,12 +63394,12 @@ func schema_openshift_api_update_v1alpha1_PoolResourceRef(ref common.ReferenceCa return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Description: "PoolResourceRef is a reference to a kubernetes resource that represents a worker pool", + Description: "PoolResourceRef is a reference to a kubernetes resource that represents a node pool", Type: []string{"object"}, Properties: map[string]spec.Schema{ "kind": { SchemaProps: spec.SchemaProps{ - Description: "Kind of object being referenced", + Description: "kind of object being referenced", Default: "", Type: []string{"string"}, Format: "", @@ -63393,7 +63407,7 @@ func schema_openshift_api_update_v1alpha1_PoolResourceRef(ref common.ReferenceCa }, "apiGroup": { SchemaProps: spec.SchemaProps{ - Description: "APIGroup of the object being referenced", + Description: "APIGroup of the object being referenced, if any", Type: []string{"string"}, Format: "", }, @@ -63429,7 +63443,7 @@ func schema_openshift_api_update_v1alpha1_PoolUpdateStatus(ref common.ReferenceC Properties: map[string]spec.Schema{ "name": { SchemaProps: spec.SchemaProps{ - Description: "Name is the name of the pool", + Description: "name is the name of the pool", Default: "", Type: []string{"string"}, Format: "", @@ -63437,7 +63451,7 @@ func schema_openshift_api_update_v1alpha1_PoolUpdateStatus(ref common.ReferenceC }, "resource": { SchemaProps: spec.SchemaProps{ - Description: "Resource is the resource that represents the pool", + Description: "resource is the resource that represents the pool", Default: map[string]interface{}{}, Ref: ref("github.com/openshift/api/update/v1alpha1.PoolResourceRef"), }, @@ -63452,7 +63466,7 @@ func schema_openshift_api_update_v1alpha1_PoolUpdateStatus(ref common.ReferenceC }, }, SchemaProps: spec.SchemaProps{ - Description: "Informers is a list of insight producers, each carries a list of insights", + Description: "informers is a list of insight producers, each carries a list of insights", Type: []string{"array"}, Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ @@ -63474,7 +63488,7 @@ func schema_openshift_api_update_v1alpha1_PoolUpdateStatus(ref common.ReferenceC }, }, SchemaProps: spec.SchemaProps{ - Description: "Conditions provide details about the pool", + Description: "conditions provide details about the pool", Type: []string{"array"}, Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ @@ -63504,7 +63518,7 @@ func schema_openshift_api_update_v1alpha1_ResourceRef(ref common.ReferenceCallba Properties: map[string]spec.Schema{ "kind": { SchemaProps: spec.SchemaProps{ - Description: "Kind of object being referenced", + Description: "kind of object being referenced", Default: "", Type: []string{"string"}, Format: "", @@ -63512,7 +63526,7 @@ func schema_openshift_api_update_v1alpha1_ResourceRef(ref common.ReferenceCallba }, "apiGroup": { SchemaProps: spec.SchemaProps{ - Description: "APIGroup of the object being referenced", + Description: "APIGroup of the object being referenced, if any", Type: []string{"string"}, Format: "", }, @@ -63539,49 +63553,6 @@ func schema_openshift_api_update_v1alpha1_ResourceRef(ref common.ReferenceCallba } } -func schema_openshift_api_update_v1alpha1_UpdateEdgeVersion(ref common.ReferenceCallback) common.OpenAPIDefinition { - return common.OpenAPIDefinition{ - Schema: spec.Schema{ - SchemaProps: spec.SchemaProps{ - Type: []string{"object"}, - Properties: map[string]spec.Schema{ - "version": { - SchemaProps: spec.SchemaProps{ - Description: "Version is the version of the edge", - Type: []string{"string"}, - Format: "", - }, - }, - "metadata": { - VendorExtensible: spec.VendorExtensible{ - Extensions: spec.Extensions{ - "x-kubernetes-list-map-keys": []interface{}{ - "key", - }, - "x-kubernetes-list-type": "map", - }, - }, - SchemaProps: spec.SchemaProps{ - Description: "Metadata is a list of metadata associated with the version", - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/openshift/api/update/v1alpha1.VersionMetadata"), - }, - }, - }, - }, - }, - }, - }, - }, - Dependencies: []string{ - "github.com/openshift/api/update/v1alpha1.VersionMetadata"}, - } -} - func schema_openshift_api_update_v1alpha1_UpdateHealthInsight(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ @@ -63591,34 +63562,34 @@ func schema_openshift_api_update_v1alpha1_UpdateHealthInsight(ref common.Referen Properties: map[string]spec.Schema{ "startedAt": { SchemaProps: spec.SchemaProps{ - Description: "StartedAt is the time when the condition reported by the insight started", + Description: "startedAt is the time when the condition reported by the insight started", Default: map[string]interface{}{}, Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), }, }, "scope": { SchemaProps: spec.SchemaProps{ - Description: "Scope is list of objects involved in the insight", + Description: "scope is list of objects involved in the insight", Default: map[string]interface{}{}, Ref: ref("github.com/openshift/api/update/v1alpha1.UpdateInsightScope"), }, }, "impact": { SchemaProps: spec.SchemaProps{ - Description: "Impact describes the impact the reported condition has on the cluster or update", + Description: "impact describes the impact the reported condition has on the cluster or update", Default: map[string]interface{}{}, Ref: ref("github.com/openshift/api/update/v1alpha1.UpdateInsightImpact"), }, }, "remediation": { SchemaProps: spec.SchemaProps{ - Description: "Remediation contains ... TODO", + Description: "remediation contains information about how to resolve or prevent the reported condition", Default: map[string]interface{}{}, Ref: ref("github.com/openshift/api/update/v1alpha1.UpdateInsightRemediation"), }, }, }, - Required: []string{"startedAt", "impact", "remediation"}, + Required: []string{"startedAt", "scope", "impact", "remediation"}, }, }, Dependencies: []string{ @@ -63670,60 +63641,61 @@ func schema_openshift_api_update_v1alpha1_UpdateInsight(ref common.ReferenceCall SchemaProps: spec.SchemaProps{ Type: []string{"object"}, Properties: map[string]spec.Schema{ - "type": { - SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", - }, - }, "uid": { SchemaProps: spec.SchemaProps{ - Description: "UID identifies an insight over time", + Description: "uid identifies the insight over time", Default: "", Type: []string{"string"}, Format: "", }, }, - "acquisitionTime": { + "acquiredAt": { SchemaProps: spec.SchemaProps{ - Description: "AcquiredAt is the time when the data was acquired by the producer", + Description: "acquiredAt is the time when the data was acquired by the producer", Default: map[string]interface{}{}, Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), }, }, + "type": { + SchemaProps: spec.SchemaProps{ + Description: "type identifies the type of the update insight", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, "clusterVersion": { SchemaProps: spec.SchemaProps{ - Description: "ClusterVersionStatusInsight is a status insight about the state of a control plane update, where the control plane is represented by a ClusterVersion resource usually managed by CVO", + Description: "clusterVersion is a status insight about the state of a control plane update, where the control plane is represented by a ClusterVersion resource usually managed by CVO", Ref: ref("github.com/openshift/api/update/v1alpha1.ClusterVersionStatusInsight"), }, }, "clusterOperator": { SchemaProps: spec.SchemaProps{ - Description: "ClusterOperatorStatusInsight is a status insight about the state of a control plane cluster operator update represented by a ClusterOperator resource", + Description: "clusterOperator is a status insight about the state of a control plane cluster operator update represented by a ClusterOperator resource", Ref: ref("github.com/openshift/api/update/v1alpha1.ClusterOperatorStatusInsight"), }, }, "machineConfigPool": { SchemaProps: spec.SchemaProps{ - Description: "MachineConfigPoolStatusInsight is a status insight about the state of a worker pool update, where the worker pool is represented by a MachineConfigPool resource", + Description: "machineConfigPool is a status insight about the state of a worker pool update, where the worker pool is represented by a MachineConfigPool resource", Ref: ref("github.com/openshift/api/update/v1alpha1.MachineConfigPoolStatusInsight"), }, }, "node": { SchemaProps: spec.SchemaProps{ - Description: "NodeStatusInsight is a status insight about the state of a worker node update, where the worker node is represented by a Node resource", + Description: "node is a status insight about the state of a worker node update, where the worker node is represented by a Node resource", Ref: ref("github.com/openshift/api/update/v1alpha1.NodeStatusInsight"), }, }, "health": { SchemaProps: spec.SchemaProps{ - Description: "UpdateHealthInsight is a generic health insight about the update. It does not represent a status of any specific resource but surfaces actionable information about the health of the cluster or an update", + Description: "health is a generic health insight about the update. It does not represent a status of any specific resource but surfaces actionable information about the health of the cluster or an update", Ref: ref("github.com/openshift/api/update/v1alpha1.UpdateHealthInsight"), }, }, }, - Required: []string{"type", "uid", "acquisitionTime"}, + Required: []string{"uid", "acquiredAt", "type"}, }, }, Dependencies: []string{ @@ -63740,7 +63712,7 @@ func schema_openshift_api_update_v1alpha1_UpdateInsightImpact(ref common.Referen Properties: map[string]spec.Schema{ "level": { SchemaProps: spec.SchemaProps{ - Description: "Level is the severity of the impact", + Description: "level is the severity of the impact", Default: "", Type: []string{"string"}, Format: "", @@ -63748,7 +63720,7 @@ func schema_openshift_api_update_v1alpha1_UpdateInsightImpact(ref common.Referen }, "type": { SchemaProps: spec.SchemaProps{ - Description: "Type is the type of the impact", + Description: "type is the type of the impact", Default: "", Type: []string{"string"}, Format: "", @@ -63756,7 +63728,7 @@ func schema_openshift_api_update_v1alpha1_UpdateInsightImpact(ref common.Referen }, "summary": { SchemaProps: spec.SchemaProps{ - Description: "Summary is a short summary of the impact", + Description: "summary is a short summary of the impact", Default: "", Type: []string{"string"}, Format: "", @@ -63764,14 +63736,14 @@ func schema_openshift_api_update_v1alpha1_UpdateInsightImpact(ref common.Referen }, "description": { SchemaProps: spec.SchemaProps{ - Description: "Description is a human-oriented description of the condition reported by the insight", + Description: "description is a human-oriented, possibly longer-form description of the condition reported by the insight", Default: "", Type: []string{"string"}, Format: "", }, }, }, - Required: []string{"level", "type", "summary", "description"}, + Required: []string{"level", "type", "summary"}, }, }, } @@ -63781,12 +63753,12 @@ func schema_openshift_api_update_v1alpha1_UpdateInsightRemediation(ref common.Re return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Description: "UpdateInsightRemediation contains ... TODO", + Description: "UpdateInsightRemediation contains information about how to resolve or prevent the reported condition", Type: []string{"object"}, Properties: map[string]spec.Schema{ "reference": { SchemaProps: spec.SchemaProps{ - Description: "Reference is a URL where administrators can find information to resolve or prevent the reported condition", + Description: "reference is a URL where administrators can find information to resolve or prevent the reported condition", Default: "", Type: []string{"string"}, Format: "", @@ -63794,13 +63766,13 @@ func schema_openshift_api_update_v1alpha1_UpdateInsightRemediation(ref common.Re }, "estimatedFinish": { SchemaProps: spec.SchemaProps{ - Description: "EstimatedFinish is the estimated time when the informer expects the condition to be resolved, if applicable. This should normally only be provided by system level insights (impact level=status)", + Description: "estimatedFinish is the estimated time when the informer expects the condition to be resolved, if applicable.", Default: map[string]interface{}{}, Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), }, }, }, - Required: []string{"reference", "estimatedFinish"}, + Required: []string{"reference"}, }, }, Dependencies: []string{ @@ -63812,12 +63784,12 @@ func schema_openshift_api_update_v1alpha1_UpdateInsightScope(ref common.Referenc return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Description: "UpdateInsightScope is a list of objects involved in the insight", + Description: "UpdateInsightScope is a list of resources involved in the insight", Type: []string{"object"}, Properties: map[string]spec.Schema{ "type": { SchemaProps: spec.SchemaProps{ - Description: "Type is either ControlPlane or WorkerPool", + Description: "type is either ControlPlane or WorkerPool", Default: "", Type: []string{"string"}, Format: "", @@ -63825,7 +63797,7 @@ func schema_openshift_api_update_v1alpha1_UpdateInsightScope(ref common.Referenc }, "resources": { SchemaProps: spec.SchemaProps{ - Description: "Resources is a list of resources involved in the insight", + Description: "resources is a list of resources involved in the insight", Type: []string{"array"}, Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ @@ -63846,11 +63818,64 @@ func schema_openshift_api_update_v1alpha1_UpdateInsightScope(ref common.Referenc } } +func schema_openshift_api_update_v1alpha1_UpdateInsightUnion(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "type": { + SchemaProps: spec.SchemaProps{ + Description: "type identifies the type of the update insight", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "clusterVersion": { + SchemaProps: spec.SchemaProps{ + Description: "clusterVersion is a status insight about the state of a control plane update, where the control plane is represented by a ClusterVersion resource usually managed by CVO", + Ref: ref("github.com/openshift/api/update/v1alpha1.ClusterVersionStatusInsight"), + }, + }, + "clusterOperator": { + SchemaProps: spec.SchemaProps{ + Description: "clusterOperator is a status insight about the state of a control plane cluster operator update represented by a ClusterOperator resource", + Ref: ref("github.com/openshift/api/update/v1alpha1.ClusterOperatorStatusInsight"), + }, + }, + "machineConfigPool": { + SchemaProps: spec.SchemaProps{ + Description: "machineConfigPool is a status insight about the state of a worker pool update, where the worker pool is represented by a MachineConfigPool resource", + Ref: ref("github.com/openshift/api/update/v1alpha1.MachineConfigPoolStatusInsight"), + }, + }, + "node": { + SchemaProps: spec.SchemaProps{ + Description: "node is a status insight about the state of a worker node update, where the worker node is represented by a Node resource", + Ref: ref("github.com/openshift/api/update/v1alpha1.NodeStatusInsight"), + }, + }, + "health": { + SchemaProps: spec.SchemaProps{ + Description: "health is a generic health insight about the update. It does not represent a status of any specific resource but surfaces actionable information about the health of the cluster or an update", + Ref: ref("github.com/openshift/api/update/v1alpha1.UpdateHealthInsight"), + }, + }, + }, + Required: []string{"type"}, + }, + }, + Dependencies: []string{ + "github.com/openshift/api/update/v1alpha1.ClusterOperatorStatusInsight", "github.com/openshift/api/update/v1alpha1.ClusterVersionStatusInsight", "github.com/openshift/api/update/v1alpha1.MachineConfigPoolStatusInsight", "github.com/openshift/api/update/v1alpha1.NodeStatusInsight", "github.com/openshift/api/update/v1alpha1.UpdateHealthInsight"}, + } +} + func schema_openshift_api_update_v1alpha1_UpdateStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Description: "UpdateStatus is the API about in-progress updates, kept populated by Update Status Controller by aggregating and summarizing UpdateInformers\n\nCompatibility level 4: No compatibility is provided, the API can change at any point for any reason. These capabilities should not be used by applications needing long term support.", + Description: "UpdateStatus is the API about in-progress updates, kept populated by Update Status Controller by aggregating and summarizing UpdateInsights produced by update informers\n\nCompatibility level 4: No compatibility is provided, the API can change at any point for any reason. These capabilities should not be used by applications needing long term support.", Type: []string{"object"}, Properties: map[string]spec.Schema{ "kind": { @@ -63958,19 +63983,19 @@ func schema_openshift_api_update_v1alpha1_UpdateStatusStatus(ref common.Referenc return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Description: "UpdateStatusStatus is the API about in-progress updates, kept populated by Update Status Controller by aggregating and summarizing UpdateInformers", + Description: "UpdateStatusStatus is the API about in-progress updates, kept populated by Update Status Controller by aggregating and summarizing UpdateInsights produced by update informers", Type: []string{"object"}, Properties: map[string]spec.Schema{ "controlPlane": { SchemaProps: spec.SchemaProps{ - Description: "ControlPlaneUpdateStatus contains a summary and insights related to the control plane update", + Description: "controlPlane contains a summary and insights related to the control plane update", Default: map[string]interface{}{}, Ref: ref("github.com/openshift/api/update/v1alpha1.ControlPlaneUpdateStatus"), }, }, "workerPools": { SchemaProps: spec.SchemaProps{ - Description: "WorkerPoolsUpdateStatus contains summaries and insights related to the worker pools update", + Description: "workerPools contains summaries and insights related to the worker pools update", Type: []string{"array"}, Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ @@ -63992,7 +64017,7 @@ func schema_openshift_api_update_v1alpha1_UpdateStatusStatus(ref common.Referenc }, }, SchemaProps: spec.SchemaProps{ - Description: "Conditions provide details about Update Status Controller operational matters", + Description: "conditions provide details about Update Status Controller operational matters", Type: []string{"array"}, Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ @@ -64013,6 +64038,50 @@ func schema_openshift_api_update_v1alpha1_UpdateStatusStatus(ref common.Referenc } } +func schema_openshift_api_update_v1alpha1_Version(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "Version describes a version involved in an update, typically on one side of an update edge", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "version": { + SchemaProps: spec.SchemaProps{ + Description: "version is a semantic version string", + Type: []string{"string"}, + Format: "", + }, + }, + "metadata": { + VendorExtensible: spec.VendorExtensible{ + Extensions: spec.Extensions{ + "x-kubernetes-list-map-keys": []interface{}{ + "key", + }, + "x-kubernetes-list-type": "map", + }, + }, + SchemaProps: spec.SchemaProps{ + Description: "metadata is a list of metadata associated with the version", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("github.com/openshift/api/update/v1alpha1.VersionMetadata"), + }, + }, + }, + }, + }, + }, + }, + }, + Dependencies: []string{ + "github.com/openshift/api/update/v1alpha1.VersionMetadata"}, + } +} + func schema_openshift_api_update_v1alpha1_VersionMetadata(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ @@ -64045,6 +64114,12 @@ func schema_openshift_api_update_v1alpha1_VersionMetadata(ref common.ReferenceCa Format: "", }, }, + "integer": { + SchemaProps: spec.SchemaProps{ + Type: []string{"integer"}, + Format: "int32", + }, + }, }, Required: []string{"key", "type"}, }, @@ -64052,6 +64127,44 @@ func schema_openshift_api_update_v1alpha1_VersionMetadata(ref common.ReferenceCa } } +func schema_openshift_api_update_v1alpha1_VersionMetadataValue(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "type": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "string": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "bool": { + SchemaProps: spec.SchemaProps{ + Type: []string{"boolean"}, + Format: "", + }, + }, + "integer": { + SchemaProps: spec.SchemaProps{ + Type: []string{"integer"}, + Format: "int32", + }, + }, + }, + Required: []string{"type"}, + }, + }, + } +} + func schema_openshift_api_user_v1_Group(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ diff --git a/openapi/openapi.json b/openapi/openapi.json index da1ebf3bc17..0f813be1515 100644 --- a/openapi/openapi.json +++ b/openapi/openapi.json @@ -36868,6 +36868,7 @@ } }, "com.github.openshift.api.update.v1alpha1.ClusterOperatorStatusInsight": { + "description": "ClusterOperatorStatusInsight reports the state of a ClusterOperator resource (which represents a control plane component update in standalone clusters), during the update", "type": "object", "required": [ "name", @@ -36875,7 +36876,7 @@ ], "properties": { "conditions": { - "description": "Conditions provide details about the operator", + "description": "conditions provide details about the operator", "type": "array", "items": { "default": {}, @@ -36887,41 +36888,40 @@ "x-kubernetes-list-type": "map" }, "name": { - "description": "Name is the name of the operator", + "description": "name is the name of the operator", "type": "string", "default": "" }, "resource": { - "description": "Resource is the ClusterOperator resource that represents the operator", + "description": "resource is the ClusterOperator resource that represents the operator", "default": {}, "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.ResourceRef" } } }, "com.github.openshift.api.update.v1alpha1.ClusterVersionStatusInsight": { + "description": "ClusterVersionStatusInsight reports the state of a ClusterVersion resource (which represents a control plane update in standalone clusters), during the update.", "type": "object", "required": [ "resource", "assessment", "versions", "completion", - "startedAt", - "completedAt", - "estimatedCompletedAt" + "startedAt" ], "properties": { "assessment": { - "description": "Assessment is the assessment of the control plane update process", + "description": "assessment is the assessment of the control plane update process", "type": "string", "default": "" }, "completedAt": { - "description": "CompletedAt is the time when the update completed", + "description": "completedAt is the time when the update completed", "default": {}, "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.Time" }, "completion": { - "description": "Completion is a percentage of the update completion (0-100)", + "description": "completion is a percentage of the update completion (0-100)", "type": "integer", "format": "byte", "default": 0 @@ -36939,22 +36939,22 @@ "x-kubernetes-list-type": "map" }, "estimatedCompletedAt": { - "description": "EstimatedCompletedAt is the estimated time when the update will complete", + "description": "estimatedCompletedAt is the estimated time when the update will complete", "default": {}, "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.Time" }, "resource": { - "description": "Resource is the ClusterVersion resource that represents the control plane", + "description": "resource is the ClusterVersion resource that represents the control plane", "default": {}, "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.ResourceRef" }, "startedAt": { - "description": "StartedAt is the time when the update started", + "description": "startedAt is the time when the update started", "default": {}, "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.Time" }, "versions": { - "description": "Versions contains the original and target versions of the upgrade", + "description": "versions contains the original and target versions of the upgrade", "default": {}, "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.ControlPlaneUpdateVersions" } @@ -36968,7 +36968,7 @@ ], "properties": { "conditions": { - "description": "Conditions provides details about the control plane update", + "description": "conditions provides details about the control plane update", "type": "array", "items": { "default": {}, @@ -36980,7 +36980,7 @@ "x-kubernetes-list-type": "map" }, "informers": { - "description": "Informers is a list of insight producers, each carries a list of insights", + "description": "informers is a list of insight producers, each carries a list of insights relevant for control plane", "type": "array", "items": { "default": {}, @@ -36991,10 +36991,15 @@ ], "x-kubernetes-list-type": "map" }, - "resource": { - "description": "Resource is the resource that represents the control plane. It will typically be a ClusterVersion resource in standalone OpenShift and HostedCluster in HCP.", + "poolResource": { + "description": "poolResource is the resource that represents control plane node pool, typically a MachineConfigPool. This field is optional because some form factors (like HCP) do not have dedicated control plane node pools.", "default": {}, "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.PoolResourceRef" + }, + "resource": { + "description": "resource is the resource that represents the control plane. It will typically be a ClusterVersion resource in standalone OpenShift and HostedCluster in HCP.", + "default": {}, + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.ResourceRef" } } }, @@ -37006,18 +37011,19 @@ ], "properties": { "previous": { - "description": "Previous is the version of the control plane before the update", + "description": "previous is the version of the control plane before the update", "default": {}, - "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.UpdateEdgeVersion" + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.Version" }, "target": { - "description": "Target is the version of the control plane after the update", + "description": "target is the version of the control plane after the update", "default": {}, - "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.UpdateEdgeVersion" + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.Version" } } }, "com.github.openshift.api.update.v1alpha1.MachineConfigPoolStatusInsight": { + "description": "ClusterVersionStatusInsight reports the state of a MachineConfigPool resource during the update", "type": "object", "required": [ "name", @@ -37028,18 +37034,18 @@ ], "properties": { "assessment": { - "description": "Assessment is the assessment of the machine config pool update process", + "description": "assessment is the assessment of the machine config pool update process", "type": "string", "default": "" }, "completion": { - "description": "Completion is a percentage of the update completion (0-100)", + "description": "completion is a percentage of the update completion (0-100)", "type": "integer", - "format": "int32", + "format": "byte", "default": 0 }, "conditions": { - "description": "Conditions provide details about the machine config pool", + "description": "conditions provide details about the machine config pool update", "type": "array", "items": { "default": {}, @@ -37051,26 +37057,26 @@ "x-kubernetes-list-type": "map" }, "name": { - "description": "Name is the name of the machine config pool", + "description": "name is the name of the machine config pool", "type": "string", "default": "" }, "resource": { - "description": "Resource is the MachineConfigPool resource that represents the pool", + "description": "resource is the MachineConfigPool resource that represents the pool", "default": {}, - "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.ResourceRef" + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.PoolResourceRef" }, "scopeType": { - "description": "Scope describes whether the pool is a control plane or a worker pool", + "description": "scopeType describes whether the pool is a control plane or a worker pool", "type": "string", "default": "" }, "summaries": { - "description": "Summaries is a list of counts of nodes matching certain criteria (e.g. updated, degraded, etc.)", + "description": "summaries is a list of counts of nodes matching certain criteria (e.g. updated, degraded, etc.)", "type": "array", "items": { "default": {}, - "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.PoolNodesUpdateSummary" + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.NodeSummary" }, "x-kubernetes-list-map-keys": [ "type" @@ -37080,6 +37086,7 @@ } }, "com.github.openshift.api.update.v1alpha1.NodeStatusInsight": { + "description": "NodeStatusInsight reports the state of a Node during the update", "type": "object", "required": [ "name", @@ -37088,7 +37095,7 @@ ], "properties": { "conditions": { - "description": "Conditions provides details about the control plane update", + "description": "conditions provides details about the control plane update", "type": "array", "items": { "default": {}, @@ -37100,35 +37107,36 @@ "x-kubernetes-list-type": "map" }, "estToComplete": { - "description": "EstToComplete is the estimated time to complete the update, when known", + "description": "estToComplete is the estimated time to complete the update, when known", "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.Duration" }, "message": { - "description": "Message is a human-readable message about the node update status", + "description": "message is a short human-readable message about the node update status", "type": "string" }, "name": { - "description": "Name is the name of the node", + "description": "name is the name of the node", "type": "string", "default": "" }, "poolResource": { - "description": "PoolResource is the resource that represents the pool the node is a member of", + "description": "poolResource is the resource that represents the pool the node is a member of", "default": {}, "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.PoolResourceRef" }, "resource": { - "description": "Resource is the Node resource that represents the node", + "description": "resource is the Node resource that represents the node", "default": {}, "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.ResourceRef" }, "version": { - "description": "Version is the version of the node, when known", + "description": "version is the version of the node, when known", "type": "string" } } }, - "com.github.openshift.api.update.v1alpha1.PoolNodesUpdateSummary": { + "com.github.openshift.api.update.v1alpha1.NodeSummary": { + "description": "NodeSummary is a count of nodes matching certain criteria (e.g. updated, degraded, etc.)", "type": "object", "required": [ "type", @@ -37136,20 +37144,20 @@ ], "properties": { "count": { - "description": "Count is the number of nodes matching the criteria", + "description": "count is the number of nodes matching the criteria", "type": "integer", - "format": "int32", + "format": "byte", "default": 0 }, "type": { - "description": "Type is the type of the summary", + "description": "type is the type of the summary", "type": "string", "default": "" } } }, "com.github.openshift.api.update.v1alpha1.PoolResourceRef": { - "description": "PoolResourceRef is a reference to a kubernetes resource that represents a worker pool", + "description": "PoolResourceRef is a reference to a kubernetes resource that represents a node pool", "type": "object", "required": [ "kind", @@ -37157,11 +37165,11 @@ ], "properties": { "apiGroup": { - "description": "APIGroup of the object being referenced", + "description": "APIGroup of the object being referenced, if any", "type": "string" }, "kind": { - "description": "Kind of object being referenced", + "description": "kind of object being referenced", "type": "string", "default": "" }, @@ -37185,7 +37193,7 @@ ], "properties": { "conditions": { - "description": "Conditions provide details about the pool", + "description": "conditions provide details about the pool", "type": "array", "items": { "default": {}, @@ -37197,7 +37205,7 @@ "x-kubernetes-list-type": "map" }, "informers": { - "description": "Informers is a list of insight producers, each carries a list of insights", + "description": "informers is a list of insight producers, each carries a list of insights", "type": "array", "items": { "default": {}, @@ -37209,12 +37217,12 @@ "x-kubernetes-list-type": "map" }, "name": { - "description": "Name is the name of the pool", + "description": "name is the name of the pool", "type": "string", "default": "" }, "resource": { - "description": "Resource is the resource that represents the pool", + "description": "resource is the resource that represents the pool", "default": {}, "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.PoolResourceRef" } @@ -37229,11 +37237,11 @@ ], "properties": { "apiGroup": { - "description": "APIGroup of the object being referenced", + "description": "APIGroup of the object being referenced, if any", "type": "string" }, "kind": { - "description": "Kind of object being referenced", + "description": "kind of object being referenced", "type": "string", "default": "" }, @@ -37248,53 +37256,33 @@ } } }, - "com.github.openshift.api.update.v1alpha1.UpdateEdgeVersion": { - "type": "object", - "properties": { - "metadata": { - "description": "Metadata is a list of metadata associated with the version", - "type": "array", - "items": { - "default": {}, - "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.VersionMetadata" - }, - "x-kubernetes-list-map-keys": [ - "key" - ], - "x-kubernetes-list-type": "map" - }, - "version": { - "description": "Version is the version of the edge", - "type": "string" - } - } - }, "com.github.openshift.api.update.v1alpha1.UpdateHealthInsight": { "description": "UpdateHealthInsight is a piece of actionable information produced by an insight producer about the health of the cluster or an update", "type": "object", "required": [ "startedAt", + "scope", "impact", "remediation" ], "properties": { "impact": { - "description": "Impact describes the impact the reported condition has on the cluster or update", + "description": "impact describes the impact the reported condition has on the cluster or update", "default": {}, "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.UpdateInsightImpact" }, "remediation": { - "description": "Remediation contains ... TODO", + "description": "remediation contains information about how to resolve or prevent the reported condition", "default": {}, "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.UpdateInsightRemediation" }, "scope": { - "description": "Scope is list of objects involved in the insight", + "description": "scope is list of objects involved in the insight", "default": {}, "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.UpdateInsightScope" }, "startedAt": { - "description": "StartedAt is the time when the condition reported by the insight started", + "description": "startedAt is the time when the condition reported by the insight started", "default": {}, "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.Time" } @@ -37325,42 +37313,43 @@ "com.github.openshift.api.update.v1alpha1.UpdateInsight": { "type": "object", "required": [ - "type", "uid", - "acquisitionTime" + "acquiredAt", + "type" ], "properties": { - "acquisitionTime": { - "description": "AcquiredAt is the time when the data was acquired by the producer", + "acquiredAt": { + "description": "acquiredAt is the time when the data was acquired by the producer", "default": {}, "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.Time" }, "clusterOperator": { - "description": "ClusterOperatorStatusInsight is a status insight about the state of a control plane cluster operator update represented by a ClusterOperator resource", + "description": "clusterOperator is a status insight about the state of a control plane cluster operator update represented by a ClusterOperator resource", "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.ClusterOperatorStatusInsight" }, "clusterVersion": { - "description": "ClusterVersionStatusInsight is a status insight about the state of a control plane update, where the control plane is represented by a ClusterVersion resource usually managed by CVO", + "description": "clusterVersion is a status insight about the state of a control plane update, where the control plane is represented by a ClusterVersion resource usually managed by CVO", "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.ClusterVersionStatusInsight" }, "health": { - "description": "UpdateHealthInsight is a generic health insight about the update. It does not represent a status of any specific resource but surfaces actionable information about the health of the cluster or an update", + "description": "health is a generic health insight about the update. It does not represent a status of any specific resource but surfaces actionable information about the health of the cluster or an update", "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.UpdateHealthInsight" }, "machineConfigPool": { - "description": "MachineConfigPoolStatusInsight is a status insight about the state of a worker pool update, where the worker pool is represented by a MachineConfigPool resource", + "description": "machineConfigPool is a status insight about the state of a worker pool update, where the worker pool is represented by a MachineConfigPool resource", "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.MachineConfigPoolStatusInsight" }, "node": { - "description": "NodeStatusInsight is a status insight about the state of a worker node update, where the worker node is represented by a Node resource", + "description": "node is a status insight about the state of a worker node update, where the worker node is represented by a Node resource", "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.NodeStatusInsight" }, "type": { + "description": "type identifies the type of the update insight", "type": "string", "default": "" }, "uid": { - "description": "UID identifies an insight over time", + "description": "uid identifies the insight over time", "type": "string", "default": "" } @@ -37372,61 +37361,59 @@ "required": [ "level", "type", - "summary", - "description" + "summary" ], "properties": { "description": { - "description": "Description is a human-oriented description of the condition reported by the insight", + "description": "description is a human-oriented, possibly longer-form description of the condition reported by the insight", "type": "string", "default": "" }, "level": { - "description": "Level is the severity of the impact", + "description": "level is the severity of the impact", "type": "string", "default": "" }, "summary": { - "description": "Summary is a short summary of the impact", + "description": "summary is a short summary of the impact", "type": "string", "default": "" }, "type": { - "description": "Type is the type of the impact", + "description": "type is the type of the impact", "type": "string", "default": "" } } }, "com.github.openshift.api.update.v1alpha1.UpdateInsightRemediation": { - "description": "UpdateInsightRemediation contains ... TODO", + "description": "UpdateInsightRemediation contains information about how to resolve or prevent the reported condition", "type": "object", "required": [ - "reference", - "estimatedFinish" + "reference" ], "properties": { "estimatedFinish": { - "description": "EstimatedFinish is the estimated time when the informer expects the condition to be resolved, if applicable. This should normally only be provided by system level insights (impact level=status)", + "description": "estimatedFinish is the estimated time when the informer expects the condition to be resolved, if applicable.", "default": {}, "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.Time" }, "reference": { - "description": "Reference is a URL where administrators can find information to resolve or prevent the reported condition", + "description": "reference is a URL where administrators can find information to resolve or prevent the reported condition", "type": "string", "default": "" } } }, "com.github.openshift.api.update.v1alpha1.UpdateInsightScope": { - "description": "UpdateInsightScope is a list of objects involved in the insight", + "description": "UpdateInsightScope is a list of resources involved in the insight", "type": "object", "required": [ "type" ], "properties": { "resources": { - "description": "Resources is a list of resources involved in the insight", + "description": "resources is a list of resources involved in the insight", "type": "array", "items": { "default": {}, @@ -37434,14 +37421,47 @@ } }, "type": { - "description": "Type is either ControlPlane or WorkerPool", + "description": "type is either ControlPlane or WorkerPool", + "type": "string", + "default": "" + } + } + }, + "com.github.openshift.api.update.v1alpha1.UpdateInsightUnion": { + "type": "object", + "required": [ + "type" + ], + "properties": { + "clusterOperator": { + "description": "clusterOperator is a status insight about the state of a control plane cluster operator update represented by a ClusterOperator resource", + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.ClusterOperatorStatusInsight" + }, + "clusterVersion": { + "description": "clusterVersion is a status insight about the state of a control plane update, where the control plane is represented by a ClusterVersion resource usually managed by CVO", + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.ClusterVersionStatusInsight" + }, + "health": { + "description": "health is a generic health insight about the update. It does not represent a status of any specific resource but surfaces actionable information about the health of the cluster or an update", + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.UpdateHealthInsight" + }, + "machineConfigPool": { + "description": "machineConfigPool is a status insight about the state of a worker pool update, where the worker pool is represented by a MachineConfigPool resource", + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.MachineConfigPoolStatusInsight" + }, + "node": { + "description": "node is a status insight about the state of a worker node update, where the worker node is represented by a Node resource", + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.NodeStatusInsight" + }, + "type": { + "description": "type identifies the type of the update insight", "type": "string", "default": "" } } }, "com.github.openshift.api.update.v1alpha1.UpdateStatus": { - "description": "UpdateStatus is the API about in-progress updates, kept populated by Update Status Controller by aggregating and summarizing UpdateInformers\n\nCompatibility level 4: No compatibility is provided, the API can change at any point for any reason. These capabilities should not be used by applications needing long term support.", + "description": "UpdateStatus is the API about in-progress updates, kept populated by Update Status Controller by aggregating and summarizing UpdateInsights produced by update informers\n\nCompatibility level 4: No compatibility is provided, the API can change at any point for any reason. These capabilities should not be used by applications needing long term support.", "type": "object", "required": [ "spec" @@ -37503,7 +37523,7 @@ "type": "object" }, "com.github.openshift.api.update.v1alpha1.UpdateStatusStatus": { - "description": "UpdateStatusStatus is the API about in-progress updates, kept populated by Update Status Controller by aggregating and summarizing UpdateInformers", + "description": "UpdateStatusStatus is the API about in-progress updates, kept populated by Update Status Controller by aggregating and summarizing UpdateInsights produced by update informers", "type": "object", "required": [ "controlPlane", @@ -37511,7 +37531,7 @@ ], "properties": { "conditions": { - "description": "Conditions provide details about Update Status Controller operational matters", + "description": "conditions provide details about Update Status Controller operational matters", "type": "array", "items": { "default": {}, @@ -37523,12 +37543,12 @@ "x-kubernetes-list-type": "map" }, "controlPlane": { - "description": "ControlPlaneUpdateStatus contains a summary and insights related to the control plane update", + "description": "controlPlane contains a summary and insights related to the control plane update", "default": {}, "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.ControlPlaneUpdateStatus" }, "workerPools": { - "description": "WorkerPoolsUpdateStatus contains summaries and insights related to the worker pools update", + "description": "workerPools contains summaries and insights related to the worker pools update", "type": "array", "items": { "default": {}, @@ -37537,6 +37557,28 @@ } } }, + "com.github.openshift.api.update.v1alpha1.Version": { + "description": "Version describes a version involved in an update, typically on one side of an update edge", + "type": "object", + "properties": { + "metadata": { + "description": "metadata is a list of metadata associated with the version", + "type": "array", + "items": { + "default": {}, + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.VersionMetadata" + }, + "x-kubernetes-list-map-keys": [ + "key" + ], + "x-kubernetes-list-type": "map" + }, + "version": { + "description": "version is a semantic version string", + "type": "string" + } + } + }, "com.github.openshift.api.update.v1alpha1.VersionMetadata": { "type": "object", "required": [ @@ -37547,6 +37589,10 @@ "bool": { "type": "boolean" }, + "integer": { + "type": "integer", + "format": "int32" + }, "key": { "type": "string", "default": "" @@ -37560,6 +37606,28 @@ } } }, + "com.github.openshift.api.update.v1alpha1.VersionMetadataValue": { + "type": "object", + "required": [ + "type" + ], + "properties": { + "bool": { + "type": "boolean" + }, + "integer": { + "type": "integer", + "format": "int32" + }, + "string": { + "type": "string" + }, + "type": { + "type": "string", + "default": "" + } + } + }, "com.github.openshift.api.user.v1.Group": { "description": "Group represents a referenceable set of Users\n\nCompatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).", "type": "object", diff --git a/update/v1alpha1/types_update_status.go b/update/v1alpha1/types_update_status.go index 7423bcc1107..0787f22077b 100644 --- a/update/v1alpha1/types_update_status.go +++ b/update/v1alpha1/types_update_status.go @@ -243,7 +243,6 @@ type ClusterVersionStatusInsight struct { // completion is a percentage of the update completion (0-100) // +required - // +kubebuilder:validation:Type=int // +kubebuilder:validation:Minimum=0 // +kubebuilder:validation:Maximum=100 Completion uint8 `json:"completion"` diff --git a/update/v1alpha1/zz_generated.crd-manifests/0000_00_cluster-version-operator_02_updatestatuses-CustomNoUpgrade.crd.yaml b/update/v1alpha1/zz_generated.crd-manifests/0000_00_cluster-version-operator_02_updatestatuses-CustomNoUpgrade.crd.yaml index 782fc86f231..88bf013eea8 100644 --- a/update/v1alpha1/zz_generated.crd-manifests/0000_00_cluster-version-operator_02_updatestatuses-CustomNoUpgrade.crd.yaml +++ b/update/v1alpha1/zz_generated.crd-manifests/0000_00_cluster-version-operator_02_updatestatuses-CustomNoUpgrade.crd.yaml @@ -4,6 +4,8 @@ metadata: annotations: api-approved.openshift.io: TODO api.openshift.io/merged-by-featuregates: "true" + description: Provides health and status information about OpenShift cluster updates. + displayName: UpdateStatuses include.release.openshift.io/ibm-cloud-managed: "true" include.release.openshift.io/self-managed-high-availability: "true" release.openshift.io/feature-set: CustomNoUpgrade @@ -21,10 +23,10 @@ spec: schema: openAPIV3Schema: description: "UpdateStatus is the API about in-progress updates, kept populated - by Update Status Controller by aggregating and summarizing UpdateInformers - \n Compatibility level 4: No compatibility is provided, the API can change - at any point for any reason. These capabilities should not be used by applications - needing long term support." + by Update Status Controller by aggregating and summarizing UpdateInsights + produced by update informers \n Compatibility level 4: No compatibility + is provided, the API can change at any point for any reason. These capabilities + should not be used by applications needing long term support." properties: apiVersion: description: 'APIVersion defines the versioned schema of this representation @@ -45,10 +47,10 @@ spec: status: description: UpdateStatusStatus is the API about in-progress updates, kept populated by Update Status Controller by aggregating and summarizing - UpdateInformers + UpdateInsights produced by update informers properties: conditions: - description: Conditions provide details about Update Status Controller + description: conditions provide details about Update Status Controller operational matters items: description: "Condition contains details for one aspect of the current @@ -121,11 +123,11 @@ spec: - type x-kubernetes-list-type: map controlPlane: - description: ControlPlaneUpdateStatus contains a summary and insights - related to the control plane update + description: controlPlane contains a summary and insights related + to the control plane update properties: conditions: - description: Conditions provides details about the control plane + description: conditions provides details about the control plane update items: description: "Condition contains details for one aspect of the @@ -201,8 +203,8 @@ spec: - type x-kubernetes-list-type: map informers: - description: Informers is a list of insight producers, each carries - a list of insights + description: informers is a list of insight producers, each carries + a list of insights relevant for control plane items: description: UpdateInformer is an insight producer identified by a name, carrying a list of insights it produced @@ -212,19 +214,18 @@ spec: this producer items: properties: - acquisitionTime: - description: AcquiredAt is the time when the data + acquiredAt: + description: acquiredAt is the time when the data was acquired by the producer format: date-time type: string clusterOperator: - description: ClusterOperatorStatusInsight is a status - insight about the state of a control plane cluster - operator update represented by a ClusterOperator - resource + description: clusterOperator is a status insight about + the state of a control plane cluster operator update + represented by a ClusterOperator resource properties: conditions: - description: Conditions provide details about + description: conditions provide details about the operator items: description: "Condition contains details for @@ -313,18 +314,18 @@ spec: - type x-kubernetes-list-type: map name: - description: Name is the name of the operator + description: name is the name of the operator type: string resource: - description: Resource is the ClusterOperator resource + description: resource is the ClusterOperator resource that represents the operator properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -336,23 +337,25 @@ spec: type: object type: object clusterVersion: - description: ClusterVersionStatusInsight is a status - insight about the state of a control plane update, - where the control plane is represented by a ClusterVersion - resource usually managed by CVO + description: clusterVersion is a status insight about + the state of a control plane update, where the control + plane is represented by a ClusterVersion resource + usually managed by CVO properties: assessment: - description: Assessment is the assessment of the + description: assessment is the assessment of the control plane update process type: string completedAt: - description: CompletedAt is the time when the + description: completedAt is the time when the update completed format: date-time type: string completion: - description: Completion is a percentage of the + description: completion is a percentage of the update completion (0-100) + maximum: 100 + minimum: 0 type: integer conditions: description: Conditions provides details about @@ -444,20 +447,20 @@ spec: - type x-kubernetes-list-type: map estimatedCompletedAt: - description: EstimatedCompletedAt is the estimated + description: estimatedCompletedAt is the estimated time when the update will complete format: date-time type: string resource: - description: Resource is the ClusterVersion resource + description: resource is the ClusterVersion resource that represents the control plane properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -468,30 +471,38 @@ spec: type: string type: object startedAt: - description: StartedAt is the time when the update + description: startedAt is the time when the update started format: date-time type: string versions: - description: Versions contains the original and + description: versions contains the original and target versions of the upgrade properties: previous: - description: Previous is the version of the + description: previous is the version of the control plane before the update properties: metadata: - description: Metadata is a list of metadata + description: metadata is a list of metadata associated with the version items: properties: bool: - type: boolean + type: bool + integer: + type: int key: type: string string: type: string type: + description: VersionMetadataType + is the type of the metadata value + enum: + - string + - bool + - int type: string type: object type: array @@ -499,26 +510,34 @@ spec: - key x-kubernetes-list-type: map version: - description: Version is the version of - the edge + description: version is a semantic version + string type: string type: object target: - description: Target is the version of the + description: target is the version of the control plane after the update properties: metadata: - description: Metadata is a list of metadata + description: metadata is a list of metadata associated with the version items: properties: bool: - type: boolean + type: bool + integer: + type: int key: type: string string: type: string type: + description: VersionMetadataType + is the type of the metadata value + enum: + - string + - bool + - int type: string type: object type: array @@ -526,78 +545,97 @@ spec: - key x-kubernetes-list-type: map version: - description: Version is the version of - the edge + description: version is a semantic version + string type: string type: object type: object type: object health: - description: UpdateHealthInsight is a generic health - insight about the update. It does not represent - a status of any specific resource but surfaces actionable - information about the health of the cluster or an - update + description: health is a generic health insight about + the update. It does not represent a status of any + specific resource but surfaces actionable information + about the health of the cluster or an update properties: impact: - description: Impact describes the impact the reported + description: impact describes the impact the reported condition has on the cluster or update properties: description: - description: Description is a human-oriented - description of the condition reported by - the insight + description: description is a human-oriented, + possibly longer-form description of the + condition reported by the insight type: string level: - description: Level is the severity of the + allOf: + - enum: + - unknown + - info + - warning + - error + - critical + - enum: + - unknown + - info + - warning + - error + - critical + description: level is the severity of the impact - enum: - - info - - warning - - error - - critical type: string summary: - description: Summary is a short summary of + description: summary is a short summary of the impact type: string type: - description: Type is the type of the impact - enum: - - None - - Unknown - - API Availability - - Cluster Capacity - - Application Availability - - Application Outage - - Data Loss - - Update Speed - - Update Stalled + allOf: + - enum: + - None + - Unknown + - API Availability + - Cluster Capacity + - Application Availability + - Application Outage + - Data Loss + - Update Speed + - Update Stalled + - enum: + - None + - Unknown + - API Availability + - Cluster Capacity + - Application Availability + - Application Outage + - Data Loss + - Update Speed + - Update Stalled + description: type is the type of the impact type: string type: object remediation: - description: Remediation contains ... TODO + description: remediation contains information + about how to resolve or prevent the reported + condition properties: estimatedFinish: - description: EstimatedFinish is the estimated + description: estimatedFinish is the estimated time when the informer expects the condition - to be resolved, if applicable. This should - normally only be provided by system level - insights (impact level=status) + to be resolved, if applicable. format: date-time type: string reference: - description: Reference is a URL where administrators + description: reference is a URL where administrators can find information to resolve or prevent the reported condition + format: uri type: string type: object scope: - description: Scope is list of objects involved + description: scope is list of objects involved in the insight properties: resources: - description: Resources is a list of resources + description: resources is a list of resources involved in the insight items: description: ResourceRef is a reference @@ -606,10 +644,10 @@ spec: properties: apiGroup: description: APIGroup of the object - being referenced + being referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being @@ -622,39 +660,42 @@ spec: type: object type: array type: - description: Type is either ControlPlane or + allOf: + - enum: + - ControlPlane + - WorkerPool + - enum: + - ControlPlane + - WorkerPool + description: type is either ControlPlane or WorkerPool - enum: - - ControlPlane - - WorkerPool type: string - required: - - type type: object startedAt: - description: StartedAt is the time when the condition + description: startedAt is the time when the condition reported by the insight started format: date-time type: string type: object machineConfigPool: - description: MachineConfigPoolStatusInsight is a status - insight about the state of a worker pool update, - where the worker pool is represented by a MachineConfigPool + description: machineConfigPool is a status insight + about the state of a worker pool update, where the + worker pool is represented by a MachineConfigPool resource properties: assessment: - description: Assessment is the assessment of the + description: assessment is the assessment of the machine config pool update process type: string completion: - description: Completion is a percentage of the + description: completion is a percentage of the update completion (0-100) - format: int32 + maximum: 100 + minimum: 0 type: integer conditions: - description: Conditions provide details about - the machine config pool + description: conditions provide details about + the machine config pool update items: description: "Condition contains details for one aspect of the current state of this API @@ -742,19 +783,19 @@ spec: - type x-kubernetes-list-type: map name: - description: Name is the name of the machine config + description: name is the name of the machine config pool type: string resource: - description: Resource is the MachineConfigPool + description: resource is the MachineConfigPool resource that represents the pool properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -765,28 +806,50 @@ spec: type: string type: object scopeType: - description: Scope describes whether the pool + allOf: + - enum: + - ControlPlane + - WorkerPool + - enum: + - ControlPlane + - WorkerPool + description: scopeType describes whether the pool is a control plane or a worker pool - enum: - - ControlPlane - - WorkerPool type: string summaries: - description: Summaries is a list of counts of + description: summaries is a list of counts of nodes matching certain criteria (e.g. updated, degraded, etc.) items: + description: NodeSummary is a count of nodes + matching certain criteria (e.g. updated, degraded, + etc.) properties: count: - description: Count is the number of nodes + description: count is the number of nodes matching the criteria - format: int32 + minimum: 0 type: integer type: - description: Type is the type of the summary + allOf: + - enum: + - Total + - Available + - Progressing + - Outdated + - Draining + - Excluded + - Degraded + - enum: + - Total + - Available + - Progressing + - Outdated + - Draining + - Excluded + - Degraded + description: type is the type of the summary type: string - required: - - type type: object type: array x-kubernetes-list-map-keys: @@ -794,12 +857,12 @@ spec: x-kubernetes-list-type: map type: object node: - description: NodeStatusInsight is a status insight - about the state of a worker node update, where the - worker node is represented by a Node resource + description: node is a status insight about the state + of a worker node update, where the worker node is + represented by a Node resource properties: conditions: - description: Conditions provides details about + description: conditions provides details about the control plane update items: description: "Condition contains details for @@ -888,26 +951,26 @@ spec: - type x-kubernetes-list-type: map estToComplete: - description: EstToComplete is the estimated time + description: estToComplete is the estimated time to complete the update, when known type: string message: - description: Message is a human-readable message - about the node update status + description: message is a short human-readable + message about the node update status type: string name: - description: Name is the name of the node + description: name is the name of the node type: string poolResource: - description: PoolResource is the resource that + description: poolResource is the resource that represents the pool the node is a member of properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -918,15 +981,15 @@ spec: type: string type: object resource: - description: Resource is the Node resource that + description: resource is the Node resource that represents the node properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -937,14 +1000,29 @@ spec: type: string type: object version: - description: Version is the version of the node, + description: version is the version of the node, when known type: string type: object type: + allOf: + - enum: + - ClusterVersion + - ClusterOperator + - MachineConfigPool + - Node + - UpdateHealth + - enum: + - ClusterVersion + - ClusterOperator + - MachineConfigPool + - Node + - UpdateHealth + description: type identifies the type of the update + insight type: string uid: - description: UID identifies an insight over time + description: uid identifies the insight over time type: string type: object type: array @@ -958,16 +1036,36 @@ spec: x-kubernetes-list-map-keys: - name x-kubernetes-list-type: map + poolResource: + description: poolResource is the resource that represents control + plane node pool, typically a MachineConfigPool. This field is + optional because some form factors (like HCP) do not have dedicated + control plane node pools. + properties: + apiGroup: + description: APIGroup of the object being referenced, if any + type: string + kind: + description: kind of object being referenced + type: string + name: + description: Name of the object being referenced + type: string + namespace: + description: Namespace of the object being referenced, if + any + type: string + type: object resource: - description: Resource is the resource that represents the control + description: resource is the resource that represents the control plane. It will typically be a ClusterVersion resource in standalone OpenShift and HostedCluster in HCP. properties: apiGroup: - description: APIGroup of the object being referenced + description: APIGroup of the object being referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -979,14 +1077,14 @@ spec: type: object type: object workerPools: - description: WorkerPoolsUpdateStatus contains summaries and insights - related to the worker pools update + description: workerPools contains summaries and insights related to + the worker pools update items: description: PoolUpdateStatus contains a summary and insights related to a node pool update properties: conditions: - description: Conditions provide details about the pool + description: conditions provide details about the pool items: description: "Condition contains details for one aspect of the current state of this API Resource. --- This struct @@ -1063,7 +1161,7 @@ spec: - type x-kubernetes-list-type: map informers: - description: Informers is a list of insight producers, each + description: informers is a list of insight producers, each carries a list of insights items: description: UpdateInformer is an insight producer identified @@ -1074,19 +1172,18 @@ spec: this producer items: properties: - acquisitionTime: - description: AcquiredAt is the time when the data + acquiredAt: + description: acquiredAt is the time when the data was acquired by the producer format: date-time type: string clusterOperator: - description: ClusterOperatorStatusInsight is a status - insight about the state of a control plane cluster - operator update represented by a ClusterOperator - resource + description: clusterOperator is a status insight + about the state of a control plane cluster operator + update represented by a ClusterOperator resource properties: conditions: - description: Conditions provide details about + description: conditions provide details about the operator items: description: "Condition contains details for @@ -1177,18 +1274,18 @@ spec: - type x-kubernetes-list-type: map name: - description: Name is the name of the operator + description: name is the name of the operator type: string resource: - description: Resource is the ClusterOperator + description: resource is the ClusterOperator resource that represents the operator properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -1200,23 +1297,25 @@ spec: type: object type: object clusterVersion: - description: ClusterVersionStatusInsight is a status - insight about the state of a control plane update, - where the control plane is represented by a ClusterVersion + description: clusterVersion is a status insight + about the state of a control plane update, where + the control plane is represented by a ClusterVersion resource usually managed by CVO properties: assessment: - description: Assessment is the assessment of + description: assessment is the assessment of the control plane update process type: string completedAt: - description: CompletedAt is the time when the + description: completedAt is the time when the update completed format: date-time type: string completion: - description: Completion is a percentage of the + description: completion is a percentage of the update completion (0-100) + maximum: 100 + minimum: 0 type: integer conditions: description: Conditions provides details about @@ -1310,20 +1409,20 @@ spec: - type x-kubernetes-list-type: map estimatedCompletedAt: - description: EstimatedCompletedAt is the estimated + description: estimatedCompletedAt is the estimated time when the update will complete format: date-time type: string resource: - description: Resource is the ClusterVersion + description: resource is the ClusterVersion resource that represents the control plane properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -1334,30 +1433,39 @@ spec: type: string type: object startedAt: - description: StartedAt is the time when the + description: startedAt is the time when the update started format: date-time type: string versions: - description: Versions contains the original + description: versions contains the original and target versions of the upgrade properties: previous: - description: Previous is the version of + description: previous is the version of the control plane before the update properties: metadata: - description: Metadata is a list of metadata + description: metadata is a list of metadata associated with the version items: properties: bool: - type: boolean + type: bool + integer: + type: int key: type: string string: type: string type: + description: VersionMetadataType + is the type of the metadata + value + enum: + - string + - bool + - int type: string type: object type: array @@ -1365,26 +1473,35 @@ spec: - key x-kubernetes-list-type: map version: - description: Version is the version - of the edge + description: version is a semantic version + string type: string type: object target: - description: Target is the version of the + description: target is the version of the control plane after the update properties: metadata: - description: Metadata is a list of metadata + description: metadata is a list of metadata associated with the version items: properties: bool: - type: boolean + type: bool + integer: + type: int key: type: string string: type: string type: + description: VersionMetadataType + is the type of the metadata + value + enum: + - string + - bool + - int type: string type: object type: array @@ -1392,78 +1509,98 @@ spec: - key x-kubernetes-list-type: map version: - description: Version is the version - of the edge + description: version is a semantic version + string type: string type: object type: object type: object health: - description: UpdateHealthInsight is a generic health - insight about the update. It does not represent - a status of any specific resource but surfaces - actionable information about the health of the - cluster or an update + description: health is a generic health insight + about the update. It does not represent a status + of any specific resource but surfaces actionable + information about the health of the cluster or + an update properties: impact: - description: Impact describes the impact the + description: impact describes the impact the reported condition has on the cluster or update properties: description: - description: Description is a human-oriented - description of the condition reported - by the insight + description: description is a human-oriented, + possibly longer-form description of the + condition reported by the insight type: string level: - description: Level is the severity of the + allOf: + - enum: + - unknown + - info + - warning + - error + - critical + - enum: + - unknown + - info + - warning + - error + - critical + description: level is the severity of the impact - enum: - - info - - warning - - error - - critical type: string summary: - description: Summary is a short summary + description: summary is a short summary of the impact type: string type: - description: Type is the type of the impact - enum: - - None - - Unknown - - API Availability - - Cluster Capacity - - Application Availability - - Application Outage - - Data Loss - - Update Speed - - Update Stalled + allOf: + - enum: + - None + - Unknown + - API Availability + - Cluster Capacity + - Application Availability + - Application Outage + - Data Loss + - Update Speed + - Update Stalled + - enum: + - None + - Unknown + - API Availability + - Cluster Capacity + - Application Availability + - Application Outage + - Data Loss + - Update Speed + - Update Stalled + description: type is the type of the impact type: string type: object remediation: - description: Remediation contains ... TODO + description: remediation contains information + about how to resolve or prevent the reported + condition properties: estimatedFinish: - description: EstimatedFinish is the estimated + description: estimatedFinish is the estimated time when the informer expects the condition - to be resolved, if applicable. This should - normally only be provided by system level - insights (impact level=status) + to be resolved, if applicable. format: date-time type: string reference: - description: Reference is a URL where administrators + description: reference is a URL where administrators can find information to resolve or prevent the reported condition + format: uri type: string type: object scope: - description: Scope is list of objects involved + description: scope is list of objects involved in the insight properties: resources: - description: Resources is a list of resources + description: resources is a list of resources involved in the insight items: description: ResourceRef is a reference @@ -1472,10 +1609,10 @@ spec: properties: apiGroup: description: APIGroup of the object - being referenced + being referenced, if any type: string kind: - description: Kind of object being + description: kind of object being referenced type: string name: @@ -1489,39 +1626,42 @@ spec: type: object type: array type: - description: Type is either ControlPlane + allOf: + - enum: + - ControlPlane + - WorkerPool + - enum: + - ControlPlane + - WorkerPool + description: type is either ControlPlane or WorkerPool - enum: - - ControlPlane - - WorkerPool type: string - required: - - type type: object startedAt: - description: StartedAt is the time when the + description: startedAt is the time when the condition reported by the insight started format: date-time type: string type: object machineConfigPool: - description: MachineConfigPoolStatusInsight is a - status insight about the state of a worker pool - update, where the worker pool is represented by - a MachineConfigPool resource + description: machineConfigPool is a status insight + about the state of a worker pool update, where + the worker pool is represented by a MachineConfigPool + resource properties: assessment: - description: Assessment is the assessment of + description: assessment is the assessment of the machine config pool update process type: string completion: - description: Completion is a percentage of the + description: completion is a percentage of the update completion (0-100) - format: int32 + maximum: 100 + minimum: 0 type: integer conditions: - description: Conditions provide details about - the machine config pool + description: conditions provide details about + the machine config pool update items: description: "Condition contains details for one aspect of the current state of this @@ -1611,19 +1751,19 @@ spec: - type x-kubernetes-list-type: map name: - description: Name is the name of the machine + description: name is the name of the machine config pool type: string resource: - description: Resource is the MachineConfigPool + description: resource is the MachineConfigPool resource that represents the pool properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -1634,28 +1774,50 @@ spec: type: string type: object scopeType: - description: Scope describes whether the pool - is a control plane or a worker pool - enum: - - ControlPlane - - WorkerPool + allOf: + - enum: + - ControlPlane + - WorkerPool + - enum: + - ControlPlane + - WorkerPool + description: scopeType describes whether the + pool is a control plane or a worker pool type: string summaries: - description: Summaries is a list of counts of + description: summaries is a list of counts of nodes matching certain criteria (e.g. updated, degraded, etc.) items: + description: NodeSummary is a count of nodes + matching certain criteria (e.g. updated, + degraded, etc.) properties: count: - description: Count is the number of nodes + description: count is the number of nodes matching the criteria - format: int32 + minimum: 0 type: integer type: - description: Type is the type of the summary + allOf: + - enum: + - Total + - Available + - Progressing + - Outdated + - Draining + - Excluded + - Degraded + - enum: + - Total + - Available + - Progressing + - Outdated + - Draining + - Excluded + - Degraded + description: type is the type of the summary type: string - required: - - type type: object type: array x-kubernetes-list-map-keys: @@ -1663,12 +1825,12 @@ spec: x-kubernetes-list-type: map type: object node: - description: NodeStatusInsight is a status insight - about the state of a worker node update, where - the worker node is represented by a Node resource + description: node is a status insight about the + state of a worker node update, where the worker + node is represented by a Node resource properties: conditions: - description: Conditions provides details about + description: conditions provides details about the control plane update items: description: "Condition contains details for @@ -1759,26 +1921,26 @@ spec: - type x-kubernetes-list-type: map estToComplete: - description: EstToComplete is the estimated + description: estToComplete is the estimated time to complete the update, when known type: string message: - description: Message is a human-readable message - about the node update status + description: message is a short human-readable + message about the node update status type: string name: - description: Name is the name of the node + description: name is the name of the node type: string poolResource: - description: PoolResource is the resource that + description: poolResource is the resource that represents the pool the node is a member of properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -1789,15 +1951,15 @@ spec: type: string type: object resource: - description: Resource is the Node resource that + description: resource is the Node resource that represents the node properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -1808,14 +1970,29 @@ spec: type: string type: object version: - description: Version is the version of the node, + description: version is the version of the node, when known type: string type: object type: + allOf: + - enum: + - ClusterVersion + - ClusterOperator + - MachineConfigPool + - Node + - UpdateHealth + - enum: + - ClusterVersion + - ClusterOperator + - MachineConfigPool + - Node + - UpdateHealth + description: type identifies the type of the update + insight type: string uid: - description: UID identifies an insight over time + description: uid identifies the insight over time type: string type: object type: array @@ -1830,16 +2007,17 @@ spec: - name x-kubernetes-list-type: map name: - description: Name is the name of the pool + description: name is the name of the pool type: string resource: - description: Resource is the resource that represents the pool + description: resource is the resource that represents the pool properties: apiGroup: - description: APIGroup of the object being referenced + description: APIGroup of the object being referenced, if + any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced diff --git a/update/v1alpha1/zz_generated.crd-manifests/0000_00_cluster-version-operator_02_updatestatuses-DevPreviewNoUpgrade.crd.yaml b/update/v1alpha1/zz_generated.crd-manifests/0000_00_cluster-version-operator_02_updatestatuses-DevPreviewNoUpgrade.crd.yaml index 4ab1b1868f9..de001dd0101 100644 --- a/update/v1alpha1/zz_generated.crd-manifests/0000_00_cluster-version-operator_02_updatestatuses-DevPreviewNoUpgrade.crd.yaml +++ b/update/v1alpha1/zz_generated.crd-manifests/0000_00_cluster-version-operator_02_updatestatuses-DevPreviewNoUpgrade.crd.yaml @@ -4,6 +4,8 @@ metadata: annotations: api-approved.openshift.io: TODO api.openshift.io/merged-by-featuregates: "true" + description: Provides health and status information about OpenShift cluster updates. + displayName: UpdateStatuses include.release.openshift.io/ibm-cloud-managed: "true" include.release.openshift.io/self-managed-high-availability: "true" release.openshift.io/feature-set: DevPreviewNoUpgrade @@ -21,10 +23,10 @@ spec: schema: openAPIV3Schema: description: "UpdateStatus is the API about in-progress updates, kept populated - by Update Status Controller by aggregating and summarizing UpdateInformers - \n Compatibility level 4: No compatibility is provided, the API can change - at any point for any reason. These capabilities should not be used by applications - needing long term support." + by Update Status Controller by aggregating and summarizing UpdateInsights + produced by update informers \n Compatibility level 4: No compatibility + is provided, the API can change at any point for any reason. These capabilities + should not be used by applications needing long term support." properties: apiVersion: description: 'APIVersion defines the versioned schema of this representation @@ -45,10 +47,10 @@ spec: status: description: UpdateStatusStatus is the API about in-progress updates, kept populated by Update Status Controller by aggregating and summarizing - UpdateInformers + UpdateInsights produced by update informers properties: conditions: - description: Conditions provide details about Update Status Controller + description: conditions provide details about Update Status Controller operational matters items: description: "Condition contains details for one aspect of the current @@ -121,11 +123,11 @@ spec: - type x-kubernetes-list-type: map controlPlane: - description: ControlPlaneUpdateStatus contains a summary and insights - related to the control plane update + description: controlPlane contains a summary and insights related + to the control plane update properties: conditions: - description: Conditions provides details about the control plane + description: conditions provides details about the control plane update items: description: "Condition contains details for one aspect of the @@ -201,8 +203,8 @@ spec: - type x-kubernetes-list-type: map informers: - description: Informers is a list of insight producers, each carries - a list of insights + description: informers is a list of insight producers, each carries + a list of insights relevant for control plane items: description: UpdateInformer is an insight producer identified by a name, carrying a list of insights it produced @@ -212,19 +214,18 @@ spec: this producer items: properties: - acquisitionTime: - description: AcquiredAt is the time when the data + acquiredAt: + description: acquiredAt is the time when the data was acquired by the producer format: date-time type: string clusterOperator: - description: ClusterOperatorStatusInsight is a status - insight about the state of a control plane cluster - operator update represented by a ClusterOperator - resource + description: clusterOperator is a status insight about + the state of a control plane cluster operator update + represented by a ClusterOperator resource properties: conditions: - description: Conditions provide details about + description: conditions provide details about the operator items: description: "Condition contains details for @@ -313,18 +314,18 @@ spec: - type x-kubernetes-list-type: map name: - description: Name is the name of the operator + description: name is the name of the operator type: string resource: - description: Resource is the ClusterOperator resource + description: resource is the ClusterOperator resource that represents the operator properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -336,23 +337,25 @@ spec: type: object type: object clusterVersion: - description: ClusterVersionStatusInsight is a status - insight about the state of a control plane update, - where the control plane is represented by a ClusterVersion - resource usually managed by CVO + description: clusterVersion is a status insight about + the state of a control plane update, where the control + plane is represented by a ClusterVersion resource + usually managed by CVO properties: assessment: - description: Assessment is the assessment of the + description: assessment is the assessment of the control plane update process type: string completedAt: - description: CompletedAt is the time when the + description: completedAt is the time when the update completed format: date-time type: string completion: - description: Completion is a percentage of the + description: completion is a percentage of the update completion (0-100) + maximum: 100 + minimum: 0 type: integer conditions: description: Conditions provides details about @@ -444,20 +447,20 @@ spec: - type x-kubernetes-list-type: map estimatedCompletedAt: - description: EstimatedCompletedAt is the estimated + description: estimatedCompletedAt is the estimated time when the update will complete format: date-time type: string resource: - description: Resource is the ClusterVersion resource + description: resource is the ClusterVersion resource that represents the control plane properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -468,30 +471,38 @@ spec: type: string type: object startedAt: - description: StartedAt is the time when the update + description: startedAt is the time when the update started format: date-time type: string versions: - description: Versions contains the original and + description: versions contains the original and target versions of the upgrade properties: previous: - description: Previous is the version of the + description: previous is the version of the control plane before the update properties: metadata: - description: Metadata is a list of metadata + description: metadata is a list of metadata associated with the version items: properties: bool: - type: boolean + type: bool + integer: + type: int key: type: string string: type: string type: + description: VersionMetadataType + is the type of the metadata value + enum: + - string + - bool + - int type: string type: object type: array @@ -499,26 +510,34 @@ spec: - key x-kubernetes-list-type: map version: - description: Version is the version of - the edge + description: version is a semantic version + string type: string type: object target: - description: Target is the version of the + description: target is the version of the control plane after the update properties: metadata: - description: Metadata is a list of metadata + description: metadata is a list of metadata associated with the version items: properties: bool: - type: boolean + type: bool + integer: + type: int key: type: string string: type: string type: + description: VersionMetadataType + is the type of the metadata value + enum: + - string + - bool + - int type: string type: object type: array @@ -526,78 +545,97 @@ spec: - key x-kubernetes-list-type: map version: - description: Version is the version of - the edge + description: version is a semantic version + string type: string type: object type: object type: object health: - description: UpdateHealthInsight is a generic health - insight about the update. It does not represent - a status of any specific resource but surfaces actionable - information about the health of the cluster or an - update + description: health is a generic health insight about + the update. It does not represent a status of any + specific resource but surfaces actionable information + about the health of the cluster or an update properties: impact: - description: Impact describes the impact the reported + description: impact describes the impact the reported condition has on the cluster or update properties: description: - description: Description is a human-oriented - description of the condition reported by - the insight + description: description is a human-oriented, + possibly longer-form description of the + condition reported by the insight type: string level: - description: Level is the severity of the + allOf: + - enum: + - unknown + - info + - warning + - error + - critical + - enum: + - unknown + - info + - warning + - error + - critical + description: level is the severity of the impact - enum: - - info - - warning - - error - - critical type: string summary: - description: Summary is a short summary of + description: summary is a short summary of the impact type: string type: - description: Type is the type of the impact - enum: - - None - - Unknown - - API Availability - - Cluster Capacity - - Application Availability - - Application Outage - - Data Loss - - Update Speed - - Update Stalled + allOf: + - enum: + - None + - Unknown + - API Availability + - Cluster Capacity + - Application Availability + - Application Outage + - Data Loss + - Update Speed + - Update Stalled + - enum: + - None + - Unknown + - API Availability + - Cluster Capacity + - Application Availability + - Application Outage + - Data Loss + - Update Speed + - Update Stalled + description: type is the type of the impact type: string type: object remediation: - description: Remediation contains ... TODO + description: remediation contains information + about how to resolve or prevent the reported + condition properties: estimatedFinish: - description: EstimatedFinish is the estimated + description: estimatedFinish is the estimated time when the informer expects the condition - to be resolved, if applicable. This should - normally only be provided by system level - insights (impact level=status) + to be resolved, if applicable. format: date-time type: string reference: - description: Reference is a URL where administrators + description: reference is a URL where administrators can find information to resolve or prevent the reported condition + format: uri type: string type: object scope: - description: Scope is list of objects involved + description: scope is list of objects involved in the insight properties: resources: - description: Resources is a list of resources + description: resources is a list of resources involved in the insight items: description: ResourceRef is a reference @@ -606,10 +644,10 @@ spec: properties: apiGroup: description: APIGroup of the object - being referenced + being referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being @@ -622,39 +660,42 @@ spec: type: object type: array type: - description: Type is either ControlPlane or + allOf: + - enum: + - ControlPlane + - WorkerPool + - enum: + - ControlPlane + - WorkerPool + description: type is either ControlPlane or WorkerPool - enum: - - ControlPlane - - WorkerPool type: string - required: - - type type: object startedAt: - description: StartedAt is the time when the condition + description: startedAt is the time when the condition reported by the insight started format: date-time type: string type: object machineConfigPool: - description: MachineConfigPoolStatusInsight is a status - insight about the state of a worker pool update, - where the worker pool is represented by a MachineConfigPool + description: machineConfigPool is a status insight + about the state of a worker pool update, where the + worker pool is represented by a MachineConfigPool resource properties: assessment: - description: Assessment is the assessment of the + description: assessment is the assessment of the machine config pool update process type: string completion: - description: Completion is a percentage of the + description: completion is a percentage of the update completion (0-100) - format: int32 + maximum: 100 + minimum: 0 type: integer conditions: - description: Conditions provide details about - the machine config pool + description: conditions provide details about + the machine config pool update items: description: "Condition contains details for one aspect of the current state of this API @@ -742,19 +783,19 @@ spec: - type x-kubernetes-list-type: map name: - description: Name is the name of the machine config + description: name is the name of the machine config pool type: string resource: - description: Resource is the MachineConfigPool + description: resource is the MachineConfigPool resource that represents the pool properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -765,28 +806,50 @@ spec: type: string type: object scopeType: - description: Scope describes whether the pool + allOf: + - enum: + - ControlPlane + - WorkerPool + - enum: + - ControlPlane + - WorkerPool + description: scopeType describes whether the pool is a control plane or a worker pool - enum: - - ControlPlane - - WorkerPool type: string summaries: - description: Summaries is a list of counts of + description: summaries is a list of counts of nodes matching certain criteria (e.g. updated, degraded, etc.) items: + description: NodeSummary is a count of nodes + matching certain criteria (e.g. updated, degraded, + etc.) properties: count: - description: Count is the number of nodes + description: count is the number of nodes matching the criteria - format: int32 + minimum: 0 type: integer type: - description: Type is the type of the summary + allOf: + - enum: + - Total + - Available + - Progressing + - Outdated + - Draining + - Excluded + - Degraded + - enum: + - Total + - Available + - Progressing + - Outdated + - Draining + - Excluded + - Degraded + description: type is the type of the summary type: string - required: - - type type: object type: array x-kubernetes-list-map-keys: @@ -794,12 +857,12 @@ spec: x-kubernetes-list-type: map type: object node: - description: NodeStatusInsight is a status insight - about the state of a worker node update, where the - worker node is represented by a Node resource + description: node is a status insight about the state + of a worker node update, where the worker node is + represented by a Node resource properties: conditions: - description: Conditions provides details about + description: conditions provides details about the control plane update items: description: "Condition contains details for @@ -888,26 +951,26 @@ spec: - type x-kubernetes-list-type: map estToComplete: - description: EstToComplete is the estimated time + description: estToComplete is the estimated time to complete the update, when known type: string message: - description: Message is a human-readable message - about the node update status + description: message is a short human-readable + message about the node update status type: string name: - description: Name is the name of the node + description: name is the name of the node type: string poolResource: - description: PoolResource is the resource that + description: poolResource is the resource that represents the pool the node is a member of properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -918,15 +981,15 @@ spec: type: string type: object resource: - description: Resource is the Node resource that + description: resource is the Node resource that represents the node properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -937,14 +1000,29 @@ spec: type: string type: object version: - description: Version is the version of the node, + description: version is the version of the node, when known type: string type: object type: + allOf: + - enum: + - ClusterVersion + - ClusterOperator + - MachineConfigPool + - Node + - UpdateHealth + - enum: + - ClusterVersion + - ClusterOperator + - MachineConfigPool + - Node + - UpdateHealth + description: type identifies the type of the update + insight type: string uid: - description: UID identifies an insight over time + description: uid identifies the insight over time type: string type: object type: array @@ -958,16 +1036,36 @@ spec: x-kubernetes-list-map-keys: - name x-kubernetes-list-type: map + poolResource: + description: poolResource is the resource that represents control + plane node pool, typically a MachineConfigPool. This field is + optional because some form factors (like HCP) do not have dedicated + control plane node pools. + properties: + apiGroup: + description: APIGroup of the object being referenced, if any + type: string + kind: + description: kind of object being referenced + type: string + name: + description: Name of the object being referenced + type: string + namespace: + description: Namespace of the object being referenced, if + any + type: string + type: object resource: - description: Resource is the resource that represents the control + description: resource is the resource that represents the control plane. It will typically be a ClusterVersion resource in standalone OpenShift and HostedCluster in HCP. properties: apiGroup: - description: APIGroup of the object being referenced + description: APIGroup of the object being referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -979,14 +1077,14 @@ spec: type: object type: object workerPools: - description: WorkerPoolsUpdateStatus contains summaries and insights - related to the worker pools update + description: workerPools contains summaries and insights related to + the worker pools update items: description: PoolUpdateStatus contains a summary and insights related to a node pool update properties: conditions: - description: Conditions provide details about the pool + description: conditions provide details about the pool items: description: "Condition contains details for one aspect of the current state of this API Resource. --- This struct @@ -1063,7 +1161,7 @@ spec: - type x-kubernetes-list-type: map informers: - description: Informers is a list of insight producers, each + description: informers is a list of insight producers, each carries a list of insights items: description: UpdateInformer is an insight producer identified @@ -1074,19 +1172,18 @@ spec: this producer items: properties: - acquisitionTime: - description: AcquiredAt is the time when the data + acquiredAt: + description: acquiredAt is the time when the data was acquired by the producer format: date-time type: string clusterOperator: - description: ClusterOperatorStatusInsight is a status - insight about the state of a control plane cluster - operator update represented by a ClusterOperator - resource + description: clusterOperator is a status insight + about the state of a control plane cluster operator + update represented by a ClusterOperator resource properties: conditions: - description: Conditions provide details about + description: conditions provide details about the operator items: description: "Condition contains details for @@ -1177,18 +1274,18 @@ spec: - type x-kubernetes-list-type: map name: - description: Name is the name of the operator + description: name is the name of the operator type: string resource: - description: Resource is the ClusterOperator + description: resource is the ClusterOperator resource that represents the operator properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -1200,23 +1297,25 @@ spec: type: object type: object clusterVersion: - description: ClusterVersionStatusInsight is a status - insight about the state of a control plane update, - where the control plane is represented by a ClusterVersion + description: clusterVersion is a status insight + about the state of a control plane update, where + the control plane is represented by a ClusterVersion resource usually managed by CVO properties: assessment: - description: Assessment is the assessment of + description: assessment is the assessment of the control plane update process type: string completedAt: - description: CompletedAt is the time when the + description: completedAt is the time when the update completed format: date-time type: string completion: - description: Completion is a percentage of the + description: completion is a percentage of the update completion (0-100) + maximum: 100 + minimum: 0 type: integer conditions: description: Conditions provides details about @@ -1310,20 +1409,20 @@ spec: - type x-kubernetes-list-type: map estimatedCompletedAt: - description: EstimatedCompletedAt is the estimated + description: estimatedCompletedAt is the estimated time when the update will complete format: date-time type: string resource: - description: Resource is the ClusterVersion + description: resource is the ClusterVersion resource that represents the control plane properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -1334,30 +1433,39 @@ spec: type: string type: object startedAt: - description: StartedAt is the time when the + description: startedAt is the time when the update started format: date-time type: string versions: - description: Versions contains the original + description: versions contains the original and target versions of the upgrade properties: previous: - description: Previous is the version of + description: previous is the version of the control plane before the update properties: metadata: - description: Metadata is a list of metadata + description: metadata is a list of metadata associated with the version items: properties: bool: - type: boolean + type: bool + integer: + type: int key: type: string string: type: string type: + description: VersionMetadataType + is the type of the metadata + value + enum: + - string + - bool + - int type: string type: object type: array @@ -1365,26 +1473,35 @@ spec: - key x-kubernetes-list-type: map version: - description: Version is the version - of the edge + description: version is a semantic version + string type: string type: object target: - description: Target is the version of the + description: target is the version of the control plane after the update properties: metadata: - description: Metadata is a list of metadata + description: metadata is a list of metadata associated with the version items: properties: bool: - type: boolean + type: bool + integer: + type: int key: type: string string: type: string type: + description: VersionMetadataType + is the type of the metadata + value + enum: + - string + - bool + - int type: string type: object type: array @@ -1392,78 +1509,98 @@ spec: - key x-kubernetes-list-type: map version: - description: Version is the version - of the edge + description: version is a semantic version + string type: string type: object type: object type: object health: - description: UpdateHealthInsight is a generic health - insight about the update. It does not represent - a status of any specific resource but surfaces - actionable information about the health of the - cluster or an update + description: health is a generic health insight + about the update. It does not represent a status + of any specific resource but surfaces actionable + information about the health of the cluster or + an update properties: impact: - description: Impact describes the impact the + description: impact describes the impact the reported condition has on the cluster or update properties: description: - description: Description is a human-oriented - description of the condition reported - by the insight + description: description is a human-oriented, + possibly longer-form description of the + condition reported by the insight type: string level: - description: Level is the severity of the + allOf: + - enum: + - unknown + - info + - warning + - error + - critical + - enum: + - unknown + - info + - warning + - error + - critical + description: level is the severity of the impact - enum: - - info - - warning - - error - - critical type: string summary: - description: Summary is a short summary + description: summary is a short summary of the impact type: string type: - description: Type is the type of the impact - enum: - - None - - Unknown - - API Availability - - Cluster Capacity - - Application Availability - - Application Outage - - Data Loss - - Update Speed - - Update Stalled + allOf: + - enum: + - None + - Unknown + - API Availability + - Cluster Capacity + - Application Availability + - Application Outage + - Data Loss + - Update Speed + - Update Stalled + - enum: + - None + - Unknown + - API Availability + - Cluster Capacity + - Application Availability + - Application Outage + - Data Loss + - Update Speed + - Update Stalled + description: type is the type of the impact type: string type: object remediation: - description: Remediation contains ... TODO + description: remediation contains information + about how to resolve or prevent the reported + condition properties: estimatedFinish: - description: EstimatedFinish is the estimated + description: estimatedFinish is the estimated time when the informer expects the condition - to be resolved, if applicable. This should - normally only be provided by system level - insights (impact level=status) + to be resolved, if applicable. format: date-time type: string reference: - description: Reference is a URL where administrators + description: reference is a URL where administrators can find information to resolve or prevent the reported condition + format: uri type: string type: object scope: - description: Scope is list of objects involved + description: scope is list of objects involved in the insight properties: resources: - description: Resources is a list of resources + description: resources is a list of resources involved in the insight items: description: ResourceRef is a reference @@ -1472,10 +1609,10 @@ spec: properties: apiGroup: description: APIGroup of the object - being referenced + being referenced, if any type: string kind: - description: Kind of object being + description: kind of object being referenced type: string name: @@ -1489,39 +1626,42 @@ spec: type: object type: array type: - description: Type is either ControlPlane + allOf: + - enum: + - ControlPlane + - WorkerPool + - enum: + - ControlPlane + - WorkerPool + description: type is either ControlPlane or WorkerPool - enum: - - ControlPlane - - WorkerPool type: string - required: - - type type: object startedAt: - description: StartedAt is the time when the + description: startedAt is the time when the condition reported by the insight started format: date-time type: string type: object machineConfigPool: - description: MachineConfigPoolStatusInsight is a - status insight about the state of a worker pool - update, where the worker pool is represented by - a MachineConfigPool resource + description: machineConfigPool is a status insight + about the state of a worker pool update, where + the worker pool is represented by a MachineConfigPool + resource properties: assessment: - description: Assessment is the assessment of + description: assessment is the assessment of the machine config pool update process type: string completion: - description: Completion is a percentage of the + description: completion is a percentage of the update completion (0-100) - format: int32 + maximum: 100 + minimum: 0 type: integer conditions: - description: Conditions provide details about - the machine config pool + description: conditions provide details about + the machine config pool update items: description: "Condition contains details for one aspect of the current state of this @@ -1611,19 +1751,19 @@ spec: - type x-kubernetes-list-type: map name: - description: Name is the name of the machine + description: name is the name of the machine config pool type: string resource: - description: Resource is the MachineConfigPool + description: resource is the MachineConfigPool resource that represents the pool properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -1634,28 +1774,50 @@ spec: type: string type: object scopeType: - description: Scope describes whether the pool - is a control plane or a worker pool - enum: - - ControlPlane - - WorkerPool + allOf: + - enum: + - ControlPlane + - WorkerPool + - enum: + - ControlPlane + - WorkerPool + description: scopeType describes whether the + pool is a control plane or a worker pool type: string summaries: - description: Summaries is a list of counts of + description: summaries is a list of counts of nodes matching certain criteria (e.g. updated, degraded, etc.) items: + description: NodeSummary is a count of nodes + matching certain criteria (e.g. updated, + degraded, etc.) properties: count: - description: Count is the number of nodes + description: count is the number of nodes matching the criteria - format: int32 + minimum: 0 type: integer type: - description: Type is the type of the summary + allOf: + - enum: + - Total + - Available + - Progressing + - Outdated + - Draining + - Excluded + - Degraded + - enum: + - Total + - Available + - Progressing + - Outdated + - Draining + - Excluded + - Degraded + description: type is the type of the summary type: string - required: - - type type: object type: array x-kubernetes-list-map-keys: @@ -1663,12 +1825,12 @@ spec: x-kubernetes-list-type: map type: object node: - description: NodeStatusInsight is a status insight - about the state of a worker node update, where - the worker node is represented by a Node resource + description: node is a status insight about the + state of a worker node update, where the worker + node is represented by a Node resource properties: conditions: - description: Conditions provides details about + description: conditions provides details about the control plane update items: description: "Condition contains details for @@ -1759,26 +1921,26 @@ spec: - type x-kubernetes-list-type: map estToComplete: - description: EstToComplete is the estimated + description: estToComplete is the estimated time to complete the update, when known type: string message: - description: Message is a human-readable message - about the node update status + description: message is a short human-readable + message about the node update status type: string name: - description: Name is the name of the node + description: name is the name of the node type: string poolResource: - description: PoolResource is the resource that + description: poolResource is the resource that represents the pool the node is a member of properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -1789,15 +1951,15 @@ spec: type: string type: object resource: - description: Resource is the Node resource that + description: resource is the Node resource that represents the node properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -1808,14 +1970,29 @@ spec: type: string type: object version: - description: Version is the version of the node, + description: version is the version of the node, when known type: string type: object type: + allOf: + - enum: + - ClusterVersion + - ClusterOperator + - MachineConfigPool + - Node + - UpdateHealth + - enum: + - ClusterVersion + - ClusterOperator + - MachineConfigPool + - Node + - UpdateHealth + description: type identifies the type of the update + insight type: string uid: - description: UID identifies an insight over time + description: uid identifies the insight over time type: string type: object type: array @@ -1830,16 +2007,17 @@ spec: - name x-kubernetes-list-type: map name: - description: Name is the name of the pool + description: name is the name of the pool type: string resource: - description: Resource is the resource that represents the pool + description: resource is the resource that represents the pool properties: apiGroup: - description: APIGroup of the object being referenced + description: APIGroup of the object being referenced, if + any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced diff --git a/update/v1alpha1/zz_generated.crd-manifests/0000_00_cluster-version-operator_02_updatestatuses-TechPreviewNoUpgrade.crd.yaml b/update/v1alpha1/zz_generated.crd-manifests/0000_00_cluster-version-operator_02_updatestatuses-TechPreviewNoUpgrade.crd.yaml index 90080e0ebe8..3c5ef7c2bd9 100644 --- a/update/v1alpha1/zz_generated.crd-manifests/0000_00_cluster-version-operator_02_updatestatuses-TechPreviewNoUpgrade.crd.yaml +++ b/update/v1alpha1/zz_generated.crd-manifests/0000_00_cluster-version-operator_02_updatestatuses-TechPreviewNoUpgrade.crd.yaml @@ -4,6 +4,8 @@ metadata: annotations: api-approved.openshift.io: TODO api.openshift.io/merged-by-featuregates: "true" + description: Provides health and status information about OpenShift cluster updates. + displayName: UpdateStatuses include.release.openshift.io/ibm-cloud-managed: "true" include.release.openshift.io/self-managed-high-availability: "true" release.openshift.io/feature-set: TechPreviewNoUpgrade @@ -21,10 +23,10 @@ spec: schema: openAPIV3Schema: description: "UpdateStatus is the API about in-progress updates, kept populated - by Update Status Controller by aggregating and summarizing UpdateInformers - \n Compatibility level 4: No compatibility is provided, the API can change - at any point for any reason. These capabilities should not be used by applications - needing long term support." + by Update Status Controller by aggregating and summarizing UpdateInsights + produced by update informers \n Compatibility level 4: No compatibility + is provided, the API can change at any point for any reason. These capabilities + should not be used by applications needing long term support." properties: apiVersion: description: 'APIVersion defines the versioned schema of this representation @@ -45,10 +47,10 @@ spec: status: description: UpdateStatusStatus is the API about in-progress updates, kept populated by Update Status Controller by aggregating and summarizing - UpdateInformers + UpdateInsights produced by update informers properties: conditions: - description: Conditions provide details about Update Status Controller + description: conditions provide details about Update Status Controller operational matters items: description: "Condition contains details for one aspect of the current @@ -121,11 +123,11 @@ spec: - type x-kubernetes-list-type: map controlPlane: - description: ControlPlaneUpdateStatus contains a summary and insights - related to the control plane update + description: controlPlane contains a summary and insights related + to the control plane update properties: conditions: - description: Conditions provides details about the control plane + description: conditions provides details about the control plane update items: description: "Condition contains details for one aspect of the @@ -201,8 +203,8 @@ spec: - type x-kubernetes-list-type: map informers: - description: Informers is a list of insight producers, each carries - a list of insights + description: informers is a list of insight producers, each carries + a list of insights relevant for control plane items: description: UpdateInformer is an insight producer identified by a name, carrying a list of insights it produced @@ -212,19 +214,18 @@ spec: this producer items: properties: - acquisitionTime: - description: AcquiredAt is the time when the data + acquiredAt: + description: acquiredAt is the time when the data was acquired by the producer format: date-time type: string clusterOperator: - description: ClusterOperatorStatusInsight is a status - insight about the state of a control plane cluster - operator update represented by a ClusterOperator - resource + description: clusterOperator is a status insight about + the state of a control plane cluster operator update + represented by a ClusterOperator resource properties: conditions: - description: Conditions provide details about + description: conditions provide details about the operator items: description: "Condition contains details for @@ -313,18 +314,18 @@ spec: - type x-kubernetes-list-type: map name: - description: Name is the name of the operator + description: name is the name of the operator type: string resource: - description: Resource is the ClusterOperator resource + description: resource is the ClusterOperator resource that represents the operator properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -336,23 +337,25 @@ spec: type: object type: object clusterVersion: - description: ClusterVersionStatusInsight is a status - insight about the state of a control plane update, - where the control plane is represented by a ClusterVersion - resource usually managed by CVO + description: clusterVersion is a status insight about + the state of a control plane update, where the control + plane is represented by a ClusterVersion resource + usually managed by CVO properties: assessment: - description: Assessment is the assessment of the + description: assessment is the assessment of the control plane update process type: string completedAt: - description: CompletedAt is the time when the + description: completedAt is the time when the update completed format: date-time type: string completion: - description: Completion is a percentage of the + description: completion is a percentage of the update completion (0-100) + maximum: 100 + minimum: 0 type: integer conditions: description: Conditions provides details about @@ -444,20 +447,20 @@ spec: - type x-kubernetes-list-type: map estimatedCompletedAt: - description: EstimatedCompletedAt is the estimated + description: estimatedCompletedAt is the estimated time when the update will complete format: date-time type: string resource: - description: Resource is the ClusterVersion resource + description: resource is the ClusterVersion resource that represents the control plane properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -468,30 +471,38 @@ spec: type: string type: object startedAt: - description: StartedAt is the time when the update + description: startedAt is the time when the update started format: date-time type: string versions: - description: Versions contains the original and + description: versions contains the original and target versions of the upgrade properties: previous: - description: Previous is the version of the + description: previous is the version of the control plane before the update properties: metadata: - description: Metadata is a list of metadata + description: metadata is a list of metadata associated with the version items: properties: bool: - type: boolean + type: bool + integer: + type: int key: type: string string: type: string type: + description: VersionMetadataType + is the type of the metadata value + enum: + - string + - bool + - int type: string type: object type: array @@ -499,26 +510,34 @@ spec: - key x-kubernetes-list-type: map version: - description: Version is the version of - the edge + description: version is a semantic version + string type: string type: object target: - description: Target is the version of the + description: target is the version of the control plane after the update properties: metadata: - description: Metadata is a list of metadata + description: metadata is a list of metadata associated with the version items: properties: bool: - type: boolean + type: bool + integer: + type: int key: type: string string: type: string type: + description: VersionMetadataType + is the type of the metadata value + enum: + - string + - bool + - int type: string type: object type: array @@ -526,78 +545,97 @@ spec: - key x-kubernetes-list-type: map version: - description: Version is the version of - the edge + description: version is a semantic version + string type: string type: object type: object type: object health: - description: UpdateHealthInsight is a generic health - insight about the update. It does not represent - a status of any specific resource but surfaces actionable - information about the health of the cluster or an - update + description: health is a generic health insight about + the update. It does not represent a status of any + specific resource but surfaces actionable information + about the health of the cluster or an update properties: impact: - description: Impact describes the impact the reported + description: impact describes the impact the reported condition has on the cluster or update properties: description: - description: Description is a human-oriented - description of the condition reported by - the insight + description: description is a human-oriented, + possibly longer-form description of the + condition reported by the insight type: string level: - description: Level is the severity of the + allOf: + - enum: + - unknown + - info + - warning + - error + - critical + - enum: + - unknown + - info + - warning + - error + - critical + description: level is the severity of the impact - enum: - - info - - warning - - error - - critical type: string summary: - description: Summary is a short summary of + description: summary is a short summary of the impact type: string type: - description: Type is the type of the impact - enum: - - None - - Unknown - - API Availability - - Cluster Capacity - - Application Availability - - Application Outage - - Data Loss - - Update Speed - - Update Stalled + allOf: + - enum: + - None + - Unknown + - API Availability + - Cluster Capacity + - Application Availability + - Application Outage + - Data Loss + - Update Speed + - Update Stalled + - enum: + - None + - Unknown + - API Availability + - Cluster Capacity + - Application Availability + - Application Outage + - Data Loss + - Update Speed + - Update Stalled + description: type is the type of the impact type: string type: object remediation: - description: Remediation contains ... TODO + description: remediation contains information + about how to resolve or prevent the reported + condition properties: estimatedFinish: - description: EstimatedFinish is the estimated + description: estimatedFinish is the estimated time when the informer expects the condition - to be resolved, if applicable. This should - normally only be provided by system level - insights (impact level=status) + to be resolved, if applicable. format: date-time type: string reference: - description: Reference is a URL where administrators + description: reference is a URL where administrators can find information to resolve or prevent the reported condition + format: uri type: string type: object scope: - description: Scope is list of objects involved + description: scope is list of objects involved in the insight properties: resources: - description: Resources is a list of resources + description: resources is a list of resources involved in the insight items: description: ResourceRef is a reference @@ -606,10 +644,10 @@ spec: properties: apiGroup: description: APIGroup of the object - being referenced + being referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being @@ -622,39 +660,42 @@ spec: type: object type: array type: - description: Type is either ControlPlane or + allOf: + - enum: + - ControlPlane + - WorkerPool + - enum: + - ControlPlane + - WorkerPool + description: type is either ControlPlane or WorkerPool - enum: - - ControlPlane - - WorkerPool type: string - required: - - type type: object startedAt: - description: StartedAt is the time when the condition + description: startedAt is the time when the condition reported by the insight started format: date-time type: string type: object machineConfigPool: - description: MachineConfigPoolStatusInsight is a status - insight about the state of a worker pool update, - where the worker pool is represented by a MachineConfigPool + description: machineConfigPool is a status insight + about the state of a worker pool update, where the + worker pool is represented by a MachineConfigPool resource properties: assessment: - description: Assessment is the assessment of the + description: assessment is the assessment of the machine config pool update process type: string completion: - description: Completion is a percentage of the + description: completion is a percentage of the update completion (0-100) - format: int32 + maximum: 100 + minimum: 0 type: integer conditions: - description: Conditions provide details about - the machine config pool + description: conditions provide details about + the machine config pool update items: description: "Condition contains details for one aspect of the current state of this API @@ -742,19 +783,19 @@ spec: - type x-kubernetes-list-type: map name: - description: Name is the name of the machine config + description: name is the name of the machine config pool type: string resource: - description: Resource is the MachineConfigPool + description: resource is the MachineConfigPool resource that represents the pool properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -765,28 +806,50 @@ spec: type: string type: object scopeType: - description: Scope describes whether the pool + allOf: + - enum: + - ControlPlane + - WorkerPool + - enum: + - ControlPlane + - WorkerPool + description: scopeType describes whether the pool is a control plane or a worker pool - enum: - - ControlPlane - - WorkerPool type: string summaries: - description: Summaries is a list of counts of + description: summaries is a list of counts of nodes matching certain criteria (e.g. updated, degraded, etc.) items: + description: NodeSummary is a count of nodes + matching certain criteria (e.g. updated, degraded, + etc.) properties: count: - description: Count is the number of nodes + description: count is the number of nodes matching the criteria - format: int32 + minimum: 0 type: integer type: - description: Type is the type of the summary + allOf: + - enum: + - Total + - Available + - Progressing + - Outdated + - Draining + - Excluded + - Degraded + - enum: + - Total + - Available + - Progressing + - Outdated + - Draining + - Excluded + - Degraded + description: type is the type of the summary type: string - required: - - type type: object type: array x-kubernetes-list-map-keys: @@ -794,12 +857,12 @@ spec: x-kubernetes-list-type: map type: object node: - description: NodeStatusInsight is a status insight - about the state of a worker node update, where the - worker node is represented by a Node resource + description: node is a status insight about the state + of a worker node update, where the worker node is + represented by a Node resource properties: conditions: - description: Conditions provides details about + description: conditions provides details about the control plane update items: description: "Condition contains details for @@ -888,26 +951,26 @@ spec: - type x-kubernetes-list-type: map estToComplete: - description: EstToComplete is the estimated time + description: estToComplete is the estimated time to complete the update, when known type: string message: - description: Message is a human-readable message - about the node update status + description: message is a short human-readable + message about the node update status type: string name: - description: Name is the name of the node + description: name is the name of the node type: string poolResource: - description: PoolResource is the resource that + description: poolResource is the resource that represents the pool the node is a member of properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -918,15 +981,15 @@ spec: type: string type: object resource: - description: Resource is the Node resource that + description: resource is the Node resource that represents the node properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -937,14 +1000,29 @@ spec: type: string type: object version: - description: Version is the version of the node, + description: version is the version of the node, when known type: string type: object type: + allOf: + - enum: + - ClusterVersion + - ClusterOperator + - MachineConfigPool + - Node + - UpdateHealth + - enum: + - ClusterVersion + - ClusterOperator + - MachineConfigPool + - Node + - UpdateHealth + description: type identifies the type of the update + insight type: string uid: - description: UID identifies an insight over time + description: uid identifies the insight over time type: string type: object type: array @@ -958,16 +1036,36 @@ spec: x-kubernetes-list-map-keys: - name x-kubernetes-list-type: map + poolResource: + description: poolResource is the resource that represents control + plane node pool, typically a MachineConfigPool. This field is + optional because some form factors (like HCP) do not have dedicated + control plane node pools. + properties: + apiGroup: + description: APIGroup of the object being referenced, if any + type: string + kind: + description: kind of object being referenced + type: string + name: + description: Name of the object being referenced + type: string + namespace: + description: Namespace of the object being referenced, if + any + type: string + type: object resource: - description: Resource is the resource that represents the control + description: resource is the resource that represents the control plane. It will typically be a ClusterVersion resource in standalone OpenShift and HostedCluster in HCP. properties: apiGroup: - description: APIGroup of the object being referenced + description: APIGroup of the object being referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -979,14 +1077,14 @@ spec: type: object type: object workerPools: - description: WorkerPoolsUpdateStatus contains summaries and insights - related to the worker pools update + description: workerPools contains summaries and insights related to + the worker pools update items: description: PoolUpdateStatus contains a summary and insights related to a node pool update properties: conditions: - description: Conditions provide details about the pool + description: conditions provide details about the pool items: description: "Condition contains details for one aspect of the current state of this API Resource. --- This struct @@ -1063,7 +1161,7 @@ spec: - type x-kubernetes-list-type: map informers: - description: Informers is a list of insight producers, each + description: informers is a list of insight producers, each carries a list of insights items: description: UpdateInformer is an insight producer identified @@ -1074,19 +1172,18 @@ spec: this producer items: properties: - acquisitionTime: - description: AcquiredAt is the time when the data + acquiredAt: + description: acquiredAt is the time when the data was acquired by the producer format: date-time type: string clusterOperator: - description: ClusterOperatorStatusInsight is a status - insight about the state of a control plane cluster - operator update represented by a ClusterOperator - resource + description: clusterOperator is a status insight + about the state of a control plane cluster operator + update represented by a ClusterOperator resource properties: conditions: - description: Conditions provide details about + description: conditions provide details about the operator items: description: "Condition contains details for @@ -1177,18 +1274,18 @@ spec: - type x-kubernetes-list-type: map name: - description: Name is the name of the operator + description: name is the name of the operator type: string resource: - description: Resource is the ClusterOperator + description: resource is the ClusterOperator resource that represents the operator properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -1200,23 +1297,25 @@ spec: type: object type: object clusterVersion: - description: ClusterVersionStatusInsight is a status - insight about the state of a control plane update, - where the control plane is represented by a ClusterVersion + description: clusterVersion is a status insight + about the state of a control plane update, where + the control plane is represented by a ClusterVersion resource usually managed by CVO properties: assessment: - description: Assessment is the assessment of + description: assessment is the assessment of the control plane update process type: string completedAt: - description: CompletedAt is the time when the + description: completedAt is the time when the update completed format: date-time type: string completion: - description: Completion is a percentage of the + description: completion is a percentage of the update completion (0-100) + maximum: 100 + minimum: 0 type: integer conditions: description: Conditions provides details about @@ -1310,20 +1409,20 @@ spec: - type x-kubernetes-list-type: map estimatedCompletedAt: - description: EstimatedCompletedAt is the estimated + description: estimatedCompletedAt is the estimated time when the update will complete format: date-time type: string resource: - description: Resource is the ClusterVersion + description: resource is the ClusterVersion resource that represents the control plane properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -1334,30 +1433,39 @@ spec: type: string type: object startedAt: - description: StartedAt is the time when the + description: startedAt is the time when the update started format: date-time type: string versions: - description: Versions contains the original + description: versions contains the original and target versions of the upgrade properties: previous: - description: Previous is the version of + description: previous is the version of the control plane before the update properties: metadata: - description: Metadata is a list of metadata + description: metadata is a list of metadata associated with the version items: properties: bool: - type: boolean + type: bool + integer: + type: int key: type: string string: type: string type: + description: VersionMetadataType + is the type of the metadata + value + enum: + - string + - bool + - int type: string type: object type: array @@ -1365,26 +1473,35 @@ spec: - key x-kubernetes-list-type: map version: - description: Version is the version - of the edge + description: version is a semantic version + string type: string type: object target: - description: Target is the version of the + description: target is the version of the control plane after the update properties: metadata: - description: Metadata is a list of metadata + description: metadata is a list of metadata associated with the version items: properties: bool: - type: boolean + type: bool + integer: + type: int key: type: string string: type: string type: + description: VersionMetadataType + is the type of the metadata + value + enum: + - string + - bool + - int type: string type: object type: array @@ -1392,78 +1509,98 @@ spec: - key x-kubernetes-list-type: map version: - description: Version is the version - of the edge + description: version is a semantic version + string type: string type: object type: object type: object health: - description: UpdateHealthInsight is a generic health - insight about the update. It does not represent - a status of any specific resource but surfaces - actionable information about the health of the - cluster or an update + description: health is a generic health insight + about the update. It does not represent a status + of any specific resource but surfaces actionable + information about the health of the cluster or + an update properties: impact: - description: Impact describes the impact the + description: impact describes the impact the reported condition has on the cluster or update properties: description: - description: Description is a human-oriented - description of the condition reported - by the insight + description: description is a human-oriented, + possibly longer-form description of the + condition reported by the insight type: string level: - description: Level is the severity of the + allOf: + - enum: + - unknown + - info + - warning + - error + - critical + - enum: + - unknown + - info + - warning + - error + - critical + description: level is the severity of the impact - enum: - - info - - warning - - error - - critical type: string summary: - description: Summary is a short summary + description: summary is a short summary of the impact type: string type: - description: Type is the type of the impact - enum: - - None - - Unknown - - API Availability - - Cluster Capacity - - Application Availability - - Application Outage - - Data Loss - - Update Speed - - Update Stalled + allOf: + - enum: + - None + - Unknown + - API Availability + - Cluster Capacity + - Application Availability + - Application Outage + - Data Loss + - Update Speed + - Update Stalled + - enum: + - None + - Unknown + - API Availability + - Cluster Capacity + - Application Availability + - Application Outage + - Data Loss + - Update Speed + - Update Stalled + description: type is the type of the impact type: string type: object remediation: - description: Remediation contains ... TODO + description: remediation contains information + about how to resolve or prevent the reported + condition properties: estimatedFinish: - description: EstimatedFinish is the estimated + description: estimatedFinish is the estimated time when the informer expects the condition - to be resolved, if applicable. This should - normally only be provided by system level - insights (impact level=status) + to be resolved, if applicable. format: date-time type: string reference: - description: Reference is a URL where administrators + description: reference is a URL where administrators can find information to resolve or prevent the reported condition + format: uri type: string type: object scope: - description: Scope is list of objects involved + description: scope is list of objects involved in the insight properties: resources: - description: Resources is a list of resources + description: resources is a list of resources involved in the insight items: description: ResourceRef is a reference @@ -1472,10 +1609,10 @@ spec: properties: apiGroup: description: APIGroup of the object - being referenced + being referenced, if any type: string kind: - description: Kind of object being + description: kind of object being referenced type: string name: @@ -1489,39 +1626,42 @@ spec: type: object type: array type: - description: Type is either ControlPlane + allOf: + - enum: + - ControlPlane + - WorkerPool + - enum: + - ControlPlane + - WorkerPool + description: type is either ControlPlane or WorkerPool - enum: - - ControlPlane - - WorkerPool type: string - required: - - type type: object startedAt: - description: StartedAt is the time when the + description: startedAt is the time when the condition reported by the insight started format: date-time type: string type: object machineConfigPool: - description: MachineConfigPoolStatusInsight is a - status insight about the state of a worker pool - update, where the worker pool is represented by - a MachineConfigPool resource + description: machineConfigPool is a status insight + about the state of a worker pool update, where + the worker pool is represented by a MachineConfigPool + resource properties: assessment: - description: Assessment is the assessment of + description: assessment is the assessment of the machine config pool update process type: string completion: - description: Completion is a percentage of the + description: completion is a percentage of the update completion (0-100) - format: int32 + maximum: 100 + minimum: 0 type: integer conditions: - description: Conditions provide details about - the machine config pool + description: conditions provide details about + the machine config pool update items: description: "Condition contains details for one aspect of the current state of this @@ -1611,19 +1751,19 @@ spec: - type x-kubernetes-list-type: map name: - description: Name is the name of the machine + description: name is the name of the machine config pool type: string resource: - description: Resource is the MachineConfigPool + description: resource is the MachineConfigPool resource that represents the pool properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -1634,28 +1774,50 @@ spec: type: string type: object scopeType: - description: Scope describes whether the pool - is a control plane or a worker pool - enum: - - ControlPlane - - WorkerPool + allOf: + - enum: + - ControlPlane + - WorkerPool + - enum: + - ControlPlane + - WorkerPool + description: scopeType describes whether the + pool is a control plane or a worker pool type: string summaries: - description: Summaries is a list of counts of + description: summaries is a list of counts of nodes matching certain criteria (e.g. updated, degraded, etc.) items: + description: NodeSummary is a count of nodes + matching certain criteria (e.g. updated, + degraded, etc.) properties: count: - description: Count is the number of nodes + description: count is the number of nodes matching the criteria - format: int32 + minimum: 0 type: integer type: - description: Type is the type of the summary + allOf: + - enum: + - Total + - Available + - Progressing + - Outdated + - Draining + - Excluded + - Degraded + - enum: + - Total + - Available + - Progressing + - Outdated + - Draining + - Excluded + - Degraded + description: type is the type of the summary type: string - required: - - type type: object type: array x-kubernetes-list-map-keys: @@ -1663,12 +1825,12 @@ spec: x-kubernetes-list-type: map type: object node: - description: NodeStatusInsight is a status insight - about the state of a worker node update, where - the worker node is represented by a Node resource + description: node is a status insight about the + state of a worker node update, where the worker + node is represented by a Node resource properties: conditions: - description: Conditions provides details about + description: conditions provides details about the control plane update items: description: "Condition contains details for @@ -1759,26 +1921,26 @@ spec: - type x-kubernetes-list-type: map estToComplete: - description: EstToComplete is the estimated + description: estToComplete is the estimated time to complete the update, when known type: string message: - description: Message is a human-readable message - about the node update status + description: message is a short human-readable + message about the node update status type: string name: - description: Name is the name of the node + description: name is the name of the node type: string poolResource: - description: PoolResource is the resource that + description: poolResource is the resource that represents the pool the node is a member of properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -1789,15 +1951,15 @@ spec: type: string type: object resource: - description: Resource is the Node resource that + description: resource is the Node resource that represents the node properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -1808,14 +1970,29 @@ spec: type: string type: object version: - description: Version is the version of the node, + description: version is the version of the node, when known type: string type: object type: + allOf: + - enum: + - ClusterVersion + - ClusterOperator + - MachineConfigPool + - Node + - UpdateHealth + - enum: + - ClusterVersion + - ClusterOperator + - MachineConfigPool + - Node + - UpdateHealth + description: type identifies the type of the update + insight type: string uid: - description: UID identifies an insight over time + description: uid identifies the insight over time type: string type: object type: array @@ -1830,16 +2007,17 @@ spec: - name x-kubernetes-list-type: map name: - description: Name is the name of the pool + description: name is the name of the pool type: string resource: - description: Resource is the resource that represents the pool + description: resource is the resource that represents the pool properties: apiGroup: - description: APIGroup of the object being referenced + description: APIGroup of the object being referenced, if + any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced diff --git a/update/v1alpha1/zz_generated.deepcopy.go b/update/v1alpha1/zz_generated.deepcopy.go index 386636b22ff..136707bab5a 100644 --- a/update/v1alpha1/zz_generated.deepcopy.go +++ b/update/v1alpha1/zz_generated.deepcopy.go @@ -66,6 +66,7 @@ func (in *ClusterVersionStatusInsight) DeepCopy() *ClusterVersionStatusInsight { func (in *ControlPlaneUpdateStatus) DeepCopyInto(out *ControlPlaneUpdateStatus) { *out = *in out.Resource = in.Resource + out.PoolResource = in.PoolResource if in.Informers != nil { in, out := &in.Informers, &out.Informers *out = make([]UpdateInformer, len(*in)) @@ -117,7 +118,7 @@ func (in *MachineConfigPoolStatusInsight) DeepCopyInto(out *MachineConfigPoolSta out.Resource = in.Resource if in.Summaries != nil { in, out := &in.Summaries, &out.Summaries - *out = make([]PoolNodesUpdateSummary, len(*in)) + *out = make([]NodeSummary, len(*in)) copy(*out, *in) } if in.Conditions != nil { @@ -167,17 +168,17 @@ func (in *NodeStatusInsight) DeepCopy() *NodeStatusInsight { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PoolNodesUpdateSummary) DeepCopyInto(out *PoolNodesUpdateSummary) { +func (in *NodeSummary) DeepCopyInto(out *NodeSummary) { *out = *in return } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PoolNodesUpdateSummary. -func (in *PoolNodesUpdateSummary) DeepCopy() *PoolNodesUpdateSummary { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeSummary. +func (in *NodeSummary) DeepCopy() *NodeSummary { if in == nil { return nil } - out := new(PoolNodesUpdateSummary) + out := new(NodeSummary) in.DeepCopyInto(out) return out } @@ -246,27 +247,6 @@ func (in *ResourceRef) DeepCopy() *ResourceRef { return out } -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *UpdateEdgeVersion) DeepCopyInto(out *UpdateEdgeVersion) { - *out = *in - if in.Metadata != nil { - in, out := &in.Metadata, &out.Metadata - *out = make([]VersionMetadata, len(*in)) - copy(*out, *in) - } - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpdateEdgeVersion. -func (in *UpdateEdgeVersion) DeepCopy() *UpdateEdgeVersion { - if in == nil { - return nil - } - out := new(UpdateEdgeVersion) - in.DeepCopyInto(out) - return out -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *UpdateHealthInsight) DeepCopyInto(out *UpdateHealthInsight) { *out = *in @@ -314,31 +294,7 @@ func (in *UpdateInformer) DeepCopy() *UpdateInformer { func (in *UpdateInsight) DeepCopyInto(out *UpdateInsight) { *out = *in in.AcquiredAt.DeepCopyInto(&out.AcquiredAt) - if in.ClusterVersionStatusInsight != nil { - in, out := &in.ClusterVersionStatusInsight, &out.ClusterVersionStatusInsight - *out = new(ClusterVersionStatusInsight) - (*in).DeepCopyInto(*out) - } - if in.ClusterOperatorStatusInsight != nil { - in, out := &in.ClusterOperatorStatusInsight, &out.ClusterOperatorStatusInsight - *out = new(ClusterOperatorStatusInsight) - (*in).DeepCopyInto(*out) - } - if in.MachineConfigPoolStatusInsight != nil { - in, out := &in.MachineConfigPoolStatusInsight, &out.MachineConfigPoolStatusInsight - *out = new(MachineConfigPoolStatusInsight) - (*in).DeepCopyInto(*out) - } - if in.NodeStatusInsight != nil { - in, out := &in.NodeStatusInsight, &out.NodeStatusInsight - *out = new(NodeStatusInsight) - (*in).DeepCopyInto(*out) - } - if in.UpdateHealthInsight != nil { - in, out := &in.UpdateHealthInsight, &out.UpdateHealthInsight - *out = new(UpdateHealthInsight) - (*in).DeepCopyInto(*out) - } + in.UpdateInsightUnion.DeepCopyInto(&out.UpdateInsightUnion) return } @@ -406,6 +362,47 @@ func (in *UpdateInsightScope) DeepCopy() *UpdateInsightScope { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *UpdateInsightUnion) DeepCopyInto(out *UpdateInsightUnion) { + *out = *in + if in.ClusterVersionStatusInsight != nil { + in, out := &in.ClusterVersionStatusInsight, &out.ClusterVersionStatusInsight + *out = new(ClusterVersionStatusInsight) + (*in).DeepCopyInto(*out) + } + if in.ClusterOperatorStatusInsight != nil { + in, out := &in.ClusterOperatorStatusInsight, &out.ClusterOperatorStatusInsight + *out = new(ClusterOperatorStatusInsight) + (*in).DeepCopyInto(*out) + } + if in.MachineConfigPoolStatusInsight != nil { + in, out := &in.MachineConfigPoolStatusInsight, &out.MachineConfigPoolStatusInsight + *out = new(MachineConfigPoolStatusInsight) + (*in).DeepCopyInto(*out) + } + if in.NodeStatusInsight != nil { + in, out := &in.NodeStatusInsight, &out.NodeStatusInsight + *out = new(NodeStatusInsight) + (*in).DeepCopyInto(*out) + } + if in.UpdateHealthInsight != nil { + in, out := &in.UpdateHealthInsight, &out.UpdateHealthInsight + *out = new(UpdateHealthInsight) + (*in).DeepCopyInto(*out) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpdateInsightUnion. +func (in *UpdateInsightUnion) DeepCopy() *UpdateInsightUnion { + if in == nil { + return nil + } + out := new(UpdateInsightUnion) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *UpdateStatus) DeepCopyInto(out *UpdateStatus) { *out = *in @@ -514,9 +511,31 @@ func (in *UpdateStatusStatus) DeepCopy() *UpdateStatusStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Version) DeepCopyInto(out *Version) { + *out = *in + if in.Metadata != nil { + in, out := &in.Metadata, &out.Metadata + *out = make([]VersionMetadata, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Version. +func (in *Version) DeepCopy() *Version { + if in == nil { + return nil + } + out := new(Version) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VersionMetadata) DeepCopyInto(out *VersionMetadata) { *out = *in + out.VersionMetadataValue = in.VersionMetadataValue return } @@ -529,3 +548,19 @@ func (in *VersionMetadata) DeepCopy() *VersionMetadata { in.DeepCopyInto(out) return out } + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VersionMetadataValue) DeepCopyInto(out *VersionMetadataValue) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VersionMetadataValue. +func (in *VersionMetadataValue) DeepCopy() *VersionMetadataValue { + if in == nil { + return nil + } + out := new(VersionMetadataValue) + in.DeepCopyInto(out) + return out +} diff --git a/update/v1alpha1/zz_generated.featuregated-crd-manifests.yaml b/update/v1alpha1/zz_generated.featuregated-crd-manifests.yaml index 56319956ec0..21d3f9e5e80 100644 --- a/update/v1alpha1/zz_generated.featuregated-crd-manifests.yaml +++ b/update/v1alpha1/zz_generated.featuregated-crd-manifests.yaml @@ -1,5 +1,7 @@ updatestatuses.update.openshift.io: - Annotations: {} + Annotations: + description: Provides health and status information about OpenShift cluster updates. + displayName: UpdateStatuses ApprovedPRNumber: TODO CRDName: updatestatuses.update.openshift.io Capability: "" diff --git a/update/v1alpha1/zz_generated.featuregated-crd-manifests/updatestatuses.update.openshift.io/UpgradeStatus.yaml b/update/v1alpha1/zz_generated.featuregated-crd-manifests/updatestatuses.update.openshift.io/UpgradeStatus.yaml index f80a993ce88..c74459690da 100644 --- a/update/v1alpha1/zz_generated.featuregated-crd-manifests/updatestatuses.update.openshift.io/UpgradeStatus.yaml +++ b/update/v1alpha1/zz_generated.featuregated-crd-manifests/updatestatuses.update.openshift.io/UpgradeStatus.yaml @@ -6,6 +6,8 @@ metadata: api.openshift.io/filename-cvo-runlevel: "0000_00" api.openshift.io/filename-operator: cluster-version-operator api.openshift.io/filename-ordering: "02" + description: Provides health and status information about OpenShift cluster updates. + displayName: UpdateStatuses feature-gate.release.openshift.io/UpgradeStatus: "true" name: updatestatuses.update.openshift.io spec: @@ -21,10 +23,10 @@ spec: schema: openAPIV3Schema: description: "UpdateStatus is the API about in-progress updates, kept populated - by Update Status Controller by aggregating and summarizing UpdateInformers - \n Compatibility level 4: No compatibility is provided, the API can change - at any point for any reason. These capabilities should not be used by applications - needing long term support." + by Update Status Controller by aggregating and summarizing UpdateInsights + produced by update informers \n Compatibility level 4: No compatibility + is provided, the API can change at any point for any reason. These capabilities + should not be used by applications needing long term support." properties: apiVersion: description: 'APIVersion defines the versioned schema of this representation @@ -45,10 +47,10 @@ spec: status: description: UpdateStatusStatus is the API about in-progress updates, kept populated by Update Status Controller by aggregating and summarizing - UpdateInformers + UpdateInsights produced by update informers properties: conditions: - description: Conditions provide details about Update Status Controller + description: conditions provide details about Update Status Controller operational matters items: description: "Condition contains details for one aspect of the current @@ -121,11 +123,11 @@ spec: - type x-kubernetes-list-type: map controlPlane: - description: ControlPlaneUpdateStatus contains a summary and insights - related to the control plane update + description: controlPlane contains a summary and insights related + to the control plane update properties: conditions: - description: Conditions provides details about the control plane + description: conditions provides details about the control plane update items: description: "Condition contains details for one aspect of the @@ -201,8 +203,8 @@ spec: - type x-kubernetes-list-type: map informers: - description: Informers is a list of insight producers, each carries - a list of insights + description: informers is a list of insight producers, each carries + a list of insights relevant for control plane items: description: UpdateInformer is an insight producer identified by a name, carrying a list of insights it produced @@ -212,19 +214,18 @@ spec: this producer items: properties: - acquisitionTime: - description: AcquiredAt is the time when the data + acquiredAt: + description: acquiredAt is the time when the data was acquired by the producer format: date-time type: string clusterOperator: - description: ClusterOperatorStatusInsight is a status - insight about the state of a control plane cluster - operator update represented by a ClusterOperator - resource + description: clusterOperator is a status insight about + the state of a control plane cluster operator update + represented by a ClusterOperator resource properties: conditions: - description: Conditions provide details about + description: conditions provide details about the operator items: description: "Condition contains details for @@ -313,18 +314,18 @@ spec: - type x-kubernetes-list-type: map name: - description: Name is the name of the operator + description: name is the name of the operator type: string resource: - description: Resource is the ClusterOperator resource + description: resource is the ClusterOperator resource that represents the operator properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -336,23 +337,25 @@ spec: type: object type: object clusterVersion: - description: ClusterVersionStatusInsight is a status - insight about the state of a control plane update, - where the control plane is represented by a ClusterVersion - resource usually managed by CVO + description: clusterVersion is a status insight about + the state of a control plane update, where the control + plane is represented by a ClusterVersion resource + usually managed by CVO properties: assessment: - description: Assessment is the assessment of the + description: assessment is the assessment of the control plane update process type: string completedAt: - description: CompletedAt is the time when the + description: completedAt is the time when the update completed format: date-time type: string completion: - description: Completion is a percentage of the + description: completion is a percentage of the update completion (0-100) + maximum: 100 + minimum: 0 type: integer conditions: description: Conditions provides details about @@ -444,20 +447,20 @@ spec: - type x-kubernetes-list-type: map estimatedCompletedAt: - description: EstimatedCompletedAt is the estimated + description: estimatedCompletedAt is the estimated time when the update will complete format: date-time type: string resource: - description: Resource is the ClusterVersion resource + description: resource is the ClusterVersion resource that represents the control plane properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -468,30 +471,38 @@ spec: type: string type: object startedAt: - description: StartedAt is the time when the update + description: startedAt is the time when the update started format: date-time type: string versions: - description: Versions contains the original and + description: versions contains the original and target versions of the upgrade properties: previous: - description: Previous is the version of the + description: previous is the version of the control plane before the update properties: metadata: - description: Metadata is a list of metadata + description: metadata is a list of metadata associated with the version items: properties: bool: - type: boolean + type: bool + integer: + type: int key: type: string string: type: string type: + description: VersionMetadataType + is the type of the metadata value + enum: + - string + - bool + - int type: string type: object type: array @@ -499,26 +510,34 @@ spec: - key x-kubernetes-list-type: map version: - description: Version is the version of - the edge + description: version is a semantic version + string type: string type: object target: - description: Target is the version of the + description: target is the version of the control plane after the update properties: metadata: - description: Metadata is a list of metadata + description: metadata is a list of metadata associated with the version items: properties: bool: - type: boolean + type: bool + integer: + type: int key: type: string string: type: string type: + description: VersionMetadataType + is the type of the metadata value + enum: + - string + - bool + - int type: string type: object type: array @@ -526,78 +545,97 @@ spec: - key x-kubernetes-list-type: map version: - description: Version is the version of - the edge + description: version is a semantic version + string type: string type: object type: object type: object health: - description: UpdateHealthInsight is a generic health - insight about the update. It does not represent - a status of any specific resource but surfaces actionable - information about the health of the cluster or an - update + description: health is a generic health insight about + the update. It does not represent a status of any + specific resource but surfaces actionable information + about the health of the cluster or an update properties: impact: - description: Impact describes the impact the reported + description: impact describes the impact the reported condition has on the cluster or update properties: description: - description: Description is a human-oriented - description of the condition reported by - the insight + description: description is a human-oriented, + possibly longer-form description of the + condition reported by the insight type: string level: - description: Level is the severity of the + allOf: + - enum: + - unknown + - info + - warning + - error + - critical + - enum: + - unknown + - info + - warning + - error + - critical + description: level is the severity of the impact - enum: - - info - - warning - - error - - critical type: string summary: - description: Summary is a short summary of + description: summary is a short summary of the impact type: string type: - description: Type is the type of the impact - enum: - - None - - Unknown - - API Availability - - Cluster Capacity - - Application Availability - - Application Outage - - Data Loss - - Update Speed - - Update Stalled + allOf: + - enum: + - None + - Unknown + - API Availability + - Cluster Capacity + - Application Availability + - Application Outage + - Data Loss + - Update Speed + - Update Stalled + - enum: + - None + - Unknown + - API Availability + - Cluster Capacity + - Application Availability + - Application Outage + - Data Loss + - Update Speed + - Update Stalled + description: type is the type of the impact type: string type: object remediation: - description: Remediation contains ... TODO + description: remediation contains information + about how to resolve or prevent the reported + condition properties: estimatedFinish: - description: EstimatedFinish is the estimated + description: estimatedFinish is the estimated time when the informer expects the condition - to be resolved, if applicable. This should - normally only be provided by system level - insights (impact level=status) + to be resolved, if applicable. format: date-time type: string reference: - description: Reference is a URL where administrators + description: reference is a URL where administrators can find information to resolve or prevent the reported condition + format: uri type: string type: object scope: - description: Scope is list of objects involved + description: scope is list of objects involved in the insight properties: resources: - description: Resources is a list of resources + description: resources is a list of resources involved in the insight items: description: ResourceRef is a reference @@ -606,10 +644,10 @@ spec: properties: apiGroup: description: APIGroup of the object - being referenced + being referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being @@ -622,39 +660,42 @@ spec: type: object type: array type: - description: Type is either ControlPlane or + allOf: + - enum: + - ControlPlane + - WorkerPool + - enum: + - ControlPlane + - WorkerPool + description: type is either ControlPlane or WorkerPool - enum: - - ControlPlane - - WorkerPool type: string - required: - - type type: object startedAt: - description: StartedAt is the time when the condition + description: startedAt is the time when the condition reported by the insight started format: date-time type: string type: object machineConfigPool: - description: MachineConfigPoolStatusInsight is a status - insight about the state of a worker pool update, - where the worker pool is represented by a MachineConfigPool + description: machineConfigPool is a status insight + about the state of a worker pool update, where the + worker pool is represented by a MachineConfigPool resource properties: assessment: - description: Assessment is the assessment of the + description: assessment is the assessment of the machine config pool update process type: string completion: - description: Completion is a percentage of the + description: completion is a percentage of the update completion (0-100) - format: int32 + maximum: 100 + minimum: 0 type: integer conditions: - description: Conditions provide details about - the machine config pool + description: conditions provide details about + the machine config pool update items: description: "Condition contains details for one aspect of the current state of this API @@ -742,19 +783,19 @@ spec: - type x-kubernetes-list-type: map name: - description: Name is the name of the machine config + description: name is the name of the machine config pool type: string resource: - description: Resource is the MachineConfigPool + description: resource is the MachineConfigPool resource that represents the pool properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -765,28 +806,50 @@ spec: type: string type: object scopeType: - description: Scope describes whether the pool + allOf: + - enum: + - ControlPlane + - WorkerPool + - enum: + - ControlPlane + - WorkerPool + description: scopeType describes whether the pool is a control plane or a worker pool - enum: - - ControlPlane - - WorkerPool type: string summaries: - description: Summaries is a list of counts of + description: summaries is a list of counts of nodes matching certain criteria (e.g. updated, degraded, etc.) items: + description: NodeSummary is a count of nodes + matching certain criteria (e.g. updated, degraded, + etc.) properties: count: - description: Count is the number of nodes + description: count is the number of nodes matching the criteria - format: int32 + minimum: 0 type: integer type: - description: Type is the type of the summary + allOf: + - enum: + - Total + - Available + - Progressing + - Outdated + - Draining + - Excluded + - Degraded + - enum: + - Total + - Available + - Progressing + - Outdated + - Draining + - Excluded + - Degraded + description: type is the type of the summary type: string - required: - - type type: object type: array x-kubernetes-list-map-keys: @@ -794,12 +857,12 @@ spec: x-kubernetes-list-type: map type: object node: - description: NodeStatusInsight is a status insight - about the state of a worker node update, where the - worker node is represented by a Node resource + description: node is a status insight about the state + of a worker node update, where the worker node is + represented by a Node resource properties: conditions: - description: Conditions provides details about + description: conditions provides details about the control plane update items: description: "Condition contains details for @@ -888,26 +951,26 @@ spec: - type x-kubernetes-list-type: map estToComplete: - description: EstToComplete is the estimated time + description: estToComplete is the estimated time to complete the update, when known type: string message: - description: Message is a human-readable message - about the node update status + description: message is a short human-readable + message about the node update status type: string name: - description: Name is the name of the node + description: name is the name of the node type: string poolResource: - description: PoolResource is the resource that + description: poolResource is the resource that represents the pool the node is a member of properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -918,15 +981,15 @@ spec: type: string type: object resource: - description: Resource is the Node resource that + description: resource is the Node resource that represents the node properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -937,14 +1000,29 @@ spec: type: string type: object version: - description: Version is the version of the node, + description: version is the version of the node, when known type: string type: object type: + allOf: + - enum: + - ClusterVersion + - ClusterOperator + - MachineConfigPool + - Node + - UpdateHealth + - enum: + - ClusterVersion + - ClusterOperator + - MachineConfigPool + - Node + - UpdateHealth + description: type identifies the type of the update + insight type: string uid: - description: UID identifies an insight over time + description: uid identifies the insight over time type: string type: object type: array @@ -958,16 +1036,36 @@ spec: x-kubernetes-list-map-keys: - name x-kubernetes-list-type: map + poolResource: + description: poolResource is the resource that represents control + plane node pool, typically a MachineConfigPool. This field is + optional because some form factors (like HCP) do not have dedicated + control plane node pools. + properties: + apiGroup: + description: APIGroup of the object being referenced, if any + type: string + kind: + description: kind of object being referenced + type: string + name: + description: Name of the object being referenced + type: string + namespace: + description: Namespace of the object being referenced, if + any + type: string + type: object resource: - description: Resource is the resource that represents the control + description: resource is the resource that represents the control plane. It will typically be a ClusterVersion resource in standalone OpenShift and HostedCluster in HCP. properties: apiGroup: - description: APIGroup of the object being referenced + description: APIGroup of the object being referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -979,14 +1077,14 @@ spec: type: object type: object workerPools: - description: WorkerPoolsUpdateStatus contains summaries and insights - related to the worker pools update + description: workerPools contains summaries and insights related to + the worker pools update items: description: PoolUpdateStatus contains a summary and insights related to a node pool update properties: conditions: - description: Conditions provide details about the pool + description: conditions provide details about the pool items: description: "Condition contains details for one aspect of the current state of this API Resource. --- This struct @@ -1063,7 +1161,7 @@ spec: - type x-kubernetes-list-type: map informers: - description: Informers is a list of insight producers, each + description: informers is a list of insight producers, each carries a list of insights items: description: UpdateInformer is an insight producer identified @@ -1074,19 +1172,18 @@ spec: this producer items: properties: - acquisitionTime: - description: AcquiredAt is the time when the data + acquiredAt: + description: acquiredAt is the time when the data was acquired by the producer format: date-time type: string clusterOperator: - description: ClusterOperatorStatusInsight is a status - insight about the state of a control plane cluster - operator update represented by a ClusterOperator - resource + description: clusterOperator is a status insight + about the state of a control plane cluster operator + update represented by a ClusterOperator resource properties: conditions: - description: Conditions provide details about + description: conditions provide details about the operator items: description: "Condition contains details for @@ -1177,18 +1274,18 @@ spec: - type x-kubernetes-list-type: map name: - description: Name is the name of the operator + description: name is the name of the operator type: string resource: - description: Resource is the ClusterOperator + description: resource is the ClusterOperator resource that represents the operator properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -1200,23 +1297,25 @@ spec: type: object type: object clusterVersion: - description: ClusterVersionStatusInsight is a status - insight about the state of a control plane update, - where the control plane is represented by a ClusterVersion + description: clusterVersion is a status insight + about the state of a control plane update, where + the control plane is represented by a ClusterVersion resource usually managed by CVO properties: assessment: - description: Assessment is the assessment of + description: assessment is the assessment of the control plane update process type: string completedAt: - description: CompletedAt is the time when the + description: completedAt is the time when the update completed format: date-time type: string completion: - description: Completion is a percentage of the + description: completion is a percentage of the update completion (0-100) + maximum: 100 + minimum: 0 type: integer conditions: description: Conditions provides details about @@ -1310,20 +1409,20 @@ spec: - type x-kubernetes-list-type: map estimatedCompletedAt: - description: EstimatedCompletedAt is the estimated + description: estimatedCompletedAt is the estimated time when the update will complete format: date-time type: string resource: - description: Resource is the ClusterVersion + description: resource is the ClusterVersion resource that represents the control plane properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -1334,30 +1433,39 @@ spec: type: string type: object startedAt: - description: StartedAt is the time when the + description: startedAt is the time when the update started format: date-time type: string versions: - description: Versions contains the original + description: versions contains the original and target versions of the upgrade properties: previous: - description: Previous is the version of + description: previous is the version of the control plane before the update properties: metadata: - description: Metadata is a list of metadata + description: metadata is a list of metadata associated with the version items: properties: bool: - type: boolean + type: bool + integer: + type: int key: type: string string: type: string type: + description: VersionMetadataType + is the type of the metadata + value + enum: + - string + - bool + - int type: string type: object type: array @@ -1365,26 +1473,35 @@ spec: - key x-kubernetes-list-type: map version: - description: Version is the version - of the edge + description: version is a semantic version + string type: string type: object target: - description: Target is the version of the + description: target is the version of the control plane after the update properties: metadata: - description: Metadata is a list of metadata + description: metadata is a list of metadata associated with the version items: properties: bool: - type: boolean + type: bool + integer: + type: int key: type: string string: type: string type: + description: VersionMetadataType + is the type of the metadata + value + enum: + - string + - bool + - int type: string type: object type: array @@ -1392,78 +1509,98 @@ spec: - key x-kubernetes-list-type: map version: - description: Version is the version - of the edge + description: version is a semantic version + string type: string type: object type: object type: object health: - description: UpdateHealthInsight is a generic health - insight about the update. It does not represent - a status of any specific resource but surfaces - actionable information about the health of the - cluster or an update + description: health is a generic health insight + about the update. It does not represent a status + of any specific resource but surfaces actionable + information about the health of the cluster or + an update properties: impact: - description: Impact describes the impact the + description: impact describes the impact the reported condition has on the cluster or update properties: description: - description: Description is a human-oriented - description of the condition reported - by the insight + description: description is a human-oriented, + possibly longer-form description of the + condition reported by the insight type: string level: - description: Level is the severity of the + allOf: + - enum: + - unknown + - info + - warning + - error + - critical + - enum: + - unknown + - info + - warning + - error + - critical + description: level is the severity of the impact - enum: - - info - - warning - - error - - critical type: string summary: - description: Summary is a short summary + description: summary is a short summary of the impact type: string type: - description: Type is the type of the impact - enum: - - None - - Unknown - - API Availability - - Cluster Capacity - - Application Availability - - Application Outage - - Data Loss - - Update Speed - - Update Stalled + allOf: + - enum: + - None + - Unknown + - API Availability + - Cluster Capacity + - Application Availability + - Application Outage + - Data Loss + - Update Speed + - Update Stalled + - enum: + - None + - Unknown + - API Availability + - Cluster Capacity + - Application Availability + - Application Outage + - Data Loss + - Update Speed + - Update Stalled + description: type is the type of the impact type: string type: object remediation: - description: Remediation contains ... TODO + description: remediation contains information + about how to resolve or prevent the reported + condition properties: estimatedFinish: - description: EstimatedFinish is the estimated + description: estimatedFinish is the estimated time when the informer expects the condition - to be resolved, if applicable. This should - normally only be provided by system level - insights (impact level=status) + to be resolved, if applicable. format: date-time type: string reference: - description: Reference is a URL where administrators + description: reference is a URL where administrators can find information to resolve or prevent the reported condition + format: uri type: string type: object scope: - description: Scope is list of objects involved + description: scope is list of objects involved in the insight properties: resources: - description: Resources is a list of resources + description: resources is a list of resources involved in the insight items: description: ResourceRef is a reference @@ -1472,10 +1609,10 @@ spec: properties: apiGroup: description: APIGroup of the object - being referenced + being referenced, if any type: string kind: - description: Kind of object being + description: kind of object being referenced type: string name: @@ -1489,39 +1626,42 @@ spec: type: object type: array type: - description: Type is either ControlPlane + allOf: + - enum: + - ControlPlane + - WorkerPool + - enum: + - ControlPlane + - WorkerPool + description: type is either ControlPlane or WorkerPool - enum: - - ControlPlane - - WorkerPool type: string - required: - - type type: object startedAt: - description: StartedAt is the time when the + description: startedAt is the time when the condition reported by the insight started format: date-time type: string type: object machineConfigPool: - description: MachineConfigPoolStatusInsight is a - status insight about the state of a worker pool - update, where the worker pool is represented by - a MachineConfigPool resource + description: machineConfigPool is a status insight + about the state of a worker pool update, where + the worker pool is represented by a MachineConfigPool + resource properties: assessment: - description: Assessment is the assessment of + description: assessment is the assessment of the machine config pool update process type: string completion: - description: Completion is a percentage of the + description: completion is a percentage of the update completion (0-100) - format: int32 + maximum: 100 + minimum: 0 type: integer conditions: - description: Conditions provide details about - the machine config pool + description: conditions provide details about + the machine config pool update items: description: "Condition contains details for one aspect of the current state of this @@ -1611,19 +1751,19 @@ spec: - type x-kubernetes-list-type: map name: - description: Name is the name of the machine + description: name is the name of the machine config pool type: string resource: - description: Resource is the MachineConfigPool + description: resource is the MachineConfigPool resource that represents the pool properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -1634,28 +1774,50 @@ spec: type: string type: object scopeType: - description: Scope describes whether the pool - is a control plane or a worker pool - enum: - - ControlPlane - - WorkerPool + allOf: + - enum: + - ControlPlane + - WorkerPool + - enum: + - ControlPlane + - WorkerPool + description: scopeType describes whether the + pool is a control plane or a worker pool type: string summaries: - description: Summaries is a list of counts of + description: summaries is a list of counts of nodes matching certain criteria (e.g. updated, degraded, etc.) items: + description: NodeSummary is a count of nodes + matching certain criteria (e.g. updated, + degraded, etc.) properties: count: - description: Count is the number of nodes + description: count is the number of nodes matching the criteria - format: int32 + minimum: 0 type: integer type: - description: Type is the type of the summary + allOf: + - enum: + - Total + - Available + - Progressing + - Outdated + - Draining + - Excluded + - Degraded + - enum: + - Total + - Available + - Progressing + - Outdated + - Draining + - Excluded + - Degraded + description: type is the type of the summary type: string - required: - - type type: object type: array x-kubernetes-list-map-keys: @@ -1663,12 +1825,12 @@ spec: x-kubernetes-list-type: map type: object node: - description: NodeStatusInsight is a status insight - about the state of a worker node update, where - the worker node is represented by a Node resource + description: node is a status insight about the + state of a worker node update, where the worker + node is represented by a Node resource properties: conditions: - description: Conditions provides details about + description: conditions provides details about the control plane update items: description: "Condition contains details for @@ -1759,26 +1921,26 @@ spec: - type x-kubernetes-list-type: map estToComplete: - description: EstToComplete is the estimated + description: estToComplete is the estimated time to complete the update, when known type: string message: - description: Message is a human-readable message - about the node update status + description: message is a short human-readable + message about the node update status type: string name: - description: Name is the name of the node + description: name is the name of the node type: string poolResource: - description: PoolResource is the resource that + description: poolResource is the resource that represents the pool the node is a member of properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -1789,15 +1951,15 @@ spec: type: string type: object resource: - description: Resource is the Node resource that + description: resource is the Node resource that represents the node properties: apiGroup: description: APIGroup of the object being - referenced + referenced, if any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced @@ -1808,14 +1970,29 @@ spec: type: string type: object version: - description: Version is the version of the node, + description: version is the version of the node, when known type: string type: object type: + allOf: + - enum: + - ClusterVersion + - ClusterOperator + - MachineConfigPool + - Node + - UpdateHealth + - enum: + - ClusterVersion + - ClusterOperator + - MachineConfigPool + - Node + - UpdateHealth + description: type identifies the type of the update + insight type: string uid: - description: UID identifies an insight over time + description: uid identifies the insight over time type: string type: object type: array @@ -1830,16 +2007,17 @@ spec: - name x-kubernetes-list-type: map name: - description: Name is the name of the pool + description: name is the name of the pool type: string resource: - description: Resource is the resource that represents the pool + description: resource is the resource that represents the pool properties: apiGroup: - description: APIGroup of the object being referenced + description: APIGroup of the object being referenced, if + any type: string kind: - description: Kind of object being referenced + description: kind of object being referenced type: string name: description: Name of the object being referenced diff --git a/update/v1alpha1/zz_generated.swagger_doc_generated.go b/update/v1alpha1/zz_generated.swagger_doc_generated.go index 63e60894456..3170bf06e80 100644 --- a/update/v1alpha1/zz_generated.swagger_doc_generated.go +++ b/update/v1alpha1/zz_generated.swagger_doc_generated.go @@ -12,9 +12,10 @@ package v1alpha1 // AUTO-GENERATED FUNCTIONS START HERE var map_ClusterOperatorStatusInsight = map[string]string{ - "name": "Name is the name of the operator", - "resource": "Resource is the ClusterOperator resource that represents the operator", - "conditions": "Conditions provide details about the operator", + "": "ClusterOperatorStatusInsight reports the state of a ClusterOperator resource (which represents a control plane component update in standalone clusters), during the update", + "name": "name is the name of the operator", + "resource": "resource is the ClusterOperator resource that represents the operator", + "conditions": "conditions provide details about the operator", } func (ClusterOperatorStatusInsight) SwaggerDoc() map[string]string { @@ -22,13 +23,14 @@ func (ClusterOperatorStatusInsight) SwaggerDoc() map[string]string { } var map_ClusterVersionStatusInsight = map[string]string{ - "resource": "Resource is the ClusterVersion resource that represents the control plane", - "assessment": "Assessment is the assessment of the control plane update process", - "versions": "Versions contains the original and target versions of the upgrade", - "completion": "Completion is a percentage of the update completion (0-100)", - "startedAt": "StartedAt is the time when the update started", - "completedAt": "CompletedAt is the time when the update completed", - "estimatedCompletedAt": "EstimatedCompletedAt is the estimated time when the update will complete", + "": "ClusterVersionStatusInsight reports the state of a ClusterVersion resource (which represents a control plane update in standalone clusters), during the update.", + "resource": "resource is the ClusterVersion resource that represents the control plane", + "assessment": "assessment is the assessment of the control plane update process", + "versions": "versions contains the original and target versions of the upgrade", + "completion": "completion is a percentage of the update completion (0-100)", + "startedAt": "startedAt is the time when the update started", + "completedAt": "completedAt is the time when the update completed", + "estimatedCompletedAt": "estimatedCompletedAt is the estimated time when the update will complete", "conditions": "Conditions provides details about the control plane update", } @@ -37,10 +39,11 @@ func (ClusterVersionStatusInsight) SwaggerDoc() map[string]string { } var map_ControlPlaneUpdateStatus = map[string]string{ - "": "ControlPlaneUpdateStatus contains a summary and insights related to the control plane update", - "resource": "Resource is the resource that represents the control plane. It will typically be a ClusterVersion resource in standalone OpenShift and HostedCluster in HCP.", - "informers": "Informers is a list of insight producers, each carries a list of insights", - "conditions": "Conditions provides details about the control plane update", + "": "ControlPlaneUpdateStatus contains a summary and insights related to the control plane update", + "resource": "resource is the resource that represents the control plane. It will typically be a ClusterVersion resource in standalone OpenShift and HostedCluster in HCP.", + "poolResource": "poolResource is the resource that represents control plane node pool, typically a MachineConfigPool. This field is optional because some form factors (like HCP) do not have dedicated control plane node pools.", + "informers": "informers is a list of insight producers, each carries a list of insights relevant for control plane", + "conditions": "conditions provides details about the control plane update", } func (ControlPlaneUpdateStatus) SwaggerDoc() map[string]string { @@ -49,8 +52,8 @@ func (ControlPlaneUpdateStatus) SwaggerDoc() map[string]string { var map_ControlPlaneUpdateVersions = map[string]string{ "": "ControlPlaneUpdateVersions contains the original and target versions of the upgrade", - "previous": "Previous is the version of the control plane before the update", - "target": "Target is the version of the control plane after the update", + "previous": "previous is the version of the control plane before the update", + "target": "target is the version of the control plane after the update", } func (ControlPlaneUpdateVersions) SwaggerDoc() map[string]string { @@ -58,13 +61,14 @@ func (ControlPlaneUpdateVersions) SwaggerDoc() map[string]string { } var map_MachineConfigPoolStatusInsight = map[string]string{ - "name": "Name is the name of the machine config pool", - "resource": "Resource is the MachineConfigPool resource that represents the pool", - "scopeType": "Scope describes whether the pool is a control plane or a worker pool", - "assessment": "Assessment is the assessment of the machine config pool update process", - "completion": "Completion is a percentage of the update completion (0-100)", - "summaries": "Summaries is a list of counts of nodes matching certain criteria (e.g. updated, degraded, etc.)", - "conditions": "Conditions provide details about the machine config pool", + "": "ClusterVersionStatusInsight reports the state of a MachineConfigPool resource during the update", + "name": "name is the name of the machine config pool", + "resource": "resource is the MachineConfigPool resource that represents the pool", + "scopeType": "scopeType describes whether the pool is a control plane or a worker pool", + "assessment": "assessment is the assessment of the machine config pool update process", + "completion": "completion is a percentage of the update completion (0-100)", + "summaries": "summaries is a list of counts of nodes matching certain criteria (e.g. updated, degraded, etc.)", + "conditions": "conditions provide details about the machine config pool update", } func (MachineConfigPoolStatusInsight) SwaggerDoc() map[string]string { @@ -72,30 +76,32 @@ func (MachineConfigPoolStatusInsight) SwaggerDoc() map[string]string { } var map_NodeStatusInsight = map[string]string{ - "name": "Name is the name of the node", - "resource": "Resource is the Node resource that represents the node", - "poolResource": "PoolResource is the resource that represents the pool the node is a member of", - "version": "Version is the version of the node, when known", - "estToComplete": "EstToComplete is the estimated time to complete the update, when known", - "message": "Message is a human-readable message about the node update status", - "conditions": "Conditions provides details about the control plane update", + "": "NodeStatusInsight reports the state of a Node during the update", + "name": "name is the name of the node", + "resource": "resource is the Node resource that represents the node", + "poolResource": "poolResource is the resource that represents the pool the node is a member of", + "version": "version is the version of the node, when known", + "estToComplete": "estToComplete is the estimated time to complete the update, when known", + "message": "message is a short human-readable message about the node update status", + "conditions": "conditions provides details about the control plane update", } func (NodeStatusInsight) SwaggerDoc() map[string]string { return map_NodeStatusInsight } -var map_PoolNodesUpdateSummary = map[string]string{ - "type": "Type is the type of the summary", - "count": "Count is the number of nodes matching the criteria", +var map_NodeSummary = map[string]string{ + "": "NodeSummary is a count of nodes matching certain criteria (e.g. updated, degraded, etc.)", + "type": "type is the type of the summary", + "count": "count is the number of nodes matching the criteria", } -func (PoolNodesUpdateSummary) SwaggerDoc() map[string]string { - return map_PoolNodesUpdateSummary +func (NodeSummary) SwaggerDoc() map[string]string { + return map_NodeSummary } var map_PoolResourceRef = map[string]string{ - "": "PoolResourceRef is a reference to a kubernetes resource that represents a worker pool", + "": "PoolResourceRef is a reference to a kubernetes resource that represents a node pool", } func (PoolResourceRef) SwaggerDoc() map[string]string { @@ -104,10 +110,10 @@ func (PoolResourceRef) SwaggerDoc() map[string]string { var map_PoolUpdateStatus = map[string]string{ "": "PoolUpdateStatus contains a summary and insights related to a node pool update", - "name": "Name is the name of the pool", - "resource": "Resource is the resource that represents the pool", - "informers": "Informers is a list of insight producers, each carries a list of insights", - "conditions": "Conditions provide details about the pool", + "name": "name is the name of the pool", + "resource": "resource is the resource that represents the pool", + "informers": "informers is a list of insight producers, each carries a list of insights", + "conditions": "conditions provide details about the pool", } func (PoolUpdateStatus) SwaggerDoc() map[string]string { @@ -116,8 +122,8 @@ func (PoolUpdateStatus) SwaggerDoc() map[string]string { var map_ResourceRef = map[string]string{ "": "ResourceRef is a reference to a kubernetes resource, typically involved in an insight", - "kind": "Kind of object being referenced", - "apiGroup": "APIGroup of the object being referenced", + "kind": "kind of object being referenced", + "apiGroup": "APIGroup of the object being referenced, if any", "name": "Name of the object being referenced", "namespace": "Namespace of the object being referenced, if any", } @@ -126,21 +132,12 @@ func (ResourceRef) SwaggerDoc() map[string]string { return map_ResourceRef } -var map_UpdateEdgeVersion = map[string]string{ - "version": "Version is the version of the edge", - "metadata": "Metadata is a list of metadata associated with the version", -} - -func (UpdateEdgeVersion) SwaggerDoc() map[string]string { - return map_UpdateEdgeVersion -} - var map_UpdateHealthInsight = map[string]string{ "": "UpdateHealthInsight is a piece of actionable information produced by an insight producer about the health of the cluster or an update", - "startedAt": "StartedAt is the time when the condition reported by the insight started", - "scope": "Scope is list of objects involved in the insight", - "impact": "Impact describes the impact the reported condition has on the cluster or update", - "remediation": "Remediation contains ... TODO", + "startedAt": "startedAt is the time when the condition reported by the insight started", + "scope": "scope is list of objects involved in the insight", + "impact": "impact describes the impact the reported condition has on the cluster or update", + "remediation": "remediation contains information about how to resolve or prevent the reported condition", } func (UpdateHealthInsight) SwaggerDoc() map[string]string { @@ -158,13 +155,8 @@ func (UpdateInformer) SwaggerDoc() map[string]string { } var map_UpdateInsight = map[string]string{ - "uid": "UID identifies an insight over time", - "acquisitionTime": "AcquiredAt is the time when the data was acquired by the producer", - "clusterVersion": "ClusterVersionStatusInsight is a status insight about the state of a control plane update, where the control plane is represented by a ClusterVersion resource usually managed by CVO", - "clusterOperator": "ClusterOperatorStatusInsight is a status insight about the state of a control plane cluster operator update represented by a ClusterOperator resource", - "machineConfigPool": "MachineConfigPoolStatusInsight is a status insight about the state of a worker pool update, where the worker pool is represented by a MachineConfigPool resource", - "node": "NodeStatusInsight is a status insight about the state of a worker node update, where the worker node is represented by a Node resource", - "health": "UpdateHealthInsight is a generic health insight about the update. It does not represent a status of any specific resource but surfaces actionable information about the health of the cluster or an update", + "uid": "uid identifies the insight over time", + "acquiredAt": "acquiredAt is the time when the data was acquired by the producer", } func (UpdateInsight) SwaggerDoc() map[string]string { @@ -173,10 +165,10 @@ func (UpdateInsight) SwaggerDoc() map[string]string { var map_UpdateInsightImpact = map[string]string{ "": "UpdateInsightImpact describes the impact the reported condition has on the cluster or update", - "level": "Level is the severity of the impact", - "type": "Type is the type of the impact", - "summary": "Summary is a short summary of the impact", - "description": "Description is a human-oriented description of the condition reported by the insight", + "level": "level is the severity of the impact", + "type": "type is the type of the impact", + "summary": "summary is a short summary of the impact", + "description": "description is a human-oriented, possibly longer-form description of the condition reported by the insight", } func (UpdateInsightImpact) SwaggerDoc() map[string]string { @@ -184,9 +176,9 @@ func (UpdateInsightImpact) SwaggerDoc() map[string]string { } var map_UpdateInsightRemediation = map[string]string{ - "": "UpdateInsightRemediation contains ... TODO", - "reference": "Reference is a URL where administrators can find information to resolve or prevent the reported condition", - "estimatedFinish": "EstimatedFinish is the estimated time when the informer expects the condition to be resolved, if applicable. This should normally only be provided by system level insights (impact level=status)", + "": "UpdateInsightRemediation contains information about how to resolve or prevent the reported condition", + "reference": "reference is a URL where administrators can find information to resolve or prevent the reported condition", + "estimatedFinish": "estimatedFinish is the estimated time when the informer expects the condition to be resolved, if applicable.", } func (UpdateInsightRemediation) SwaggerDoc() map[string]string { @@ -194,17 +186,30 @@ func (UpdateInsightRemediation) SwaggerDoc() map[string]string { } var map_UpdateInsightScope = map[string]string{ - "": "UpdateInsightScope is a list of objects involved in the insight", - "type": "Type is either ControlPlane or WorkerPool", - "resources": "Resources is a list of resources involved in the insight", + "": "UpdateInsightScope is a list of resources involved in the insight", + "type": "type is either ControlPlane or WorkerPool", + "resources": "resources is a list of resources involved in the insight", } func (UpdateInsightScope) SwaggerDoc() map[string]string { return map_UpdateInsightScope } +var map_UpdateInsightUnion = map[string]string{ + "type": "type identifies the type of the update insight", + "clusterVersion": "clusterVersion is a status insight about the state of a control plane update, where the control plane is represented by a ClusterVersion resource usually managed by CVO", + "clusterOperator": "clusterOperator is a status insight about the state of a control plane cluster operator update represented by a ClusterOperator resource", + "machineConfigPool": "machineConfigPool is a status insight about the state of a worker pool update, where the worker pool is represented by a MachineConfigPool resource", + "node": "node is a status insight about the state of a worker node update, where the worker node is represented by a Node resource", + "health": "health is a generic health insight about the update. It does not represent a status of any specific resource but surfaces actionable information about the health of the cluster or an update", +} + +func (UpdateInsightUnion) SwaggerDoc() map[string]string { + return map_UpdateInsightUnion +} + var map_UpdateStatus = map[string]string{ - "": "UpdateStatus is the API about in-progress updates, kept populated by Update Status Controller by aggregating and summarizing UpdateInformers\n\nCompatibility level 4: No compatibility is provided, the API can change at any point for any reason. These capabilities should not be used by applications needing long term support.", + "": "UpdateStatus is the API about in-progress updates, kept populated by Update Status Controller by aggregating and summarizing UpdateInsights produced by update informers\n\nCompatibility level 4: No compatibility is provided, the API can change at any point for any reason. These capabilities should not be used by applications needing long term support.", } func (UpdateStatus) SwaggerDoc() map[string]string { @@ -228,14 +233,24 @@ func (UpdateStatusSpec) SwaggerDoc() map[string]string { } var map_UpdateStatusStatus = map[string]string{ - "": "UpdateStatusStatus is the API about in-progress updates, kept populated by Update Status Controller by aggregating and summarizing UpdateInformers", - "controlPlane": "ControlPlaneUpdateStatus contains a summary and insights related to the control plane update", - "workerPools": "WorkerPoolsUpdateStatus contains summaries and insights related to the worker pools update", - "conditions": "Conditions provide details about Update Status Controller operational matters", + "": "UpdateStatusStatus is the API about in-progress updates, kept populated by Update Status Controller by aggregating and summarizing UpdateInsights produced by update informers", + "controlPlane": "controlPlane contains a summary and insights related to the control plane update", + "workerPools": "workerPools contains summaries and insights related to the worker pools update", + "conditions": "conditions provide details about Update Status Controller operational matters", } func (UpdateStatusStatus) SwaggerDoc() map[string]string { return map_UpdateStatusStatus } +var map_Version = map[string]string{ + "": "Version describes a version involved in an update, typically on one side of an update edge", + "version": "version is a semantic version string", + "metadata": "metadata is a list of metadata associated with the version", +} + +func (Version) SwaggerDoc() map[string]string { + return map_Version +} + // AUTO-GENERATED FUNCTIONS END HERE