package v1alpha1 import "cue.dev/x/k8s.io/apimachinery/pkg/apis/meta/v1" // An API server instance reports the version it can decode and the version it // encodes objects to when persisting objects in the backend. #ServerStorageVersion: { // apiServerID is the ID of the reporting API server. "apiServerID"!: string // decodableVersions are the encoding versions the API server can handle to // decode. The API server can decode objects encoded in these versions. The // encodingVersion must be included in the decodableVersions. "decodableVersions"!: [...string] // encodingVersion the API server encodes the object to when persisting it in // the backend (e.g., etcd). "encodingVersion"!: string // servedVersions lists all versions the API server can serve. DecodableVersions // must include all ServedVersions. "servedVersions"?: [...string] } // Storage version of a specific resource. #StorageVersion: { // 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 "apiVersion": "internal.apiserver.k8s.io/v1alpha1" // 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 "kind": "StorageVersion" // metadata is the standard object metadata. The name is .. "metadata"!: v1.#ObjectMeta // spec is an empty spec. It is here to comply with Kubernetes API style. "spec"?: #StorageVersionSpec // status on the version the API server instance can decode from and encode // objects to when persisting objects in the backend. "status"?: #StorageVersionStatus } // Describes the state of the storageVersion at a certain point. #StorageVersionCondition: { // lastTransitionTime is the last time the condition transitioned from one status to another. "lastTransitionTime"?: v1.#Time // message is a human readable string indicating details about the transition. "message"!: string // observedGeneration represents the .metadata.generation that the condition was // set based upon, if field is set. "observedGeneration"?: int64 & int // reason for the condition's last transition. "reason"!: string // status of the condition, one of True, False, Unknown. "status"!: string // type of the condition. "type"!: string } // A list of StorageVersions. #StorageVersionList: { // 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 "apiVersion": "internal.apiserver.k8s.io/v1alpha1" // Items holds a list of StorageVersion "items"!: [...#StorageVersion] // 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 "kind": "StorageVersionList" // Standard list metadata. More info: // https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata "metadata"?: v1.#ListMeta } // StorageVersionSpec is an empty spec. #StorageVersionSpec: {} // API server instances report the versions they can decode and the version they // encode objects to when persisting objects in the backend. #StorageVersionStatus: { // commonEncodingVersion is set to an encoding storage version if all API server // instances share that same version. If they don't share one storage version, // this field is left empty. API servers should finish updating its // storageVersionStatus entry before serving write operations, so that this // field will be in sync with the reality. "commonEncodingVersion"?: string // conditions lists the latest available observations of the storageVersion's state. "conditions"?: [...#StorageVersionCondition] // storageVersions lists the reported versions per API server instance. "storageVersions"?: [...#ServerStorageVersion] }