package v1 import "cue.dev/x/k8s.io/apimachinery/pkg/apis/meta/v1" // APIService represents a server for a particular GroupVersion. Name must be "version.group". #APIService: { // 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": "apiregistration.k8s.io/v1" // 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": "APIService" // Standard object's metadata. More info: // https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata "metadata"?: v1.#ObjectMeta // Spec contains information for locating and communicating with a server "spec"?: #APIServiceSpec // Status contains derived information about an API server "status"?: #APIServiceStatus } // APIServiceCondition describes the state of an APIService at a particular point #APIServiceCondition: { // Last time the condition transitioned from one status to another. "lastTransitionTime"?: v1.#Time // Human-readable message indicating details about last transition. "message"?: string // Unique, one-word, CamelCase reason for the condition's last transition. "reason"?: string // Status is the status of the condition. Can be True, False, Unknown. "status"!: string // Type is the type of the condition. "type"!: string } // APIServiceList is a list of APIService objects. #APIServiceList: { // 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": "apiregistration.k8s.io/v1" // Items is the list of APIService "items"!: [...#APIService] // 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": "APIServiceList" // Standard list metadata More info: // https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata "metadata"?: v1.#ListMeta } // APIServiceSpec contains information for locating and communicating with a // server. Only https is supported, though you are able to disable certificate // verification. #APIServiceSpec: { // CABundle is a PEM encoded CA bundle which will be used to validate an API // server's serving certificate. If unspecified, system trust roots on the // apiserver are used. "caBundle"?: string // Group is the API group name this server hosts "group"?: string // GroupPriorityMinimum is the priority this group should have at least. Higher // priority means that the group is preferred by clients over lower priority // ones. Note that other versions of this group might specify even higher // GroupPriorityMinimum values such that the whole group gets a higher // priority. The primary sort is based on GroupPriorityMinimum, ordered highest // number to lowest (20 before 10). The secondary sort is based on the // alphabetical comparison of the name of the object. (v1.bar before v1.foo) // We'd recommend something like: *.k8s.io (except extensions) at 18000 and // PaaSes (OpenShift, Deis) are recommended to be in the 2000s "groupPriorityMinimum"!: int32 & int // InsecureSkipTLSVerify disables TLS certificate verification when // communicating with this server. This is strongly discouraged. You should use // the CABundle instead. "insecureSkipTLSVerify"?: bool // Service is a reference to the service for this API server. It must // communicate on port 443. If the Service is nil, that means the handling for // the API groupversion is handled locally on this server. The call will simply // delegate to the normal handler chain to be fulfilled. "service"?: #ServiceReference // Version is the API version this server hosts. For example, "v1" "version"?: string // VersionPriority controls the ordering of this API version inside of its // group. Must be greater than zero. The primary sort is based on // VersionPriority, ordered highest to lowest (20 before 10). Since it's inside // of a group, the number can be small, probably in the 10s. In case of equal // version priorities, the version string will be used to compute the order // inside a group. If the version string is "kube-like", it will sort above non // "kube-like" version strings, which are ordered lexicographically. // "Kube-like" versions start with a "v", then are followed by a number (the // major version), then optionally the string "alpha" or "beta" and another // number (the minor version). These are sorted first by GA > beta > alpha // (where GA is a version with no suffix such as beta or alpha), and then by // comparing major version, then minor version. An example sorted list of // versions: v10, v2, v1, v11beta2, v10beta3, v3beta1, v12alpha1, v11alpha2, // foo1, foo10. "versionPriority"!: int32 & int } // APIServiceStatus contains derived information about an API server #APIServiceStatus: { // Current service state of apiService. "conditions"?: [...#APIServiceCondition] } // ServiceReference holds a reference to Service.legacy.k8s.io #ServiceReference: { // Name is the name of the service "name"?: string // Namespace is the namespace of the service "namespace"?: string // If specified, the port on the service that hosting webhook. Default to 443 // for backward compatibility. `port` should be a valid port number (1-65535, // inclusive). "port"?: int32 & int }