diff --git a/openapi/generated_openapi/zz_generated.openapi.go b/openapi/generated_openapi/zz_generated.openapi.go index c99ce86ec43..24611d1881c 100644 --- a/openapi/generated_openapi/zz_generated.openapi.go +++ b/openapi/generated_openapi/zz_generated.openapi.go @@ -1222,6 +1222,30 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA "github.com/openshift/api/template/v1.TemplateInstanceSpec": schema_openshift_api_template_v1_TemplateInstanceSpec(ref), "github.com/openshift/api/template/v1.TemplateInstanceStatus": schema_openshift_api_template_v1_TemplateInstanceStatus(ref), "github.com/openshift/api/template/v1.TemplateList": schema_openshift_api_template_v1_TemplateList(ref), + "github.com/openshift/api/update/v1alpha1.ClusterOperatorStatusInsight": schema_openshift_api_update_v1alpha1_ClusterOperatorStatusInsight(ref), + "github.com/openshift/api/update/v1alpha1.ClusterVersionStatusInsight": schema_openshift_api_update_v1alpha1_ClusterVersionStatusInsight(ref), + "github.com/openshift/api/update/v1alpha1.ControlPlaneUpdateStatus": schema_openshift_api_update_v1alpha1_ControlPlaneUpdateStatus(ref), + "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.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.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), @@ -62815,6 +62839,1238 @@ func schema_openshift_api_template_v1_TemplateList(ref common.ReferenceCallback) } } +func schema_openshift_api_update_v1alpha1_ClusterOperatorStatusInsight(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + 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", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "resource": { + SchemaProps: spec.SchemaProps{ + Description: "resource is the ClusterOperator resource that represents the operator", + Default: map[string]interface{}{}, + Ref: ref("github.com/openshift/api/update/v1alpha1.ResourceRef"), + }, + }, + "conditions": { + VendorExtensible: spec.VendorExtensible{ + Extensions: spec.Extensions{ + "x-kubernetes-list-map-keys": []interface{}{ + "type", + }, + "x-kubernetes-list-type": "map", + }, + }, + SchemaProps: spec.SchemaProps{ + Description: "conditions provide details about the operator", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Condition"), + }, + }, + }, + }, + }, + }, + Required: []string{"name", "resource"}, + }, + }, + Dependencies: []string{ + "github.com/openshift/api/update/v1alpha1.ResourceRef", "k8s.io/apimachinery/pkg/apis/meta/v1.Condition"}, + } +} + +func schema_openshift_api_update_v1alpha1_ClusterVersionStatusInsight(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + 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", + 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", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "versions": { + SchemaProps: spec.SchemaProps{ + 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)", + Default: 0, + Type: []string{"integer"}, + Format: "byte", + }, + }, + "startedAt": { + SchemaProps: spec.SchemaProps{ + Description: "startedAt is the time when the update started", + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), + }, + }, + "completedAt": { + SchemaProps: spec.SchemaProps{ + Description: "completedAt is the time when the update completed", + 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", + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), + }, + }, + "conditions": { + VendorExtensible: spec.VendorExtensible{ + Extensions: spec.Extensions{ + "x-kubernetes-list-map-keys": []interface{}{ + "type", + }, + "x-kubernetes-list-type": "map", + }, + }, + SchemaProps: spec.SchemaProps{ + Description: "Conditions provides details about the control plane update", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Condition"), + }, + }, + }, + }, + }, + }, + Required: []string{"resource", "assessment", "versions", "completion", "startedAt"}, + }, + }, + Dependencies: []string{ + "github.com/openshift/api/update/v1alpha1.ControlPlaneUpdateVersions", "github.com/openshift/api/update/v1alpha1.ResourceRef", "k8s.io/apimachinery/pkg/apis/meta/v1.Condition", "k8s.io/apimachinery/pkg/apis/meta/v1.Time"}, + } +} + +func schema_openshift_api_update_v1alpha1_ControlPlaneUpdateStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "ControlPlaneUpdateStatus contains a summary and insights related to the control plane update", + Type: []string{"object"}, + 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 Hosted Control Planes.", + 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 Hosted Control Planes) do not have dedicated control plane node pools.", + Ref: ref("github.com/openshift/api/update/v1alpha1.PoolResourceRef"), + }, + }, + "informers": { + VendorExtensible: spec.VendorExtensible{ + Extensions: spec.Extensions{ + "x-kubernetes-list-map-keys": []interface{}{ + "name", + }, + "x-kubernetes-list-type": "map", + }, + }, + SchemaProps: spec.SchemaProps{ + 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{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("github.com/openshift/api/update/v1alpha1.UpdateInformer"), + }, + }, + }, + }, + }, + "conditions": { + VendorExtensible: spec.VendorExtensible{ + Extensions: spec.Extensions{ + "x-kubernetes-list-map-keys": []interface{}{ + "type", + }, + "x-kubernetes-list-type": "map", + }, + }, + SchemaProps: spec.SchemaProps{ + Description: "conditions provides details about the control plane update", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Condition"), + }, + }, + }, + }, + }, + }, + Required: []string{"resource"}, + }, + }, + Dependencies: []string{ + "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"}, + } +} + +func schema_openshift_api_update_v1alpha1_ControlPlaneUpdateVersions(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "ControlPlaneUpdateVersions contains the original and target versions of the upgrade", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "previous": { + SchemaProps: spec.SchemaProps{ + Description: "previous is the version of the control plane before the update. When the cluster is being installed for the first time, the version will have a placeholder value like '' and the target version will have a boolean installation=true metadata", + Default: map[string]interface{}{}, + 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", + Default: map[string]interface{}{}, + Ref: ref("github.com/openshift/api/update/v1alpha1.Version"), + }, + }, + }, + Required: []string{"previous", "target"}, + }, + }, + Dependencies: []string{ + "github.com/openshift/api/update/v1alpha1.Version"}, + } +} + +func schema_openshift_api_update_v1alpha1_MachineConfigPoolStatusInsight(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + 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", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "resource": { + SchemaProps: spec.SchemaProps{ + Description: "resource is the MachineConfigPool resource that represents the pool", + Default: map[string]interface{}{}, + Ref: ref("github.com/openshift/api/update/v1alpha1.PoolResourceRef"), + }, + }, + "scopeType": { + SchemaProps: spec.SchemaProps{ + Description: "scopeType describes whether the pool is a control plane or a worker pool", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "assessment": { + SchemaProps: spec.SchemaProps{ + Description: "assessment is the assessment of the machine config pool update process", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "completion": { + SchemaProps: spec.SchemaProps{ + Description: "completion is a percentage of the update completion (0-100)", + Default: 0, + Type: []string{"integer"}, + Format: "byte", + }, + }, + "summaries": { + VendorExtensible: spec.VendorExtensible{ + Extensions: spec.Extensions{ + "x-kubernetes-list-map-keys": []interface{}{ + "type", + }, + "x-kubernetes-list-type": "map", + }, + }, + SchemaProps: spec.SchemaProps{ + 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.NodeSummary"), + }, + }, + }, + }, + }, + "conditions": { + VendorExtensible: spec.VendorExtensible{ + Extensions: spec.Extensions{ + "x-kubernetes-list-map-keys": []interface{}{ + "type", + }, + "x-kubernetes-list-type": "map", + }, + }, + SchemaProps: spec.SchemaProps{ + Description: "conditions provide details about the machine config pool update", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Condition"), + }, + }, + }, + }, + }, + }, + Required: []string{"name", "resource", "scopeType", "assessment", "completion"}, + }, + }, + Dependencies: []string{ + "github.com/openshift/api/update/v1alpha1.NodeSummary", "github.com/openshift/api/update/v1alpha1.PoolResourceRef", "k8s.io/apimachinery/pkg/apis/meta/v1.Condition"}, + } +} + +func schema_openshift_api_update_v1alpha1_NodeStatusInsight(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + 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", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "resource": { + SchemaProps: spec.SchemaProps{ + 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", + 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", + Type: []string{"string"}, + Format: "", + }, + }, + "estToComplete": { + SchemaProps: spec.SchemaProps{ + 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 short human-readable message about the node update status", + Type: []string{"string"}, + Format: "", + }, + }, + "conditions": { + VendorExtensible: spec.VendorExtensible{ + Extensions: spec.Extensions{ + "x-kubernetes-list-map-keys": []interface{}{ + "type", + }, + "x-kubernetes-list-type": "map", + }, + }, + SchemaProps: spec.SchemaProps{ + Description: "conditions provides details about the control plane update", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Condition"), + }, + }, + }, + }, + }, + }, + Required: []string{"name", "resource", "poolResource"}, + }, + }, + Dependencies: []string{ + "github.com/openshift/api/update/v1alpha1.PoolResourceRef", "github.com/openshift/api/update/v1alpha1.ResourceRef", "k8s.io/apimachinery/pkg/apis/meta/v1.Condition", "k8s.io/apimachinery/pkg/apis/meta/v1.Duration"}, + } +} + +func schema_openshift_api_update_v1alpha1_NodeSummary(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + 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", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "count": { + SchemaProps: spec.SchemaProps{ + Description: "count is the number of nodes matching the criteria", + Default: 0, + Type: []string{"integer"}, + Format: "byte", + }, + }, + }, + Required: []string{"type", "count"}, + }, + }, + } +} + +func schema_openshift_api_update_v1alpha1_PoolResourceRef(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + 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", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "apiGroup": { + SchemaProps: spec.SchemaProps{ + Description: "APIGroup of the object being referenced, if any", + Type: []string{"string"}, + Format: "", + }, + }, + "name": { + SchemaProps: spec.SchemaProps{ + Description: "Name of the object being referenced", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "namespace": { + SchemaProps: spec.SchemaProps{ + Description: "Namespace of the object being referenced, if any", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"kind", "name"}, + }, + }, + } +} + +func schema_openshift_api_update_v1alpha1_PoolUpdateStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "PoolUpdateStatus contains a summary and insights related to a node pool update", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "name": { + SchemaProps: spec.SchemaProps{ + Description: "name is the name of the pool", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "resource": { + SchemaProps: spec.SchemaProps{ + Description: "resource is the resource that represents the pool", + Default: map[string]interface{}{}, + Ref: ref("github.com/openshift/api/update/v1alpha1.PoolResourceRef"), + }, + }, + "informers": { + VendorExtensible: spec.VendorExtensible{ + Extensions: spec.Extensions{ + "x-kubernetes-list-map-keys": []interface{}{ + "name", + }, + "x-kubernetes-list-type": "map", + }, + }, + SchemaProps: spec.SchemaProps{ + Description: "informers is a list of insight producers, each carries a list of insights", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("github.com/openshift/api/update/v1alpha1.UpdateInformer"), + }, + }, + }, + }, + }, + "conditions": { + VendorExtensible: spec.VendorExtensible{ + Extensions: spec.Extensions{ + "x-kubernetes-list-map-keys": []interface{}{ + "type", + }, + "x-kubernetes-list-type": "map", + }, + }, + SchemaProps: spec.SchemaProps{ + Description: "conditions provide details about the pool", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Condition"), + }, + }, + }, + }, + }, + }, + Required: []string{"name", "resource"}, + }, + }, + Dependencies: []string{ + "github.com/openshift/api/update/v1alpha1.PoolResourceRef", "github.com/openshift/api/update/v1alpha1.UpdateInformer", "k8s.io/apimachinery/pkg/apis/meta/v1.Condition"}, + } +} + +func schema_openshift_api_update_v1alpha1_ResourceRef(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "ResourceRef is a reference to a kubernetes resource, typically involved in an insight", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "kind of object being referenced", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "apiGroup": { + SchemaProps: spec.SchemaProps{ + Description: "APIGroup of the object being referenced, if any", + Type: []string{"string"}, + Format: "", + }, + }, + "name": { + SchemaProps: spec.SchemaProps{ + Description: "Name of the object being referenced", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "namespace": { + SchemaProps: spec.SchemaProps{ + Description: "Namespace of the object being referenced, if any", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"kind", "name"}, + }, + }, + } +} + +func schema_openshift_api_update_v1alpha1_UpdateHealthInsight(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "UpdateHealthInsight is a piece of actionable information produced by an insight producer about the health of the cluster or an update", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "startedAt": { + SchemaProps: spec.SchemaProps{ + Description: "startedAt is the time when the condition reported by the insight started", + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), + }, + }, + "scope": { + SchemaProps: spec.SchemaProps{ + 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", + Default: map[string]interface{}{}, + Ref: ref("github.com/openshift/api/update/v1alpha1.UpdateInsightImpact"), + }, + }, + "remediation": { + SchemaProps: spec.SchemaProps{ + 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", "scope", "impact", "remediation"}, + }, + }, + Dependencies: []string{ + "github.com/openshift/api/update/v1alpha1.UpdateInsightImpact", "github.com/openshift/api/update/v1alpha1.UpdateInsightRemediation", "github.com/openshift/api/update/v1alpha1.UpdateInsightScope", "k8s.io/apimachinery/pkg/apis/meta/v1.Time"}, + } +} + +func schema_openshift_api_update_v1alpha1_UpdateInformer(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "UpdateInformer is an insight producer identified by a name, carrying a list of insights it produced", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "name": { + SchemaProps: spec.SchemaProps{ + Description: "Name is the name of the insight producer", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "insights": { + VendorExtensible: spec.VendorExtensible{ + Extensions: spec.Extensions{ + "x-kubernetes-list-map-keys": []interface{}{ + "uid", + }, + "x-kubernetes-list-type": "map", + }, + }, + SchemaProps: spec.SchemaProps{ + Description: "Insights is a list of insights produced by this producer", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("github.com/openshift/api/update/v1alpha1.UpdateInsight"), + }, + }, + }, + }, + }, + }, + Required: []string{"name"}, + }, + }, + Dependencies: []string{ + "github.com/openshift/api/update/v1alpha1.UpdateInsight"}, + } +} + +func schema_openshift_api_update_v1alpha1_UpdateInsight(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "uid": { + SchemaProps: spec.SchemaProps{ + Description: "uid identifies the insight over time", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "acquiredAt": { + SchemaProps: spec.SchemaProps{ + Description: "acquiredAt is the time when the data was acquired by the producer", + 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: "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{"uid", "acquiredAt", "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", "k8s.io/apimachinery/pkg/apis/meta/v1.Time"}, + } +} + +func schema_openshift_api_update_v1alpha1_UpdateInsightImpact(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "UpdateInsightImpact describes the impact the reported condition has on the cluster or update", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "level": { + SchemaProps: spec.SchemaProps{ + Description: "level is the severity of the impact", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "type": { + SchemaProps: spec.SchemaProps{ + Description: "type is the type of the impact", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "summary": { + SchemaProps: spec.SchemaProps{ + Description: "summary is a short summary of the impact", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "description": { + SchemaProps: spec.SchemaProps{ + Description: "description is a human-oriented, possibly longer-form description of the condition reported by the insight", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"level", "type", "summary"}, + }, + }, + } +} + +func schema_openshift_api_update_v1alpha1_UpdateInsightRemediation(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + 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", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "estimatedFinish": { + SchemaProps: spec.SchemaProps{ + Description: "estimatedFinish is the estimated time when the informer expects the condition to be resolved, if applicable.", + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), + }, + }, + }, + Required: []string{"reference"}, + }, + }, + Dependencies: []string{ + "k8s.io/apimachinery/pkg/apis/meta/v1.Time"}, + } +} + +func schema_openshift_api_update_v1alpha1_UpdateInsightScope(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + 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", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "resources": { + VendorExtensible: spec.VendorExtensible{ + Extensions: spec.Extensions{ + "x-kubernetes-list-type": "set", + }, + }, + SchemaProps: spec.SchemaProps{ + Description: "resources is a list of resources involved in the insight", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("github.com/openshift/api/update/v1alpha1.ResourceRef"), + }, + }, + }, + }, + }, + }, + Required: []string{"type"}, + }, + }, + Dependencies: []string{ + "github.com/openshift/api/update/v1alpha1.ResourceRef"}, + } +} + +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 reports status for in-progress cluster version updates\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": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, + "metadata": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"), + }, + }, + "spec": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("github.com/openshift/api/update/v1alpha1.UpdateStatusSpec"), + }, + }, + "status": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("github.com/openshift/api/update/v1alpha1.UpdateStatusStatus"), + }, + }, + }, + Required: []string{"spec"}, + }, + }, + Dependencies: []string{ + "github.com/openshift/api/update/v1alpha1.UpdateStatusSpec", "github.com/openshift/api/update/v1alpha1.UpdateStatusStatus", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"}, + } +} + +func schema_openshift_api_update_v1alpha1_UpdateStatusList(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "UpdateStatusList is a list of UpdateStatus resources\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": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, + "metadata": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), + }, + }, + "items": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("github.com/openshift/api/update/v1alpha1.UpdateStatus"), + }, + }, + }, + }, + }, + }, + Required: []string{"metadata", "items"}, + }, + }, + Dependencies: []string{ + "github.com/openshift/api/update/v1alpha1.UpdateStatus", "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"}, + } +} + +func schema_openshift_api_update_v1alpha1_UpdateStatusSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "UpdateStatusSpec is empty for now, can possibly hold configuration for Update Status Controller in the future", + Type: []string{"object"}, + }, + }, + } +} + +func schema_openshift_api_update_v1alpha1_UpdateStatusStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { + 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 UpdateInsights produced by update informers", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "controlPlane": { + SchemaProps: spec.SchemaProps{ + 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": { + VendorExtensible: spec.VendorExtensible{ + Extensions: spec.Extensions{ + "x-kubernetes-list-map-keys": []interface{}{ + "name", + }, + "x-kubernetes-list-type": "map", + }, + }, + SchemaProps: spec.SchemaProps{ + Description: "workerPools contains summaries and insights related to the worker pools update", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("github.com/openshift/api/update/v1alpha1.PoolUpdateStatus"), + }, + }, + }, + }, + }, + "conditions": { + VendorExtensible: spec.VendorExtensible{ + Extensions: spec.Extensions{ + "x-kubernetes-list-map-keys": []interface{}{ + "type", + }, + "x-kubernetes-list-type": "map", + }, + }, + SchemaProps: spec.SchemaProps{ + Description: "conditions provide details about Update Status Controller operational matters", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Condition"), + }, + }, + }, + }, + }, + }, + Required: []string{"controlPlane"}, + }, + }, + Dependencies: []string{ + "github.com/openshift/api/update/v1alpha1.ControlPlaneUpdateStatus", "github.com/openshift/api/update/v1alpha1.PoolUpdateStatus", "k8s.io/apimachinery/pkg/apis/meta/v1.Condition"}, + } +} + +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, or a placeholder '' for the special case where this is a \"previous\" version in a new installation", + 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"), + }, + }, + }, + }, + }, + }, + Required: []string{"version"}, + }, + }, + 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{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "key": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "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: "", + }, + }, + }, + Required: []string{"key", "type"}, + }, + }, + } +} + +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: "", + }, + }, + }, + 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 5f13d3de189..5f3b79c02af 100644 --- a/openapi/openapi.json +++ b/openapi/openapi.json @@ -36778,6 +36778,763 @@ } } }, + "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", + "resource" + ], + "properties": { + "conditions": { + "description": "conditions provide details about the operator", + "type": "array", + "items": { + "default": {}, + "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.Condition" + }, + "x-kubernetes-list-map-keys": [ + "type" + ], + "x-kubernetes-list-type": "map" + }, + "name": { + "description": "name is the name of the operator", + "type": "string", + "default": "" + }, + "resource": { + "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" + ], + "properties": { + "assessment": { + "description": "assessment is the assessment of the control plane update process", + "type": "string", + "default": "" + }, + "completedAt": { + "description": "completedAt is the time when the update completed", + "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.Time" + }, + "completion": { + "description": "completion is a percentage of the update completion (0-100)", + "type": "integer", + "format": "byte", + "default": 0 + }, + "conditions": { + "description": "Conditions provides details about the control plane update", + "type": "array", + "items": { + "default": {}, + "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.Condition" + }, + "x-kubernetes-list-map-keys": [ + "type" + ], + "x-kubernetes-list-type": "map" + }, + "estimatedCompletedAt": { + "description": "estimatedCompletedAt is the estimated time when the update will complete", + "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.Time" + }, + "resource": { + "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", + "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.Time" + }, + "versions": { + "description": "versions contains the original and target versions of the upgrade", + "default": {}, + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.ControlPlaneUpdateVersions" + } + } + }, + "com.github.openshift.api.update.v1alpha1.ControlPlaneUpdateStatus": { + "description": "ControlPlaneUpdateStatus contains a summary and insights related to the control plane update", + "type": "object", + "required": [ + "resource" + ], + "properties": { + "conditions": { + "description": "conditions provides details about the control plane update", + "type": "array", + "items": { + "default": {}, + "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.Condition" + }, + "x-kubernetes-list-map-keys": [ + "type" + ], + "x-kubernetes-list-type": "map" + }, + "informers": { + "description": "informers is a list of insight producers, each carries a list of insights relevant for control plane", + "type": "array", + "items": { + "default": {}, + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.UpdateInformer" + }, + "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 Hosted Control Planes) do not have dedicated control plane node pools.", + "$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 Hosted Control Planes.", + "default": {}, + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.ResourceRef" + } + } + }, + "com.github.openshift.api.update.v1alpha1.ControlPlaneUpdateVersions": { + "description": "ControlPlaneUpdateVersions contains the original and target versions of the upgrade", + "type": "object", + "required": [ + "previous", + "target" + ], + "properties": { + "previous": { + "description": "previous is the version of the control plane before the update. When the cluster is being installed for the first time, the version will have a placeholder value like '' and the target version will have a boolean installation=true metadata", + "default": {}, + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.Version" + }, + "target": { + "description": "target is the version of the control plane after the update", + "default": {}, + "$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", + "resource", + "scopeType", + "assessment", + "completion" + ], + "properties": { + "assessment": { + "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)", + "type": "integer", + "format": "byte", + "default": 0 + }, + "conditions": { + "description": "conditions provide details about the machine config pool update", + "type": "array", + "items": { + "default": {}, + "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.Condition" + }, + "x-kubernetes-list-map-keys": [ + "type" + ], + "x-kubernetes-list-type": "map" + }, + "name": { + "description": "name is the name of the machine config pool", + "type": "string", + "default": "" + }, + "resource": { + "description": "resource is the MachineConfigPool resource that represents the pool", + "default": {}, + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.PoolResourceRef" + }, + "scopeType": { + "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.)", + "type": "array", + "items": { + "default": {}, + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.NodeSummary" + }, + "x-kubernetes-list-map-keys": [ + "type" + ], + "x-kubernetes-list-type": "map" + } + } + }, + "com.github.openshift.api.update.v1alpha1.NodeStatusInsight": { + "description": "NodeStatusInsight reports the state of a Node during the update", + "type": "object", + "required": [ + "name", + "resource", + "poolResource" + ], + "properties": { + "conditions": { + "description": "conditions provides details about the control plane update", + "type": "array", + "items": { + "default": {}, + "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.Condition" + }, + "x-kubernetes-list-map-keys": [ + "type" + ], + "x-kubernetes-list-type": "map" + }, + "estToComplete": { + "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 short human-readable message about the node update status", + "type": "string" + }, + "name": { + "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", + "default": {}, + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.PoolResourceRef" + }, + "resource": { + "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", + "type": "string" + } + } + }, + "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", + "count" + ], + "properties": { + "count": { + "description": "count is the number of nodes matching the criteria", + "type": "integer", + "format": "byte", + "default": 0 + }, + "type": { + "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 node pool", + "type": "object", + "required": [ + "kind", + "name" + ], + "properties": { + "apiGroup": { + "description": "APIGroup of the object being referenced, if any", + "type": "string" + }, + "kind": { + "description": "kind of object being referenced", + "type": "string", + "default": "" + }, + "name": { + "description": "Name of the object being referenced", + "type": "string", + "default": "" + }, + "namespace": { + "description": "Namespace of the object being referenced, if any", + "type": "string" + } + } + }, + "com.github.openshift.api.update.v1alpha1.PoolUpdateStatus": { + "description": "PoolUpdateStatus contains a summary and insights related to a node pool update", + "type": "object", + "required": [ + "name", + "resource" + ], + "properties": { + "conditions": { + "description": "conditions provide details about the pool", + "type": "array", + "items": { + "default": {}, + "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.Condition" + }, + "x-kubernetes-list-map-keys": [ + "type" + ], + "x-kubernetes-list-type": "map" + }, + "informers": { + "description": "informers is a list of insight producers, each carries a list of insights", + "type": "array", + "items": { + "default": {}, + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.UpdateInformer" + }, + "x-kubernetes-list-map-keys": [ + "name" + ], + "x-kubernetes-list-type": "map" + }, + "name": { + "description": "name is the name of the pool", + "type": "string", + "default": "" + }, + "resource": { + "description": "resource is the resource that represents the pool", + "default": {}, + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.PoolResourceRef" + } + } + }, + "com.github.openshift.api.update.v1alpha1.ResourceRef": { + "description": "ResourceRef is a reference to a kubernetes resource, typically involved in an insight", + "type": "object", + "required": [ + "kind", + "name" + ], + "properties": { + "apiGroup": { + "description": "APIGroup of the object being referenced, if any", + "type": "string" + }, + "kind": { + "description": "kind of object being referenced", + "type": "string", + "default": "" + }, + "name": { + "description": "Name of the object being referenced", + "type": "string", + "default": "" + }, + "namespace": { + "description": "Namespace of the object being referenced, if any", + "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", + "default": {}, + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.UpdateInsightImpact" + }, + "remediation": { + "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", + "default": {}, + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.UpdateInsightScope" + }, + "startedAt": { + "description": "startedAt is the time when the condition reported by the insight started", + "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.Time" + } + } + }, + "com.github.openshift.api.update.v1alpha1.UpdateInformer": { + "description": "UpdateInformer is an insight producer identified by a name, carrying a list of insights it produced", + "type": "object", + "required": [ + "name" + ], + "properties": { + "insights": { + "description": "Insights is a list of insights produced by this producer", + "type": "array", + "items": { + "default": {}, + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.UpdateInsight" + }, + "x-kubernetes-list-map-keys": [ + "uid" + ], + "x-kubernetes-list-type": "map" + }, + "name": { + "description": "Name is the name of the insight producer", + "type": "string", + "default": "" + } + } + }, + "com.github.openshift.api.update.v1alpha1.UpdateInsight": { + "type": "object", + "required": [ + "uid", + "acquiredAt", + "type" + ], + "properties": { + "acquiredAt": { + "description": "acquiredAt is the time when the data was acquired by the producer", + "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.Time" + }, + "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": "" + }, + "uid": { + "description": "uid identifies the insight over time", + "type": "string", + "default": "" + } + } + }, + "com.github.openshift.api.update.v1alpha1.UpdateInsightImpact": { + "description": "UpdateInsightImpact describes the impact the reported condition has on the cluster or update", + "type": "object", + "required": [ + "level", + "type", + "summary" + ], + "properties": { + "description": { + "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 impact", + "type": "string", + "default": "" + }, + "summary": { + "description": "summary is a short summary of the impact", + "type": "string", + "default": "" + }, + "type": { + "description": "type is the type of the impact", + "type": "string", + "default": "" + } + } + }, + "com.github.openshift.api.update.v1alpha1.UpdateInsightRemediation": { + "description": "UpdateInsightRemediation contains information about how to resolve or prevent the reported condition", + "type": "object", + "required": [ + "reference" + ], + "properties": { + "estimatedFinish": { + "description": "estimatedFinish is the estimated time when the informer expects the condition to be resolved, if applicable.", + "$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", + "type": "string", + "default": "" + } + } + }, + "com.github.openshift.api.update.v1alpha1.UpdateInsightScope": { + "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", + "type": "array", + "items": { + "default": {}, + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.ResourceRef" + }, + "x-kubernetes-list-type": "set" + }, + "type": { + "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 reports status for in-progress cluster version updates\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" + ], + "properties": { + "apiVersion": { + "description": "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + "type": "string" + }, + "kind": { + "description": "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + "type": "string" + }, + "metadata": { + "default": {}, + "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta" + }, + "spec": { + "default": {}, + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.UpdateStatusSpec" + }, + "status": { + "default": {}, + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.UpdateStatusStatus" + } + } + }, + "com.github.openshift.api.update.v1alpha1.UpdateStatusList": { + "description": "UpdateStatusList is a list of UpdateStatus resources\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": [ + "metadata", + "items" + ], + "properties": { + "apiVersion": { + "description": "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + "type": "string" + }, + "items": { + "type": "array", + "items": { + "default": {}, + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.UpdateStatus" + } + }, + "kind": { + "description": "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + "type": "string" + }, + "metadata": { + "default": {}, + "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta" + } + } + }, + "com.github.openshift.api.update.v1alpha1.UpdateStatusSpec": { + "description": "UpdateStatusSpec is empty for now, can possibly hold configuration for Update Status Controller in the future", + "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 UpdateInsights produced by update informers", + "type": "object", + "required": [ + "controlPlane" + ], + "properties": { + "conditions": { + "description": "conditions provide details about Update Status Controller operational matters", + "type": "array", + "items": { + "default": {}, + "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.Condition" + }, + "x-kubernetes-list-map-keys": [ + "type" + ], + "x-kubernetes-list-type": "map" + }, + "controlPlane": { + "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": "workerPools contains summaries and insights related to the worker pools update", + "type": "array", + "items": { + "default": {}, + "$ref": "#/definitions/com.github.openshift.api.update.v1alpha1.PoolUpdateStatus" + }, + "x-kubernetes-list-map-keys": [ + "name" + ], + "x-kubernetes-list-type": "map" + } + } + }, + "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", + "required": [ + "version" + ], + "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, or a placeholder '' for the special case where this is a \"previous\" version in a new installation", + "type": "string" + } + } + }, + "com.github.openshift.api.update.v1alpha1.VersionMetadata": { + "type": "object", + "required": [ + "key", + "type" + ], + "properties": { + "bool": { + "type": "boolean" + }, + "key": { + "type": "string", + "default": "" + }, + "string": { + "type": "string" + }, + "type": { + "type": "string", + "default": "" + } + } + }, + "com.github.openshift.api.update.v1alpha1.VersionMetadataValue": { + "type": "object", + "required": [ + "type" + ], + "properties": { + "bool": { + "type": "boolean" + }, + "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/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 new file mode 100644 index 00000000000..d1455a42f93 --- /dev/null +++ b/update/v1alpha1/zz_generated.crd-manifests/0000_00_cluster-version-operator_02_updatestatuses-CustomNoUpgrade.crd.yaml @@ -0,0 +1,1954 @@ +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + api-approved.openshift.io: https://github.com/openshift/api/pull/2012 + 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 + name: updatestatuses.update.openshift.io +spec: + group: update.openshift.io + names: + kind: UpdateStatus + listKind: UpdateStatusList + plural: updatestatuses + singular: updatestatus + scope: Namespaced + versions: + - name: v1alpha1 + schema: + openAPIV3Schema: + description: |- + UpdateStatus reports status for in-progress cluster version updates + + 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 of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: UpdateStatusSpec is empty for now, can possibly hold configuration + for Update Status Controller in the future + type: object + status: + description: |- + UpdateStatusStatus is the API about in-progress updates, kept populated by Update Status Controller by + aggregating and summarizing UpdateInsights produced by update informers + properties: + conditions: + description: conditions provide details about Update Status Controller + operational matters + items: + description: Condition contains details for one aspect of the current + state of this API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + controlPlane: + description: controlPlane contains a summary and insights related + to the control plane update + properties: + conditions: + description: conditions provides details about the control plane + update + items: + description: Condition contains details for one aspect of the + current state of this API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one of True, False, + Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + informers: + 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 + properties: + insights: + description: Insights is a list of insights produced by + this producer + items: + properties: + acquiredAt: + description: acquiredAt is the time when the data + was acquired by the producer + format: date-time + type: string + clusterOperator: + 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 + the operator + items: + description: Condition contains details for + one aspect of the current state of this API + Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one + of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + name: + description: name is the name of the operator + type: string + resource: + description: resource is the ClusterOperator resource + that represents the operator + 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 + required: + - kind + - name + type: object + required: + - name + - resource + type: object + 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 the + control plane update process + type: string + completedAt: + description: completedAt is the time when the + update completed + format: date-time + type: string + completion: + description: completion is a percentage of the + update completion (0-100) + maximum: 100 + minimum: 0 + type: integer + conditions: + description: Conditions provides details about + the control plane update + items: + description: Condition contains details for + one aspect of the current state of this API + Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one + of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + estimatedCompletedAt: + description: estimatedCompletedAt is the estimated + time when the update will complete + format: date-time + type: string + resource: + description: resource is the ClusterVersion resource + that represents the control plane + 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 + required: + - kind + - name + type: object + startedAt: + description: startedAt is the time when the update + started + format: date-time + type: string + versions: + description: versions contains the original and + target versions of the upgrade + properties: + previous: + description: |- + previous is the version of the control plane before the update. When the cluster is being installed + for the first time, the version will have a placeholder value like '' and the target version + will have a boolean installation=true metadata + properties: + metadata: + description: metadata is a list of metadata + associated with the version + items: + properties: + bool: + type: bool + key: + type: string + string: + type: string + type: + description: VersionMetadataType + is the type of the metadata value + enum: + - string + - bool + - int + type: string + required: + - "" + - key + - type + type: object + type: array + x-kubernetes-list-map-keys: + - key + x-kubernetes-list-type: map + version: + description: |- + version is a semantic version string, or a placeholder '' for the special case where this + is a "previous" version in a new installation + type: string + required: + - version + type: object + target: + description: target is the version of the + control plane after the update + properties: + metadata: + description: metadata is a list of metadata + associated with the version + items: + properties: + bool: + type: bool + key: + type: string + string: + type: string + type: + description: VersionMetadataType + is the type of the metadata value + enum: + - string + - bool + - int + type: string + required: + - "" + - key + - type + type: object + type: array + x-kubernetes-list-map-keys: + - key + x-kubernetes-list-type: map + version: + description: |- + version is a semantic version string, or a placeholder '' for the special case where this + is a "previous" version in a new installation + type: string + required: + - version + type: object + required: + - previous + - target + type: object + required: + - assessment + - completion + - resource + - startedAt + - versions + type: object + 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 + properties: + impact: + description: impact describes the impact the reported + condition has on the cluster or update + properties: + description: + description: description is a human-oriented, + possibly longer-form description of the + condition reported by the insight + type: string + level: + allOf: + - enum: + - unknown + - info + - warning + - error + - critical + - enum: + - unknown + - info + - warning + - error + - critical + description: level is the severity of the + impact + type: string + summary: + description: summary is a short summary of + the impact + type: string + type: + 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 + required: + - level + - summary + - type + type: object + remediation: + description: remediation contains information + about how to resolve or prevent the reported + condition + properties: + estimatedFinish: + description: estimatedFinish is the estimated + time when the informer expects the condition + to be resolved, if applicable. + format: date-time + type: string + reference: + description: reference is a URL where administrators + can find information to resolve or prevent + the reported condition + format: uri + type: string + required: + - reference + type: object + scope: + description: scope is list of objects involved + in the insight + properties: + resources: + description: resources is a list of resources + involved in the insight + items: + description: ResourceRef is a reference + to a kubernetes resource, typically involved + in an insight + 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 + required: + - kind + - name + type: object + type: array + x-kubernetes-list-type: set + type: + allOf: + - enum: + - ControlPlane + - WorkerPool + - enum: + - ControlPlane + - WorkerPool + description: type is either ControlPlane or + WorkerPool + type: string + required: + - type + type: object + startedAt: + description: startedAt is the time when the condition + reported by the insight started + format: date-time + type: string + required: + - impact + - scope + - startedAt + type: object + 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 + machine config pool update process + type: string + completion: + description: completion is a percentage of the + update completion (0-100) + maximum: 100 + minimum: 0 + type: integer + conditions: + 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 + Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one + of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + name: + description: name is the name of the machine config + pool + type: string + resource: + description: resource is the MachineConfigPool + resource that represents the pool + 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 + required: + - kind + - name + type: object + scopeType: + 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 + 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 + matching the criteria + minimum: 0 + type: integer + type: + 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: + - count + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + required: + - assessment + - completion + - name + - resource + - scopeType + type: object + 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 + properties: + conditions: + description: conditions provides details about + the control plane update + items: + description: Condition contains details for + one aspect of the current state of this API + Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one + of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + estToComplete: + description: estToComplete is the estimated time + to complete the update, when known + type: string + message: + description: message is a short human-readable + message about the node update status + type: string + name: + description: name is the name of the node + type: string + poolResource: + description: poolResource is the resource that + represents the pool the node is a member of + 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 + required: + - kind + - name + type: object + resource: + description: resource is the Node resource that + represents the node + 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 + required: + - kind + - name + type: object + version: + description: version is the version of the node, + when known + type: string + required: + - name + - poolResource + - resource + 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 the insight over time + type: string + required: + - acquiredAt + - type + - uid + type: object + type: array + x-kubernetes-list-map-keys: + - uid + x-kubernetes-list-type: map + name: + description: Name is the name of the insight producer + type: string + required: + - name + type: object + type: array + 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 Hosted Control Planes) 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 + required: + - kind + - name + type: object + resource: + description: |- + resource is the resource that represents the control plane. It will typically be a ClusterVersion resource + in standalone OpenShift and HostedCluster in Hosted Control Planes. + 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 + required: + - kind + - name + type: object + required: + - resource + type: object + workerPools: + 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 + items: + description: Condition contains details for one aspect of + the current state of this API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one of True, False, + Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + informers: + description: informers is a list of insight producers, each + carries a list of insights + items: + description: UpdateInformer is an insight producer identified + by a name, carrying a list of insights it produced + properties: + insights: + description: Insights is a list of insights produced by + this producer + items: + properties: + acquiredAt: + description: acquiredAt is the time when the data + was acquired by the producer + format: date-time + type: string + clusterOperator: + 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 + the operator + items: + description: Condition contains details for + one aspect of the current state of this + API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, + one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + name: + description: name is the name of the operator + type: string + resource: + description: resource is the ClusterOperator + resource that represents the operator + 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 + required: + - kind + - name + type: object + required: + - name + - resource + type: object + 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 + the control plane update process + type: string + completedAt: + description: completedAt is the time when the + update completed + format: date-time + type: string + completion: + description: completion is a percentage of the + update completion (0-100) + maximum: 100 + minimum: 0 + type: integer + conditions: + description: Conditions provides details about + the control plane update + items: + description: Condition contains details for + one aspect of the current state of this + API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, + one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + estimatedCompletedAt: + description: estimatedCompletedAt is the estimated + time when the update will complete + format: date-time + type: string + resource: + description: resource is the ClusterVersion + resource that represents the control plane + 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 + required: + - kind + - name + type: object + startedAt: + description: startedAt is the time when the + update started + format: date-time + type: string + versions: + description: versions contains the original + and target versions of the upgrade + properties: + previous: + description: |- + previous is the version of the control plane before the update. When the cluster is being installed + for the first time, the version will have a placeholder value like '' and the target version + will have a boolean installation=true metadata + properties: + metadata: + description: metadata is a list of metadata + associated with the version + items: + properties: + bool: + type: bool + key: + type: string + string: + type: string + type: + description: VersionMetadataType + is the type of the metadata + value + enum: + - string + - bool + - int + type: string + required: + - "" + - key + - type + type: object + type: array + x-kubernetes-list-map-keys: + - key + x-kubernetes-list-type: map + version: + description: |- + version is a semantic version string, or a placeholder '' for the special case where this + is a "previous" version in a new installation + type: string + required: + - version + type: object + target: + description: target is the version of the + control plane after the update + properties: + metadata: + description: metadata is a list of metadata + associated with the version + items: + properties: + bool: + type: bool + key: + type: string + string: + type: string + type: + description: VersionMetadataType + is the type of the metadata + value + enum: + - string + - bool + - int + type: string + required: + - "" + - key + - type + type: object + type: array + x-kubernetes-list-map-keys: + - key + x-kubernetes-list-type: map + version: + description: |- + version is a semantic version string, or a placeholder '' for the special case where this + is a "previous" version in a new installation + type: string + required: + - version + type: object + required: + - previous + - target + type: object + required: + - assessment + - completion + - resource + - startedAt + - versions + type: object + 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 + properties: + impact: + description: impact describes the impact the + reported condition has on the cluster or update + properties: + description: + description: description is a human-oriented, + possibly longer-form description of the + condition reported by the insight + type: string + level: + allOf: + - enum: + - unknown + - info + - warning + - error + - critical + - enum: + - unknown + - info + - warning + - error + - critical + description: level is the severity of the + impact + type: string + summary: + description: summary is a short summary + of the impact + type: string + type: + 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 + required: + - level + - summary + - type + type: object + remediation: + description: remediation contains information + about how to resolve or prevent the reported + condition + properties: + estimatedFinish: + description: estimatedFinish is the estimated + time when the informer expects the condition + to be resolved, if applicable. + format: date-time + type: string + reference: + description: reference is a URL where administrators + can find information to resolve or prevent + the reported condition + format: uri + type: string + required: + - reference + type: object + scope: + description: scope is list of objects involved + in the insight + properties: + resources: + description: resources is a list of resources + involved in the insight + items: + description: ResourceRef is a reference + to a kubernetes resource, typically + involved in an insight + 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 + required: + - kind + - name + type: object + type: array + x-kubernetes-list-type: set + type: + allOf: + - enum: + - ControlPlane + - WorkerPool + - enum: + - ControlPlane + - WorkerPool + description: type is either ControlPlane + or WorkerPool + type: string + required: + - type + type: object + startedAt: + description: startedAt is the time when the + condition reported by the insight started + format: date-time + type: string + required: + - impact + - scope + - startedAt + type: object + 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 machine config pool update process + type: string + completion: + description: completion is a percentage of the + update completion (0-100) + maximum: 100 + minimum: 0 + type: integer + conditions: + 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 Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, + one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + name: + description: name is the name of the machine + config pool + type: string + resource: + description: resource is the MachineConfigPool + resource that represents the pool + 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 + required: + - kind + - name + type: object + scopeType: + 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 + 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 + matching the criteria + minimum: 0 + type: integer + type: + 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: + - count + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + required: + - assessment + - completion + - name + - resource + - scopeType + type: object + 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 + properties: + conditions: + description: conditions provides details about + the control plane update + items: + description: Condition contains details for + one aspect of the current state of this + API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, + one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + estToComplete: + description: estToComplete is the estimated + time to complete the update, when known + type: string + message: + description: message is a short human-readable + message about the node update status + type: string + name: + description: name is the name of the node + type: string + poolResource: + description: poolResource is the resource that + represents the pool the node is a member of + 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 + required: + - kind + - name + type: object + resource: + description: resource is the Node resource that + represents the node + 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 + required: + - kind + - name + type: object + version: + description: version is the version of the node, + when known + type: string + required: + - name + - poolResource + - resource + 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 the insight over time + type: string + required: + - acquiredAt + - type + - uid + type: object + type: array + x-kubernetes-list-map-keys: + - uid + x-kubernetes-list-type: map + name: + description: Name is the name of the insight producer + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + name: + description: name is the name of the pool + type: string + resource: + description: resource is the resource that represents the pool + 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 + required: + - kind + - name + type: object + required: + - name + - resource + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + required: + - controlPlane + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} 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 new file mode 100644 index 00000000000..26a03dab32a --- /dev/null +++ b/update/v1alpha1/zz_generated.crd-manifests/0000_00_cluster-version-operator_02_updatestatuses-DevPreviewNoUpgrade.crd.yaml @@ -0,0 +1,1954 @@ +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + api-approved.openshift.io: https://github.com/openshift/api/pull/2012 + 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 + name: updatestatuses.update.openshift.io +spec: + group: update.openshift.io + names: + kind: UpdateStatus + listKind: UpdateStatusList + plural: updatestatuses + singular: updatestatus + scope: Namespaced + versions: + - name: v1alpha1 + schema: + openAPIV3Schema: + description: |- + UpdateStatus reports status for in-progress cluster version updates + + 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 of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: UpdateStatusSpec is empty for now, can possibly hold configuration + for Update Status Controller in the future + type: object + status: + description: |- + UpdateStatusStatus is the API about in-progress updates, kept populated by Update Status Controller by + aggregating and summarizing UpdateInsights produced by update informers + properties: + conditions: + description: conditions provide details about Update Status Controller + operational matters + items: + description: Condition contains details for one aspect of the current + state of this API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + controlPlane: + description: controlPlane contains a summary and insights related + to the control plane update + properties: + conditions: + description: conditions provides details about the control plane + update + items: + description: Condition contains details for one aspect of the + current state of this API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one of True, False, + Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + informers: + 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 + properties: + insights: + description: Insights is a list of insights produced by + this producer + items: + properties: + acquiredAt: + description: acquiredAt is the time when the data + was acquired by the producer + format: date-time + type: string + clusterOperator: + 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 + the operator + items: + description: Condition contains details for + one aspect of the current state of this API + Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one + of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + name: + description: name is the name of the operator + type: string + resource: + description: resource is the ClusterOperator resource + that represents the operator + 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 + required: + - kind + - name + type: object + required: + - name + - resource + type: object + 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 the + control plane update process + type: string + completedAt: + description: completedAt is the time when the + update completed + format: date-time + type: string + completion: + description: completion is a percentage of the + update completion (0-100) + maximum: 100 + minimum: 0 + type: integer + conditions: + description: Conditions provides details about + the control plane update + items: + description: Condition contains details for + one aspect of the current state of this API + Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one + of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + estimatedCompletedAt: + description: estimatedCompletedAt is the estimated + time when the update will complete + format: date-time + type: string + resource: + description: resource is the ClusterVersion resource + that represents the control plane + 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 + required: + - kind + - name + type: object + startedAt: + description: startedAt is the time when the update + started + format: date-time + type: string + versions: + description: versions contains the original and + target versions of the upgrade + properties: + previous: + description: |- + previous is the version of the control plane before the update. When the cluster is being installed + for the first time, the version will have a placeholder value like '' and the target version + will have a boolean installation=true metadata + properties: + metadata: + description: metadata is a list of metadata + associated with the version + items: + properties: + bool: + type: bool + key: + type: string + string: + type: string + type: + description: VersionMetadataType + is the type of the metadata value + enum: + - string + - bool + - int + type: string + required: + - "" + - key + - type + type: object + type: array + x-kubernetes-list-map-keys: + - key + x-kubernetes-list-type: map + version: + description: |- + version is a semantic version string, or a placeholder '' for the special case where this + is a "previous" version in a new installation + type: string + required: + - version + type: object + target: + description: target is the version of the + control plane after the update + properties: + metadata: + description: metadata is a list of metadata + associated with the version + items: + properties: + bool: + type: bool + key: + type: string + string: + type: string + type: + description: VersionMetadataType + is the type of the metadata value + enum: + - string + - bool + - int + type: string + required: + - "" + - key + - type + type: object + type: array + x-kubernetes-list-map-keys: + - key + x-kubernetes-list-type: map + version: + description: |- + version is a semantic version string, or a placeholder '' for the special case where this + is a "previous" version in a new installation + type: string + required: + - version + type: object + required: + - previous + - target + type: object + required: + - assessment + - completion + - resource + - startedAt + - versions + type: object + 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 + properties: + impact: + description: impact describes the impact the reported + condition has on the cluster or update + properties: + description: + description: description is a human-oriented, + possibly longer-form description of the + condition reported by the insight + type: string + level: + allOf: + - enum: + - unknown + - info + - warning + - error + - critical + - enum: + - unknown + - info + - warning + - error + - critical + description: level is the severity of the + impact + type: string + summary: + description: summary is a short summary of + the impact + type: string + type: + 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 + required: + - level + - summary + - type + type: object + remediation: + description: remediation contains information + about how to resolve or prevent the reported + condition + properties: + estimatedFinish: + description: estimatedFinish is the estimated + time when the informer expects the condition + to be resolved, if applicable. + format: date-time + type: string + reference: + description: reference is a URL where administrators + can find information to resolve or prevent + the reported condition + format: uri + type: string + required: + - reference + type: object + scope: + description: scope is list of objects involved + in the insight + properties: + resources: + description: resources is a list of resources + involved in the insight + items: + description: ResourceRef is a reference + to a kubernetes resource, typically involved + in an insight + 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 + required: + - kind + - name + type: object + type: array + x-kubernetes-list-type: set + type: + allOf: + - enum: + - ControlPlane + - WorkerPool + - enum: + - ControlPlane + - WorkerPool + description: type is either ControlPlane or + WorkerPool + type: string + required: + - type + type: object + startedAt: + description: startedAt is the time when the condition + reported by the insight started + format: date-time + type: string + required: + - impact + - scope + - startedAt + type: object + 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 + machine config pool update process + type: string + completion: + description: completion is a percentage of the + update completion (0-100) + maximum: 100 + minimum: 0 + type: integer + conditions: + 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 + Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one + of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + name: + description: name is the name of the machine config + pool + type: string + resource: + description: resource is the MachineConfigPool + resource that represents the pool + 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 + required: + - kind + - name + type: object + scopeType: + 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 + 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 + matching the criteria + minimum: 0 + type: integer + type: + 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: + - count + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + required: + - assessment + - completion + - name + - resource + - scopeType + type: object + 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 + properties: + conditions: + description: conditions provides details about + the control plane update + items: + description: Condition contains details for + one aspect of the current state of this API + Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one + of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + estToComplete: + description: estToComplete is the estimated time + to complete the update, when known + type: string + message: + description: message is a short human-readable + message about the node update status + type: string + name: + description: name is the name of the node + type: string + poolResource: + description: poolResource is the resource that + represents the pool the node is a member of + 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 + required: + - kind + - name + type: object + resource: + description: resource is the Node resource that + represents the node + 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 + required: + - kind + - name + type: object + version: + description: version is the version of the node, + when known + type: string + required: + - name + - poolResource + - resource + 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 the insight over time + type: string + required: + - acquiredAt + - type + - uid + type: object + type: array + x-kubernetes-list-map-keys: + - uid + x-kubernetes-list-type: map + name: + description: Name is the name of the insight producer + type: string + required: + - name + type: object + type: array + 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 Hosted Control Planes) 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 + required: + - kind + - name + type: object + resource: + description: |- + resource is the resource that represents the control plane. It will typically be a ClusterVersion resource + in standalone OpenShift and HostedCluster in Hosted Control Planes. + 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 + required: + - kind + - name + type: object + required: + - resource + type: object + workerPools: + 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 + items: + description: Condition contains details for one aspect of + the current state of this API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one of True, False, + Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + informers: + description: informers is a list of insight producers, each + carries a list of insights + items: + description: UpdateInformer is an insight producer identified + by a name, carrying a list of insights it produced + properties: + insights: + description: Insights is a list of insights produced by + this producer + items: + properties: + acquiredAt: + description: acquiredAt is the time when the data + was acquired by the producer + format: date-time + type: string + clusterOperator: + 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 + the operator + items: + description: Condition contains details for + one aspect of the current state of this + API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, + one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + name: + description: name is the name of the operator + type: string + resource: + description: resource is the ClusterOperator + resource that represents the operator + 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 + required: + - kind + - name + type: object + required: + - name + - resource + type: object + 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 + the control plane update process + type: string + completedAt: + description: completedAt is the time when the + update completed + format: date-time + type: string + completion: + description: completion is a percentage of the + update completion (0-100) + maximum: 100 + minimum: 0 + type: integer + conditions: + description: Conditions provides details about + the control plane update + items: + description: Condition contains details for + one aspect of the current state of this + API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, + one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + estimatedCompletedAt: + description: estimatedCompletedAt is the estimated + time when the update will complete + format: date-time + type: string + resource: + description: resource is the ClusterVersion + resource that represents the control plane + 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 + required: + - kind + - name + type: object + startedAt: + description: startedAt is the time when the + update started + format: date-time + type: string + versions: + description: versions contains the original + and target versions of the upgrade + properties: + previous: + description: |- + previous is the version of the control plane before the update. When the cluster is being installed + for the first time, the version will have a placeholder value like '' and the target version + will have a boolean installation=true metadata + properties: + metadata: + description: metadata is a list of metadata + associated with the version + items: + properties: + bool: + type: bool + key: + type: string + string: + type: string + type: + description: VersionMetadataType + is the type of the metadata + value + enum: + - string + - bool + - int + type: string + required: + - "" + - key + - type + type: object + type: array + x-kubernetes-list-map-keys: + - key + x-kubernetes-list-type: map + version: + description: |- + version is a semantic version string, or a placeholder '' for the special case where this + is a "previous" version in a new installation + type: string + required: + - version + type: object + target: + description: target is the version of the + control plane after the update + properties: + metadata: + description: metadata is a list of metadata + associated with the version + items: + properties: + bool: + type: bool + key: + type: string + string: + type: string + type: + description: VersionMetadataType + is the type of the metadata + value + enum: + - string + - bool + - int + type: string + required: + - "" + - key + - type + type: object + type: array + x-kubernetes-list-map-keys: + - key + x-kubernetes-list-type: map + version: + description: |- + version is a semantic version string, or a placeholder '' for the special case where this + is a "previous" version in a new installation + type: string + required: + - version + type: object + required: + - previous + - target + type: object + required: + - assessment + - completion + - resource + - startedAt + - versions + type: object + 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 + properties: + impact: + description: impact describes the impact the + reported condition has on the cluster or update + properties: + description: + description: description is a human-oriented, + possibly longer-form description of the + condition reported by the insight + type: string + level: + allOf: + - enum: + - unknown + - info + - warning + - error + - critical + - enum: + - unknown + - info + - warning + - error + - critical + description: level is the severity of the + impact + type: string + summary: + description: summary is a short summary + of the impact + type: string + type: + 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 + required: + - level + - summary + - type + type: object + remediation: + description: remediation contains information + about how to resolve or prevent the reported + condition + properties: + estimatedFinish: + description: estimatedFinish is the estimated + time when the informer expects the condition + to be resolved, if applicable. + format: date-time + type: string + reference: + description: reference is a URL where administrators + can find information to resolve or prevent + the reported condition + format: uri + type: string + required: + - reference + type: object + scope: + description: scope is list of objects involved + in the insight + properties: + resources: + description: resources is a list of resources + involved in the insight + items: + description: ResourceRef is a reference + to a kubernetes resource, typically + involved in an insight + 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 + required: + - kind + - name + type: object + type: array + x-kubernetes-list-type: set + type: + allOf: + - enum: + - ControlPlane + - WorkerPool + - enum: + - ControlPlane + - WorkerPool + description: type is either ControlPlane + or WorkerPool + type: string + required: + - type + type: object + startedAt: + description: startedAt is the time when the + condition reported by the insight started + format: date-time + type: string + required: + - impact + - scope + - startedAt + type: object + 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 machine config pool update process + type: string + completion: + description: completion is a percentage of the + update completion (0-100) + maximum: 100 + minimum: 0 + type: integer + conditions: + 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 Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, + one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + name: + description: name is the name of the machine + config pool + type: string + resource: + description: resource is the MachineConfigPool + resource that represents the pool + 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 + required: + - kind + - name + type: object + scopeType: + 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 + 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 + matching the criteria + minimum: 0 + type: integer + type: + 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: + - count + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + required: + - assessment + - completion + - name + - resource + - scopeType + type: object + 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 + properties: + conditions: + description: conditions provides details about + the control plane update + items: + description: Condition contains details for + one aspect of the current state of this + API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, + one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + estToComplete: + description: estToComplete is the estimated + time to complete the update, when known + type: string + message: + description: message is a short human-readable + message about the node update status + type: string + name: + description: name is the name of the node + type: string + poolResource: + description: poolResource is the resource that + represents the pool the node is a member of + 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 + required: + - kind + - name + type: object + resource: + description: resource is the Node resource that + represents the node + 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 + required: + - kind + - name + type: object + version: + description: version is the version of the node, + when known + type: string + required: + - name + - poolResource + - resource + 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 the insight over time + type: string + required: + - acquiredAt + - type + - uid + type: object + type: array + x-kubernetes-list-map-keys: + - uid + x-kubernetes-list-type: map + name: + description: Name is the name of the insight producer + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + name: + description: name is the name of the pool + type: string + resource: + description: resource is the resource that represents the pool + 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 + required: + - kind + - name + type: object + required: + - name + - resource + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + required: + - controlPlane + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} 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 new file mode 100644 index 00000000000..628bc5ffe1e --- /dev/null +++ b/update/v1alpha1/zz_generated.crd-manifests/0000_00_cluster-version-operator_02_updatestatuses-TechPreviewNoUpgrade.crd.yaml @@ -0,0 +1,1954 @@ +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + api-approved.openshift.io: https://github.com/openshift/api/pull/2012 + 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 + name: updatestatuses.update.openshift.io +spec: + group: update.openshift.io + names: + kind: UpdateStatus + listKind: UpdateStatusList + plural: updatestatuses + singular: updatestatus + scope: Namespaced + versions: + - name: v1alpha1 + schema: + openAPIV3Schema: + description: |- + UpdateStatus reports status for in-progress cluster version updates + + 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 of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: UpdateStatusSpec is empty for now, can possibly hold configuration + for Update Status Controller in the future + type: object + status: + description: |- + UpdateStatusStatus is the API about in-progress updates, kept populated by Update Status Controller by + aggregating and summarizing UpdateInsights produced by update informers + properties: + conditions: + description: conditions provide details about Update Status Controller + operational matters + items: + description: Condition contains details for one aspect of the current + state of this API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + controlPlane: + description: controlPlane contains a summary and insights related + to the control plane update + properties: + conditions: + description: conditions provides details about the control plane + update + items: + description: Condition contains details for one aspect of the + current state of this API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one of True, False, + Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + informers: + 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 + properties: + insights: + description: Insights is a list of insights produced by + this producer + items: + properties: + acquiredAt: + description: acquiredAt is the time when the data + was acquired by the producer + format: date-time + type: string + clusterOperator: + 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 + the operator + items: + description: Condition contains details for + one aspect of the current state of this API + Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one + of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + name: + description: name is the name of the operator + type: string + resource: + description: resource is the ClusterOperator resource + that represents the operator + 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 + required: + - kind + - name + type: object + required: + - name + - resource + type: object + 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 the + control plane update process + type: string + completedAt: + description: completedAt is the time when the + update completed + format: date-time + type: string + completion: + description: completion is a percentage of the + update completion (0-100) + maximum: 100 + minimum: 0 + type: integer + conditions: + description: Conditions provides details about + the control plane update + items: + description: Condition contains details for + one aspect of the current state of this API + Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one + of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + estimatedCompletedAt: + description: estimatedCompletedAt is the estimated + time when the update will complete + format: date-time + type: string + resource: + description: resource is the ClusterVersion resource + that represents the control plane + 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 + required: + - kind + - name + type: object + startedAt: + description: startedAt is the time when the update + started + format: date-time + type: string + versions: + description: versions contains the original and + target versions of the upgrade + properties: + previous: + description: |- + previous is the version of the control plane before the update. When the cluster is being installed + for the first time, the version will have a placeholder value like '' and the target version + will have a boolean installation=true metadata + properties: + metadata: + description: metadata is a list of metadata + associated with the version + items: + properties: + bool: + type: bool + key: + type: string + string: + type: string + type: + description: VersionMetadataType + is the type of the metadata value + enum: + - string + - bool + - int + type: string + required: + - "" + - key + - type + type: object + type: array + x-kubernetes-list-map-keys: + - key + x-kubernetes-list-type: map + version: + description: |- + version is a semantic version string, or a placeholder '' for the special case where this + is a "previous" version in a new installation + type: string + required: + - version + type: object + target: + description: target is the version of the + control plane after the update + properties: + metadata: + description: metadata is a list of metadata + associated with the version + items: + properties: + bool: + type: bool + key: + type: string + string: + type: string + type: + description: VersionMetadataType + is the type of the metadata value + enum: + - string + - bool + - int + type: string + required: + - "" + - key + - type + type: object + type: array + x-kubernetes-list-map-keys: + - key + x-kubernetes-list-type: map + version: + description: |- + version is a semantic version string, or a placeholder '' for the special case where this + is a "previous" version in a new installation + type: string + required: + - version + type: object + required: + - previous + - target + type: object + required: + - assessment + - completion + - resource + - startedAt + - versions + type: object + 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 + properties: + impact: + description: impact describes the impact the reported + condition has on the cluster or update + properties: + description: + description: description is a human-oriented, + possibly longer-form description of the + condition reported by the insight + type: string + level: + allOf: + - enum: + - unknown + - info + - warning + - error + - critical + - enum: + - unknown + - info + - warning + - error + - critical + description: level is the severity of the + impact + type: string + summary: + description: summary is a short summary of + the impact + type: string + type: + 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 + required: + - level + - summary + - type + type: object + remediation: + description: remediation contains information + about how to resolve or prevent the reported + condition + properties: + estimatedFinish: + description: estimatedFinish is the estimated + time when the informer expects the condition + to be resolved, if applicable. + format: date-time + type: string + reference: + description: reference is a URL where administrators + can find information to resolve or prevent + the reported condition + format: uri + type: string + required: + - reference + type: object + scope: + description: scope is list of objects involved + in the insight + properties: + resources: + description: resources is a list of resources + involved in the insight + items: + description: ResourceRef is a reference + to a kubernetes resource, typically involved + in an insight + 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 + required: + - kind + - name + type: object + type: array + x-kubernetes-list-type: set + type: + allOf: + - enum: + - ControlPlane + - WorkerPool + - enum: + - ControlPlane + - WorkerPool + description: type is either ControlPlane or + WorkerPool + type: string + required: + - type + type: object + startedAt: + description: startedAt is the time when the condition + reported by the insight started + format: date-time + type: string + required: + - impact + - scope + - startedAt + type: object + 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 + machine config pool update process + type: string + completion: + description: completion is a percentage of the + update completion (0-100) + maximum: 100 + minimum: 0 + type: integer + conditions: + 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 + Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one + of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + name: + description: name is the name of the machine config + pool + type: string + resource: + description: resource is the MachineConfigPool + resource that represents the pool + 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 + required: + - kind + - name + type: object + scopeType: + 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 + 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 + matching the criteria + minimum: 0 + type: integer + type: + 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: + - count + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + required: + - assessment + - completion + - name + - resource + - scopeType + type: object + 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 + properties: + conditions: + description: conditions provides details about + the control plane update + items: + description: Condition contains details for + one aspect of the current state of this API + Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one + of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + estToComplete: + description: estToComplete is the estimated time + to complete the update, when known + type: string + message: + description: message is a short human-readable + message about the node update status + type: string + name: + description: name is the name of the node + type: string + poolResource: + description: poolResource is the resource that + represents the pool the node is a member of + 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 + required: + - kind + - name + type: object + resource: + description: resource is the Node resource that + represents the node + 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 + required: + - kind + - name + type: object + version: + description: version is the version of the node, + when known + type: string + required: + - name + - poolResource + - resource + 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 the insight over time + type: string + required: + - acquiredAt + - type + - uid + type: object + type: array + x-kubernetes-list-map-keys: + - uid + x-kubernetes-list-type: map + name: + description: Name is the name of the insight producer + type: string + required: + - name + type: object + type: array + 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 Hosted Control Planes) 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 + required: + - kind + - name + type: object + resource: + description: |- + resource is the resource that represents the control plane. It will typically be a ClusterVersion resource + in standalone OpenShift and HostedCluster in Hosted Control Planes. + 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 + required: + - kind + - name + type: object + required: + - resource + type: object + workerPools: + 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 + items: + description: Condition contains details for one aspect of + the current state of this API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one of True, False, + Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + informers: + description: informers is a list of insight producers, each + carries a list of insights + items: + description: UpdateInformer is an insight producer identified + by a name, carrying a list of insights it produced + properties: + insights: + description: Insights is a list of insights produced by + this producer + items: + properties: + acquiredAt: + description: acquiredAt is the time when the data + was acquired by the producer + format: date-time + type: string + clusterOperator: + 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 + the operator + items: + description: Condition contains details for + one aspect of the current state of this + API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, + one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + name: + description: name is the name of the operator + type: string + resource: + description: resource is the ClusterOperator + resource that represents the operator + 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 + required: + - kind + - name + type: object + required: + - name + - resource + type: object + 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 + the control plane update process + type: string + completedAt: + description: completedAt is the time when the + update completed + format: date-time + type: string + completion: + description: completion is a percentage of the + update completion (0-100) + maximum: 100 + minimum: 0 + type: integer + conditions: + description: Conditions provides details about + the control plane update + items: + description: Condition contains details for + one aspect of the current state of this + API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, + one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + estimatedCompletedAt: + description: estimatedCompletedAt is the estimated + time when the update will complete + format: date-time + type: string + resource: + description: resource is the ClusterVersion + resource that represents the control plane + 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 + required: + - kind + - name + type: object + startedAt: + description: startedAt is the time when the + update started + format: date-time + type: string + versions: + description: versions contains the original + and target versions of the upgrade + properties: + previous: + description: |- + previous is the version of the control plane before the update. When the cluster is being installed + for the first time, the version will have a placeholder value like '' and the target version + will have a boolean installation=true metadata + properties: + metadata: + description: metadata is a list of metadata + associated with the version + items: + properties: + bool: + type: bool + key: + type: string + string: + type: string + type: + description: VersionMetadataType + is the type of the metadata + value + enum: + - string + - bool + - int + type: string + required: + - "" + - key + - type + type: object + type: array + x-kubernetes-list-map-keys: + - key + x-kubernetes-list-type: map + version: + description: |- + version is a semantic version string, or a placeholder '' for the special case where this + is a "previous" version in a new installation + type: string + required: + - version + type: object + target: + description: target is the version of the + control plane after the update + properties: + metadata: + description: metadata is a list of metadata + associated with the version + items: + properties: + bool: + type: bool + key: + type: string + string: + type: string + type: + description: VersionMetadataType + is the type of the metadata + value + enum: + - string + - bool + - int + type: string + required: + - "" + - key + - type + type: object + type: array + x-kubernetes-list-map-keys: + - key + x-kubernetes-list-type: map + version: + description: |- + version is a semantic version string, or a placeholder '' for the special case where this + is a "previous" version in a new installation + type: string + required: + - version + type: object + required: + - previous + - target + type: object + required: + - assessment + - completion + - resource + - startedAt + - versions + type: object + 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 + properties: + impact: + description: impact describes the impact the + reported condition has on the cluster or update + properties: + description: + description: description is a human-oriented, + possibly longer-form description of the + condition reported by the insight + type: string + level: + allOf: + - enum: + - unknown + - info + - warning + - error + - critical + - enum: + - unknown + - info + - warning + - error + - critical + description: level is the severity of the + impact + type: string + summary: + description: summary is a short summary + of the impact + type: string + type: + 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 + required: + - level + - summary + - type + type: object + remediation: + description: remediation contains information + about how to resolve or prevent the reported + condition + properties: + estimatedFinish: + description: estimatedFinish is the estimated + time when the informer expects the condition + to be resolved, if applicable. + format: date-time + type: string + reference: + description: reference is a URL where administrators + can find information to resolve or prevent + the reported condition + format: uri + type: string + required: + - reference + type: object + scope: + description: scope is list of objects involved + in the insight + properties: + resources: + description: resources is a list of resources + involved in the insight + items: + description: ResourceRef is a reference + to a kubernetes resource, typically + involved in an insight + 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 + required: + - kind + - name + type: object + type: array + x-kubernetes-list-type: set + type: + allOf: + - enum: + - ControlPlane + - WorkerPool + - enum: + - ControlPlane + - WorkerPool + description: type is either ControlPlane + or WorkerPool + type: string + required: + - type + type: object + startedAt: + description: startedAt is the time when the + condition reported by the insight started + format: date-time + type: string + required: + - impact + - scope + - startedAt + type: object + 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 machine config pool update process + type: string + completion: + description: completion is a percentage of the + update completion (0-100) + maximum: 100 + minimum: 0 + type: integer + conditions: + 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 Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, + one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + name: + description: name is the name of the machine + config pool + type: string + resource: + description: resource is the MachineConfigPool + resource that represents the pool + 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 + required: + - kind + - name + type: object + scopeType: + 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 + 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 + matching the criteria + minimum: 0 + type: integer + type: + 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: + - count + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + required: + - assessment + - completion + - name + - resource + - scopeType + type: object + 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 + properties: + conditions: + description: conditions provides details about + the control plane update + items: + description: Condition contains details for + one aspect of the current state of this + API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, + one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + estToComplete: + description: estToComplete is the estimated + time to complete the update, when known + type: string + message: + description: message is a short human-readable + message about the node update status + type: string + name: + description: name is the name of the node + type: string + poolResource: + description: poolResource is the resource that + represents the pool the node is a member of + 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 + required: + - kind + - name + type: object + resource: + description: resource is the Node resource that + represents the node + 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 + required: + - kind + - name + type: object + version: + description: version is the version of the node, + when known + type: string + required: + - name + - poolResource + - resource + 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 the insight over time + type: string + required: + - acquiredAt + - type + - uid + type: object + type: array + x-kubernetes-list-map-keys: + - uid + x-kubernetes-list-type: map + name: + description: Name is the name of the insight producer + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + name: + description: name is the name of the pool + type: string + resource: + description: resource is the resource that represents the pool + 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 + required: + - kind + - name + type: object + required: + - name + - resource + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + required: + - controlPlane + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} diff --git a/update/v1alpha1/zz_generated.crd-manifests/doc.go b/update/v1alpha1/zz_generated.crd-manifests/doc.go new file mode 100644 index 00000000000..0125d82de7e --- /dev/null +++ b/update/v1alpha1/zz_generated.crd-manifests/doc.go @@ -0,0 +1 @@ +package update_v1alpha1_crdmanifests diff --git a/update/v1alpha1/zz_generated.deepcopy.go b/update/v1alpha1/zz_generated.deepcopy.go new file mode 100644 index 00000000000..15eb315ed86 --- /dev/null +++ b/update/v1alpha1/zz_generated.deepcopy.go @@ -0,0 +1,583 @@ +//go:build !ignore_autogenerated +// +build !ignore_autogenerated + +// Code generated by deepcopy-gen. DO NOT EDIT. + +package v1alpha1 + +import ( + v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + runtime "k8s.io/apimachinery/pkg/runtime" +) + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ClusterOperatorStatusInsight) DeepCopyInto(out *ClusterOperatorStatusInsight) { + *out = *in + out.Resource = in.Resource + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]v1.Condition, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterOperatorStatusInsight. +func (in *ClusterOperatorStatusInsight) DeepCopy() *ClusterOperatorStatusInsight { + if in == nil { + return nil + } + out := new(ClusterOperatorStatusInsight) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ClusterVersionStatusInsight) DeepCopyInto(out *ClusterVersionStatusInsight) { + *out = *in + out.Resource = in.Resource + in.Versions.DeepCopyInto(&out.Versions) + in.StartedAt.DeepCopyInto(&out.StartedAt) + if in.CompletedAt != nil { + in, out := &in.CompletedAt, &out.CompletedAt + *out = (*in).DeepCopy() + } + if in.EstimatedCompletedAt != nil { + in, out := &in.EstimatedCompletedAt, &out.EstimatedCompletedAt + *out = (*in).DeepCopy() + } + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]v1.Condition, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterVersionStatusInsight. +func (in *ClusterVersionStatusInsight) DeepCopy() *ClusterVersionStatusInsight { + if in == nil { + return nil + } + out := new(ClusterVersionStatusInsight) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ControlPlaneUpdateStatus) DeepCopyInto(out *ControlPlaneUpdateStatus) { + *out = *in + out.Resource = in.Resource + if in.PoolResource != nil { + in, out := &in.PoolResource, &out.PoolResource + *out = new(PoolResourceRef) + **out = **in + } + if in.Informers != nil { + in, out := &in.Informers, &out.Informers + *out = make([]UpdateInformer, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]v1.Condition, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneUpdateStatus. +func (in *ControlPlaneUpdateStatus) DeepCopy() *ControlPlaneUpdateStatus { + if in == nil { + return nil + } + out := new(ControlPlaneUpdateStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ControlPlaneUpdateVersions) DeepCopyInto(out *ControlPlaneUpdateVersions) { + *out = *in + in.Previous.DeepCopyInto(&out.Previous) + in.Target.DeepCopyInto(&out.Target) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneUpdateVersions. +func (in *ControlPlaneUpdateVersions) DeepCopy() *ControlPlaneUpdateVersions { + if in == nil { + return nil + } + out := new(ControlPlaneUpdateVersions) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MachineConfigPoolStatusInsight) DeepCopyInto(out *MachineConfigPoolStatusInsight) { + *out = *in + out.Resource = in.Resource + if in.Summaries != nil { + in, out := &in.Summaries, &out.Summaries + *out = make([]NodeSummary, len(*in)) + copy(*out, *in) + } + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]v1.Condition, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineConfigPoolStatusInsight. +func (in *MachineConfigPoolStatusInsight) DeepCopy() *MachineConfigPoolStatusInsight { + if in == nil { + return nil + } + out := new(MachineConfigPoolStatusInsight) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeStatusInsight) DeepCopyInto(out *NodeStatusInsight) { + *out = *in + out.Resource = in.Resource + out.PoolResource = in.PoolResource + if in.EstToComplete != nil { + in, out := &in.EstToComplete, &out.EstToComplete + *out = new(v1.Duration) + **out = **in + } + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]v1.Condition, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeStatusInsight. +func (in *NodeStatusInsight) DeepCopy() *NodeStatusInsight { + if in == nil { + return nil + } + out := new(NodeStatusInsight) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeSummary) DeepCopyInto(out *NodeSummary) { + *out = *in + return +} + +// 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(NodeSummary) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PoolResourceRef) DeepCopyInto(out *PoolResourceRef) { + *out = *in + out.ResourceRef = in.ResourceRef + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PoolResourceRef. +func (in *PoolResourceRef) DeepCopy() *PoolResourceRef { + if in == nil { + return nil + } + out := new(PoolResourceRef) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PoolUpdateStatus) DeepCopyInto(out *PoolUpdateStatus) { + *out = *in + out.Resource = in.Resource + if in.Informers != nil { + in, out := &in.Informers, &out.Informers + *out = make([]UpdateInformer, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]v1.Condition, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PoolUpdateStatus. +func (in *PoolUpdateStatus) DeepCopy() *PoolUpdateStatus { + if in == nil { + return nil + } + out := new(PoolUpdateStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceRef) DeepCopyInto(out *ResourceRef) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceRef. +func (in *ResourceRef) DeepCopy() *ResourceRef { + if in == nil { + return nil + } + out := new(ResourceRef) + 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 + in.StartedAt.DeepCopyInto(&out.StartedAt) + in.Scope.DeepCopyInto(&out.Scope) + out.Impact = in.Impact + in.Remediation.DeepCopyInto(&out.Remediation) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpdateHealthInsight. +func (in *UpdateHealthInsight) DeepCopy() *UpdateHealthInsight { + if in == nil { + return nil + } + out := new(UpdateHealthInsight) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *UpdateInformer) DeepCopyInto(out *UpdateInformer) { + *out = *in + if in.Insights != nil { + in, out := &in.Insights, &out.Insights + *out = make([]UpdateInsight, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpdateInformer. +func (in *UpdateInformer) DeepCopy() *UpdateInformer { + if in == nil { + return nil + } + out := new(UpdateInformer) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *UpdateInsight) DeepCopyInto(out *UpdateInsight) { + *out = *in + in.AcquiredAt.DeepCopyInto(&out.AcquiredAt) + in.UpdateInsightUnion.DeepCopyInto(&out.UpdateInsightUnion) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpdateInsight. +func (in *UpdateInsight) DeepCopy() *UpdateInsight { + if in == nil { + return nil + } + out := new(UpdateInsight) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *UpdateInsightImpact) DeepCopyInto(out *UpdateInsightImpact) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpdateInsightImpact. +func (in *UpdateInsightImpact) DeepCopy() *UpdateInsightImpact { + if in == nil { + return nil + } + out := new(UpdateInsightImpact) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *UpdateInsightRemediation) DeepCopyInto(out *UpdateInsightRemediation) { + *out = *in + if in.EstimatedFinish != nil { + in, out := &in.EstimatedFinish, &out.EstimatedFinish + *out = (*in).DeepCopy() + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpdateInsightRemediation. +func (in *UpdateInsightRemediation) DeepCopy() *UpdateInsightRemediation { + if in == nil { + return nil + } + out := new(UpdateInsightRemediation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *UpdateInsightScope) DeepCopyInto(out *UpdateInsightScope) { + *out = *in + if in.Resources != nil { + in, out := &in.Resources, &out.Resources + *out = make([]ResourceRef, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpdateInsightScope. +func (in *UpdateInsightScope) DeepCopy() *UpdateInsightScope { + if in == nil { + return nil + } + out := new(UpdateInsightScope) + in.DeepCopyInto(out) + 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 + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + out.Spec = in.Spec + in.Status.DeepCopyInto(&out.Status) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpdateStatus. +func (in *UpdateStatus) DeepCopy() *UpdateStatus { + if in == nil { + return nil + } + out := new(UpdateStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *UpdateStatus) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *UpdateStatusList) DeepCopyInto(out *UpdateStatusList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]UpdateStatus, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpdateStatusList. +func (in *UpdateStatusList) DeepCopy() *UpdateStatusList { + if in == nil { + return nil + } + out := new(UpdateStatusList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *UpdateStatusList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *UpdateStatusSpec) DeepCopyInto(out *UpdateStatusSpec) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpdateStatusSpec. +func (in *UpdateStatusSpec) DeepCopy() *UpdateStatusSpec { + if in == nil { + return nil + } + out := new(UpdateStatusSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *UpdateStatusStatus) DeepCopyInto(out *UpdateStatusStatus) { + *out = *in + in.ControlPlane.DeepCopyInto(&out.ControlPlane) + if in.WorkerPools != nil { + in, out := &in.WorkerPools, &out.WorkerPools + *out = make([]PoolUpdateStatus, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]v1.Condition, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpdateStatusStatus. +func (in *UpdateStatusStatus) DeepCopy() *UpdateStatusStatus { + if in == nil { + return nil + } + out := new(UpdateStatusStatus) + in.DeepCopyInto(out) + 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 +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VersionMetadata. +func (in *VersionMetadata) DeepCopy() *VersionMetadata { + if in == nil { + return nil + } + out := new(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 new file mode 100644 index 00000000000..1eb74ec612b --- /dev/null +++ b/update/v1alpha1/zz_generated.featuregated-crd-manifests.yaml @@ -0,0 +1,25 @@ +updatestatuses.update.openshift.io: + Annotations: + description: Provides health and status information about OpenShift cluster updates. + displayName: UpdateStatuses + ApprovedPRNumber: https://github.com/openshift/api/pull/2012 + CRDName: updatestatuses.update.openshift.io + Capability: "" + Category: "" + FeatureGates: + - UpgradeStatus + FilenameOperatorName: cluster-version-operator + FilenameOperatorOrdering: "02" + FilenameRunLevel: "0000_00" + GroupName: update.openshift.io + HasStatus: true + KindName: UpdateStatus + Labels: {} + PluralName: updatestatuses + PrinterColumns: [] + Scope: Namespaced + ShortNames: null + TopLevelFeatureGates: + - UpgradeStatus + Version: v1alpha1 + 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 new file mode 100644 index 00000000000..25c11c6c4c6 --- /dev/null +++ b/update/v1alpha1/zz_generated.featuregated-crd-manifests/updatestatuses.update.openshift.io/UpgradeStatus.yaml @@ -0,0 +1,1954 @@ +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + api-approved.openshift.io: https://github.com/openshift/api/pull/2012 + 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: + group: update.openshift.io + names: + kind: UpdateStatus + listKind: UpdateStatusList + plural: updatestatuses + singular: updatestatus + scope: Namespaced + versions: + - name: v1alpha1 + schema: + openAPIV3Schema: + description: |- + UpdateStatus reports status for in-progress cluster version updates + + 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 of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: UpdateStatusSpec is empty for now, can possibly hold configuration + for Update Status Controller in the future + type: object + status: + description: |- + UpdateStatusStatus is the API about in-progress updates, kept populated by Update Status Controller by + aggregating and summarizing UpdateInsights produced by update informers + properties: + conditions: + description: conditions provide details about Update Status Controller + operational matters + items: + description: Condition contains details for one aspect of the current + state of this API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + controlPlane: + description: controlPlane contains a summary and insights related + to the control plane update + properties: + conditions: + description: conditions provides details about the control plane + update + items: + description: Condition contains details for one aspect of the + current state of this API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one of True, False, + Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + informers: + 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 + properties: + insights: + description: Insights is a list of insights produced by + this producer + items: + properties: + acquiredAt: + description: acquiredAt is the time when the data + was acquired by the producer + format: date-time + type: string + clusterOperator: + 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 + the operator + items: + description: Condition contains details for + one aspect of the current state of this API + Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one + of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + name: + description: name is the name of the operator + type: string + resource: + description: resource is the ClusterOperator resource + that represents the operator + 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 + required: + - kind + - name + type: object + required: + - name + - resource + type: object + 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 the + control plane update process + type: string + completedAt: + description: completedAt is the time when the + update completed + format: date-time + type: string + completion: + description: completion is a percentage of the + update completion (0-100) + maximum: 100 + minimum: 0 + type: integer + conditions: + description: Conditions provides details about + the control plane update + items: + description: Condition contains details for + one aspect of the current state of this API + Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one + of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + estimatedCompletedAt: + description: estimatedCompletedAt is the estimated + time when the update will complete + format: date-time + type: string + resource: + description: resource is the ClusterVersion resource + that represents the control plane + 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 + required: + - kind + - name + type: object + startedAt: + description: startedAt is the time when the update + started + format: date-time + type: string + versions: + description: versions contains the original and + target versions of the upgrade + properties: + previous: + description: |- + previous is the version of the control plane before the update. When the cluster is being installed + for the first time, the version will have a placeholder value like '' and the target version + will have a boolean installation=true metadata + properties: + metadata: + description: metadata is a list of metadata + associated with the version + items: + properties: + bool: + type: bool + key: + type: string + string: + type: string + type: + description: VersionMetadataType + is the type of the metadata value + enum: + - string + - bool + - int + type: string + required: + - "" + - key + - type + type: object + type: array + x-kubernetes-list-map-keys: + - key + x-kubernetes-list-type: map + version: + description: |- + version is a semantic version string, or a placeholder '' for the special case where this + is a "previous" version in a new installation + type: string + required: + - version + type: object + target: + description: target is the version of the + control plane after the update + properties: + metadata: + description: metadata is a list of metadata + associated with the version + items: + properties: + bool: + type: bool + key: + type: string + string: + type: string + type: + description: VersionMetadataType + is the type of the metadata value + enum: + - string + - bool + - int + type: string + required: + - "" + - key + - type + type: object + type: array + x-kubernetes-list-map-keys: + - key + x-kubernetes-list-type: map + version: + description: |- + version is a semantic version string, or a placeholder '' for the special case where this + is a "previous" version in a new installation + type: string + required: + - version + type: object + required: + - previous + - target + type: object + required: + - assessment + - completion + - resource + - startedAt + - versions + type: object + 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 + properties: + impact: + description: impact describes the impact the reported + condition has on the cluster or update + properties: + description: + description: description is a human-oriented, + possibly longer-form description of the + condition reported by the insight + type: string + level: + allOf: + - enum: + - unknown + - info + - warning + - error + - critical + - enum: + - unknown + - info + - warning + - error + - critical + description: level is the severity of the + impact + type: string + summary: + description: summary is a short summary of + the impact + type: string + type: + 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 + required: + - level + - summary + - type + type: object + remediation: + description: remediation contains information + about how to resolve or prevent the reported + condition + properties: + estimatedFinish: + description: estimatedFinish is the estimated + time when the informer expects the condition + to be resolved, if applicable. + format: date-time + type: string + reference: + description: reference is a URL where administrators + can find information to resolve or prevent + the reported condition + format: uri + type: string + required: + - reference + type: object + scope: + description: scope is list of objects involved + in the insight + properties: + resources: + description: resources is a list of resources + involved in the insight + items: + description: ResourceRef is a reference + to a kubernetes resource, typically involved + in an insight + 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 + required: + - kind + - name + type: object + type: array + x-kubernetes-list-type: set + type: + allOf: + - enum: + - ControlPlane + - WorkerPool + - enum: + - ControlPlane + - WorkerPool + description: type is either ControlPlane or + WorkerPool + type: string + required: + - type + type: object + startedAt: + description: startedAt is the time when the condition + reported by the insight started + format: date-time + type: string + required: + - impact + - scope + - startedAt + type: object + 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 + machine config pool update process + type: string + completion: + description: completion is a percentage of the + update completion (0-100) + maximum: 100 + minimum: 0 + type: integer + conditions: + 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 + Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one + of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + name: + description: name is the name of the machine config + pool + type: string + resource: + description: resource is the MachineConfigPool + resource that represents the pool + 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 + required: + - kind + - name + type: object + scopeType: + 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 + 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 + matching the criteria + minimum: 0 + type: integer + type: + 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: + - count + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + required: + - assessment + - completion + - name + - resource + - scopeType + type: object + 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 + properties: + conditions: + description: conditions provides details about + the control plane update + items: + description: Condition contains details for + one aspect of the current state of this API + Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one + of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + estToComplete: + description: estToComplete is the estimated time + to complete the update, when known + type: string + message: + description: message is a short human-readable + message about the node update status + type: string + name: + description: name is the name of the node + type: string + poolResource: + description: poolResource is the resource that + represents the pool the node is a member of + 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 + required: + - kind + - name + type: object + resource: + description: resource is the Node resource that + represents the node + 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 + required: + - kind + - name + type: object + version: + description: version is the version of the node, + when known + type: string + required: + - name + - poolResource + - resource + 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 the insight over time + type: string + required: + - acquiredAt + - type + - uid + type: object + type: array + x-kubernetes-list-map-keys: + - uid + x-kubernetes-list-type: map + name: + description: Name is the name of the insight producer + type: string + required: + - name + type: object + type: array + 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 Hosted Control Planes) 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 + required: + - kind + - name + type: object + resource: + description: |- + resource is the resource that represents the control plane. It will typically be a ClusterVersion resource + in standalone OpenShift and HostedCluster in Hosted Control Planes. + 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 + required: + - kind + - name + type: object + required: + - resource + type: object + workerPools: + 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 + items: + description: Condition contains details for one aspect of + the current state of this API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one of True, False, + Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + informers: + description: informers is a list of insight producers, each + carries a list of insights + items: + description: UpdateInformer is an insight producer identified + by a name, carrying a list of insights it produced + properties: + insights: + description: Insights is a list of insights produced by + this producer + items: + properties: + acquiredAt: + description: acquiredAt is the time when the data + was acquired by the producer + format: date-time + type: string + clusterOperator: + 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 + the operator + items: + description: Condition contains details for + one aspect of the current state of this + API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, + one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + name: + description: name is the name of the operator + type: string + resource: + description: resource is the ClusterOperator + resource that represents the operator + 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 + required: + - kind + - name + type: object + required: + - name + - resource + type: object + 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 + the control plane update process + type: string + completedAt: + description: completedAt is the time when the + update completed + format: date-time + type: string + completion: + description: completion is a percentage of the + update completion (0-100) + maximum: 100 + minimum: 0 + type: integer + conditions: + description: Conditions provides details about + the control plane update + items: + description: Condition contains details for + one aspect of the current state of this + API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, + one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + estimatedCompletedAt: + description: estimatedCompletedAt is the estimated + time when the update will complete + format: date-time + type: string + resource: + description: resource is the ClusterVersion + resource that represents the control plane + 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 + required: + - kind + - name + type: object + startedAt: + description: startedAt is the time when the + update started + format: date-time + type: string + versions: + description: versions contains the original + and target versions of the upgrade + properties: + previous: + description: |- + previous is the version of the control plane before the update. When the cluster is being installed + for the first time, the version will have a placeholder value like '' and the target version + will have a boolean installation=true metadata + properties: + metadata: + description: metadata is a list of metadata + associated with the version + items: + properties: + bool: + type: bool + key: + type: string + string: + type: string + type: + description: VersionMetadataType + is the type of the metadata + value + enum: + - string + - bool + - int + type: string + required: + - "" + - key + - type + type: object + type: array + x-kubernetes-list-map-keys: + - key + x-kubernetes-list-type: map + version: + description: |- + version is a semantic version string, or a placeholder '' for the special case where this + is a "previous" version in a new installation + type: string + required: + - version + type: object + target: + description: target is the version of the + control plane after the update + properties: + metadata: + description: metadata is a list of metadata + associated with the version + items: + properties: + bool: + type: bool + key: + type: string + string: + type: string + type: + description: VersionMetadataType + is the type of the metadata + value + enum: + - string + - bool + - int + type: string + required: + - "" + - key + - type + type: object + type: array + x-kubernetes-list-map-keys: + - key + x-kubernetes-list-type: map + version: + description: |- + version is a semantic version string, or a placeholder '' for the special case where this + is a "previous" version in a new installation + type: string + required: + - version + type: object + required: + - previous + - target + type: object + required: + - assessment + - completion + - resource + - startedAt + - versions + type: object + 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 + properties: + impact: + description: impact describes the impact the + reported condition has on the cluster or update + properties: + description: + description: description is a human-oriented, + possibly longer-form description of the + condition reported by the insight + type: string + level: + allOf: + - enum: + - unknown + - info + - warning + - error + - critical + - enum: + - unknown + - info + - warning + - error + - critical + description: level is the severity of the + impact + type: string + summary: + description: summary is a short summary + of the impact + type: string + type: + 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 + required: + - level + - summary + - type + type: object + remediation: + description: remediation contains information + about how to resolve or prevent the reported + condition + properties: + estimatedFinish: + description: estimatedFinish is the estimated + time when the informer expects the condition + to be resolved, if applicable. + format: date-time + type: string + reference: + description: reference is a URL where administrators + can find information to resolve or prevent + the reported condition + format: uri + type: string + required: + - reference + type: object + scope: + description: scope is list of objects involved + in the insight + properties: + resources: + description: resources is a list of resources + involved in the insight + items: + description: ResourceRef is a reference + to a kubernetes resource, typically + involved in an insight + 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 + required: + - kind + - name + type: object + type: array + x-kubernetes-list-type: set + type: + allOf: + - enum: + - ControlPlane + - WorkerPool + - enum: + - ControlPlane + - WorkerPool + description: type is either ControlPlane + or WorkerPool + type: string + required: + - type + type: object + startedAt: + description: startedAt is the time when the + condition reported by the insight started + format: date-time + type: string + required: + - impact + - scope + - startedAt + type: object + 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 machine config pool update process + type: string + completion: + description: completion is a percentage of the + update completion (0-100) + maximum: 100 + minimum: 0 + type: integer + conditions: + 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 Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, + one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + name: + description: name is the name of the machine + config pool + type: string + resource: + description: resource is the MachineConfigPool + resource that represents the pool + 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 + required: + - kind + - name + type: object + scopeType: + 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 + 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 + matching the criteria + minimum: 0 + type: integer + type: + 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: + - count + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + required: + - assessment + - completion + - name + - resource + - scopeType + type: object + 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 + properties: + conditions: + description: conditions provides details about + the control plane update + items: + description: Condition contains details for + one aspect of the current state of this + API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, + one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase + or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + estToComplete: + description: estToComplete is the estimated + time to complete the update, when known + type: string + message: + description: message is a short human-readable + message about the node update status + type: string + name: + description: name is the name of the node + type: string + poolResource: + description: poolResource is the resource that + represents the pool the node is a member of + 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 + required: + - kind + - name + type: object + resource: + description: resource is the Node resource that + represents the node + 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 + required: + - kind + - name + type: object + version: + description: version is the version of the node, + when known + type: string + required: + - name + - poolResource + - resource + 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 the insight over time + type: string + required: + - acquiredAt + - type + - uid + type: object + type: array + x-kubernetes-list-map-keys: + - uid + x-kubernetes-list-type: map + name: + description: Name is the name of the insight producer + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + name: + description: name is the name of the pool + type: string + resource: + description: resource is the resource that represents the pool + 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 + required: + - kind + - name + type: object + required: + - name + - resource + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + required: + - controlPlane + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} diff --git a/update/v1alpha1/zz_generated.swagger_doc_generated.go b/update/v1alpha1/zz_generated.swagger_doc_generated.go new file mode 100644 index 00000000000..5da053628e4 --- /dev/null +++ b/update/v1alpha1/zz_generated.swagger_doc_generated.go @@ -0,0 +1,256 @@ +package v1alpha1 + +// This file contains a collection of methods that can be used from go-restful to +// generate Swagger API documentation for its models. Please read this PR for more +// information on the implementation: https://github.com/emicklei/go-restful/pull/215 +// +// TODOs are ignored from the parser (e.g. TODO(andronat):... || TODO:...) if and only if +// they are on one line! For multiple line or blocks that you want to ignore use ---. +// Any context after a --- is ignored. +// +// Those methods can be generated by using hack/update-swagger-docs.sh + +// AUTO-GENERATED FUNCTIONS START HERE +var map_ClusterOperatorStatusInsight = map[string]string{ + "": "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 { + return map_ClusterOperatorStatusInsight +} + +var map_ClusterVersionStatusInsight = map[string]string{ + "": "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", +} + +func (ClusterVersionStatusInsight) SwaggerDoc() map[string]string { + return map_ClusterVersionStatusInsight +} + +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 Hosted Control Planes.", + "poolResource": "poolResource is the resource that represents control plane node pool, typically a MachineConfigPool. This field is optional because some form factors (like Hosted Control Planes) 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 { + return map_ControlPlaneUpdateStatus +} + +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. When the cluster is being installed for the first time, the version will have a placeholder value like '' and the target version will have a boolean installation=true metadata", + "target": "target is the version of the control plane after the update", +} + +func (ControlPlaneUpdateVersions) SwaggerDoc() map[string]string { + return map_ControlPlaneUpdateVersions +} + +var map_MachineConfigPoolStatusInsight = map[string]string{ + "": "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 { + return map_MachineConfigPoolStatusInsight +} + +var map_NodeStatusInsight = map[string]string{ + "": "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_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 (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 node pool", +} + +func (PoolResourceRef) SwaggerDoc() map[string]string { + return map_PoolResourceRef +} + +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", +} + +func (PoolUpdateStatus) SwaggerDoc() map[string]string { + return map_PoolUpdateStatus +} + +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, if any", + "name": "Name of the object being referenced", + "namespace": "Namespace of the object being referenced, if any", +} + +func (ResourceRef) SwaggerDoc() map[string]string { + return map_ResourceRef +} + +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 information about how to resolve or prevent the reported condition", +} + +func (UpdateHealthInsight) SwaggerDoc() map[string]string { + return map_UpdateHealthInsight +} + +var map_UpdateInformer = map[string]string{ + "": "UpdateInformer is an insight producer identified by a name, carrying a list of insights it produced", + "name": "Name is the name of the insight producer", + "insights": "Insights is a list of insights produced by this producer", +} + +func (UpdateInformer) SwaggerDoc() map[string]string { + return map_UpdateInformer +} + +var map_UpdateInsight = map[string]string{ + "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 { + return map_UpdateInsight +} + +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, possibly longer-form description of the condition reported by the insight", +} + +func (UpdateInsightImpact) SwaggerDoc() map[string]string { + return map_UpdateInsightImpact +} + +var map_UpdateInsightRemediation = map[string]string{ + "": "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 { + return map_UpdateInsightRemediation +} + +var map_UpdateInsightScope = map[string]string{ + "": "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 reports status for in-progress cluster version updates\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 { + return map_UpdateStatus +} + +var map_UpdateStatusList = map[string]string{ + "": "UpdateStatusList is a list of UpdateStatus resources\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 (UpdateStatusList) SwaggerDoc() map[string]string { + return map_UpdateStatusList +} + +var map_UpdateStatusSpec = map[string]string{ + "": "UpdateStatusSpec is empty for now, can possibly hold configuration for Update Status Controller in the future", +} + +func (UpdateStatusSpec) SwaggerDoc() map[string]string { + return map_UpdateStatusSpec +} + +var map_UpdateStatusStatus = map[string]string{ + "": "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, or a placeholder '' for the special case where this is a \"previous\" version in a new installation", + "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