| /* |
| Copyright The Kubernetes Authors. |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| */ |
| |
| |
| // This file was autogenerated by go-to-protobuf. Do not edit it manually! |
| |
| syntax = 'proto2'; |
| |
| package k8s.io.apimachinery.pkg.apis.meta.v1; |
| |
| import "k8s.io/apimachinery/pkg/runtime/generated.proto"; |
| import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; |
| |
| // Package-wide variables from generator "generated". |
| option go_package = "v1"; |
| |
| // APIGroup contains the name, the supported versions, and the preferred version |
| // of a group. |
| message APIGroup { |
| // name is the name of the group. |
| optional string name = 1; |
| |
| // versions are the versions supported in this group. |
| repeated GroupVersionForDiscovery versions = 2; |
| |
| // preferredVersion is the version preferred by the API server, which |
| // probably is the storage version. |
| // +optional |
| optional GroupVersionForDiscovery preferredVersion = 3; |
| |
| // a map of client CIDR to server address that is serving this group. |
| // This is to help clients reach servers in the most network-efficient way possible. |
| // Clients can use the appropriate server address as per the CIDR that they match. |
| // In case of multiple matches, clients should use the longest matching CIDR. |
| // The server returns only those CIDRs that it thinks that the client can match. |
| // For example: the master will return an internal IP CIDR only, if the client reaches the server using an internal IP. |
| // Server looks at X-Forwarded-For header or X-Real-Ip header or request.RemoteAddr (in that order) to get the client IP. |
| // +optional |
| repeated ServerAddressByClientCIDR serverAddressByClientCIDRs = 4; |
| } |
| |
| // APIGroupList is a list of APIGroup, to allow clients to discover the API at |
| // /apis. |
| message APIGroupList { |
| // groups is a list of APIGroup. |
| repeated APIGroup groups = 1; |
| } |
| |
| // APIResource specifies the name of a resource and whether it is namespaced. |
| message APIResource { |
| // name is the plural name of the resource. |
| optional string name = 1; |
| |
| // singularName is the singular name of the resource. This allows clients to handle plural and singular opaquely. |
| // The singularName is more correct for reporting status on a single item and both singular and plural are allowed |
| // from the kubectl CLI interface. |
| optional string singularName = 6; |
| |
| // namespaced indicates if a resource is namespaced or not. |
| optional bool namespaced = 2; |
| |
| // group is the preferred group of the resource. Empty implies the group of the containing resource list. |
| // For subresources, this may have a different value, for example: Scale". |
| optional string group = 8; |
| |
| // version is the preferred version of the resource. Empty implies the version of the containing resource list |
| // For subresources, this may have a different value, for example: v1 (while inside a v1beta1 version of the core resource's group)". |
| optional string version = 9; |
| |
| // kind is the kind for the resource (e.g. 'Foo' is the kind for a resource 'foo') |
| optional string kind = 3; |
| |
| // verbs is a list of supported kube verbs (this includes get, list, watch, create, |
| // update, patch, delete, deletecollection, and proxy) |
| optional Verbs verbs = 4; |
| |
| // shortNames is a list of suggested short names of the resource. |
| repeated string shortNames = 5; |
| |
| // categories is a list of the grouped resources this resource belongs to (e.g. 'all') |
| repeated string categories = 7; |
| } |
| |
| // APIResourceList is a list of APIResource, it is used to expose the name of the |
| // resources supported in a specific group and version, and if the resource |
| // is namespaced. |
| message APIResourceList { |
| // groupVersion is the group and version this APIResourceList is for. |
| optional string groupVersion = 1; |
| |
| // resources contains the name of the resources and if they are namespaced. |
| repeated APIResource resources = 2; |
| } |
| |
| // APIVersions lists the versions that are available, to allow clients to |
| // discover the API at /api, which is the root path of the legacy v1 API. |
| // |
| // +protobuf.options.(gogoproto.goproto_stringer)=false |
| // +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object |
| message APIVersions { |
| // versions are the api versions that are available. |
| repeated string versions = 1; |
| |
| // a map of client CIDR to server address that is serving this group. |
| // This is to help clients reach servers in the most network-efficient way possible. |
| // Clients can use the appropriate server address as per the CIDR that they match. |
| // In case of multiple matches, clients should use the longest matching CIDR. |
| // The server returns only those CIDRs that it thinks that the client can match. |
| // For example: the master will return an internal IP CIDR only, if the client reaches the server using an internal IP. |
| // Server looks at X-Forwarded-For header or X-Real-Ip header or request.RemoteAddr (in that order) to get the client IP. |
| repeated ServerAddressByClientCIDR serverAddressByClientCIDRs = 2; |
| } |
| |
| // CreateOptions may be provided when creating an API object. |
| message CreateOptions { |
| // When present, indicates that modifications should not be |
| // persisted. An invalid or unrecognized dryRun directive will |
| // result in an error response and no further processing of the |
| // request. Valid values are: |
| // - All: all dry run stages will be processed |
| // +optional |
| repeated string dryRun = 1; |
| |
| // If IncludeUninitialized is specified, the object may be |
| // returned without completing initialization. |
| optional bool includeUninitialized = 2; |
| } |
| |
| // DeleteOptions may be provided when deleting an API object. |
| message DeleteOptions { |
| // The duration in seconds before the object should be deleted. Value must be non-negative integer. |
| // The value zero indicates delete immediately. If this value is nil, the default grace period for the |
| // specified type will be used. |
| // Defaults to a per object value if not specified. zero means delete immediately. |
| // +optional |
| optional int64 gracePeriodSeconds = 1; |
| |
| // Must be fulfilled before a deletion is carried out. If not possible, a 409 Conflict status will be |
| // returned. |
| // +optional |
| optional Preconditions preconditions = 2; |
| |
| // Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. |
| // Should the dependent objects be orphaned. If true/false, the "orphan" |
| // finalizer will be added to/removed from the object's finalizers list. |
| // Either this field or PropagationPolicy may be set, but not both. |
| // +optional |
| optional bool orphanDependents = 3; |
| |
| // Whether and how garbage collection will be performed. |
| // Either this field or OrphanDependents may be set, but not both. |
| // The default policy is decided by the existing finalizer set in the |
| // metadata.finalizers and the resource-specific default policy. |
| // Acceptable values are: 'Orphan' - orphan the dependents; 'Background' - |
| // allow the garbage collector to delete the dependents in the background; |
| // 'Foreground' - a cascading policy that deletes all dependents in the |
| // foreground. |
| // +optional |
| optional string propagationPolicy = 4; |
| |
| // When present, indicates that modifications should not be |
| // persisted. An invalid or unrecognized dryRun directive will |
| // result in an error response and no further processing of the |
| // request. Valid values are: |
| // - All: all dry run stages will be processed |
| // +optional |
| repeated string dryRun = 5; |
| } |
| |
| // Duration is a wrapper around time.Duration which supports correct |
| // marshaling to YAML and JSON. In particular, it marshals into strings, which |
| // can be used as map keys in json. |
| message Duration { |
| optional int64 duration = 1; |
| } |
| |
| // ExportOptions is the query options to the standard REST get call. |
| message ExportOptions { |
| // Should this value be exported. Export strips fields that a user can not specify. |
| optional bool export = 1; |
| |
| // Should the export be exact. Exact export maintains cluster-specific fields like 'Namespace'. |
| optional bool exact = 2; |
| } |
| |
| // GetOptions is the standard query options to the standard REST get call. |
| message GetOptions { |
| // When specified: |
| // - if unset, then the result is returned from remote storage based on quorum-read flag; |
| // - if it's 0, then we simply return what we currently have in cache, no guarantee; |
| // - if set to non zero, then the result is at least as fresh as given rv. |
| optional string resourceVersion = 1; |
| |
| // If true, partially initialized resources are included in the response. |
| // +optional |
| optional bool includeUninitialized = 2; |
| } |
| |
| // GroupKind specifies a Group and a Kind, but does not force a version. This is useful for identifying |
| // concepts during lookup stages without having partially valid types |
| // |
| // +protobuf.options.(gogoproto.goproto_stringer)=false |
| message GroupKind { |
| optional string group = 1; |
| |
| optional string kind = 2; |
| } |
| |
| // GroupResource specifies a Group and a Resource, but does not force a version. This is useful for identifying |
| // concepts during lookup stages without having partially valid types |
| // |
| // +protobuf.options.(gogoproto.goproto_stringer)=false |
| message GroupResource { |
| optional string group = 1; |
| |
| optional string resource = 2; |
| } |
| |
| // GroupVersion contains the "group" and the "version", which uniquely identifies the API. |
| // |
| // +protobuf.options.(gogoproto.goproto_stringer)=false |
| message GroupVersion { |
| optional string group = 1; |
| |
| optional string version = 2; |
| } |
| |
| // GroupVersion contains the "group/version" and "version" string of a version. |
| // It is made a struct to keep extensibility. |
| message GroupVersionForDiscovery { |
| // groupVersion specifies the API group and version in the form "group/version" |
| optional string groupVersion = 1; |
| |
| // version specifies the version in the form of "version". This is to save |
| // the clients the trouble of splitting the GroupVersion. |
| optional string version = 2; |
| } |
| |
| // GroupVersionKind unambiguously identifies a kind. It doesn't anonymously include GroupVersion |
| // to avoid automatic coersion. It doesn't use a GroupVersion to avoid custom marshalling |
| // |
| // +protobuf.options.(gogoproto.goproto_stringer)=false |
| message GroupVersionKind { |
| optional string group = 1; |
| |
| optional string version = 2; |
| |
| optional string kind = 3; |
| } |
| |
| // GroupVersionResource unambiguously identifies a resource. It doesn't anonymously include GroupVersion |
| // to avoid automatic coersion. It doesn't use a GroupVersion to avoid custom marshalling |
| // |
| // +protobuf.options.(gogoproto.goproto_stringer)=false |
| message GroupVersionResource { |
| optional string group = 1; |
| |
| optional string version = 2; |
| |
| optional string resource = 3; |
| } |
| |
| // Initializer is information about an initializer that has not yet completed. |
| message Initializer { |
| // name of the process that is responsible for initializing this object. |
| optional string name = 1; |
| } |
| |
| // Initializers tracks the progress of initialization. |
| message Initializers { |
| // Pending is a list of initializers that must execute in order before this object is visible. |
| // When the last pending initializer is removed, and no failing result is set, the initializers |
| // struct will be set to nil and the object is considered as initialized and visible to all |
| // clients. |
| // +patchMergeKey=name |
| // +patchStrategy=merge |
| repeated Initializer pending = 1; |
| |
| // If result is set with the Failure field, the object will be persisted to storage and then deleted, |
| // ensuring that other clients can observe the deletion. |
| optional Status result = 2; |
| } |
| |
| // A label selector is a label query over a set of resources. The result of matchLabels and |
| // matchExpressions are ANDed. An empty label selector matches all objects. A null |
| // label selector matches no objects. |
| message LabelSelector { |
| // matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels |
| // map is equivalent to an element of matchExpressions, whose key field is "key", the |
| // operator is "In", and the values array contains only "value". The requirements are ANDed. |
| // +optional |
| map<string, string> matchLabels = 1; |
| |
| // matchExpressions is a list of label selector requirements. The requirements are ANDed. |
| // +optional |
| repeated LabelSelectorRequirement matchExpressions = 2; |
| } |
| |
| // A label selector requirement is a selector that contains values, a key, and an operator that |
| // relates the key and values. |
| message LabelSelectorRequirement { |
| // key is the label key that the selector applies to. |
| // +patchMergeKey=key |
| // +patchStrategy=merge |
| optional string key = 1; |
| |
| // operator represents a key's relationship to a set of values. |
| // Valid operators are In, NotIn, Exists and DoesNotExist. |
| optional string operator = 2; |
| |
| // values is an array of string values. If the operator is In or NotIn, |
| // the values array must be non-empty. If the operator is Exists or DoesNotExist, |
| // the values array must be empty. This array is replaced during a strategic |
| // merge patch. |
| // +optional |
| repeated string values = 3; |
| } |
| |
| // List holds a list of objects, which may not be known by the server. |
| message List { |
| // Standard list metadata. |
| // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds |
| // +optional |
| optional ListMeta metadata = 1; |
| |
| // List of objects |
| repeated k8s.io.apimachinery.pkg.runtime.RawExtension items = 2; |
| } |
| |
| // ListMeta describes metadata that synthetic resources must have, including lists and |
| // various status objects. A resource may have only one of {ObjectMeta, ListMeta}. |
| message ListMeta { |
| // selfLink is a URL representing this object. |
| // Populated by the system. |
| // Read-only. |
| // +optional |
| optional string selfLink = 1; |
| |
| // String that identifies the server's internal version of this object that |
| // can be used by clients to determine when objects have changed. |
| // Value must be treated as opaque by clients and passed unmodified back to the server. |
| // Populated by the system. |
| // Read-only. |
| // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency |
| // +optional |
| optional string resourceVersion = 2; |
| |
| // continue may be set if the user set a limit on the number of items returned, and indicates that |
| // the server has more data available. The value is opaque and may be used to issue another request |
| // to the endpoint that served this list to retrieve the next set of available objects. Continuing a |
| // consistent list may not be possible if the server configuration has changed or more than a few |
| // minutes have passed. The resourceVersion field returned when using this continue value will be |
| // identical to the value in the first response, unless you have received this token from an error |
| // message. |
| optional string continue = 3; |
| } |
| |
| // ListOptions is the query options to a standard REST list call. |
| message ListOptions { |
| // A selector to restrict the list of returned objects by their labels. |
| // Defaults to everything. |
| // +optional |
| optional string labelSelector = 1; |
| |
| // A selector to restrict the list of returned objects by their fields. |
| // Defaults to everything. |
| // +optional |
| optional string fieldSelector = 2; |
| |
| // If true, partially initialized resources are included in the response. |
| // +optional |
| optional bool includeUninitialized = 6; |
| |
| // Watch for changes to the described resources and return them as a stream of |
| // add, update, and remove notifications. Specify resourceVersion. |
| // +optional |
| optional bool watch = 3; |
| |
| // When specified with a watch call, shows changes that occur after that particular version of a resource. |
| // Defaults to changes from the beginning of history. |
| // When specified for list: |
| // - if unset, then the result is returned from remote storage based on quorum-read flag; |
| // - if it's 0, then we simply return what we currently have in cache, no guarantee; |
| // - if set to non zero, then the result is at least as fresh as given rv. |
| // +optional |
| optional string resourceVersion = 4; |
| |
| // Timeout for the list/watch call. |
| // This limits the duration of the call, regardless of any activity or inactivity. |
| // +optional |
| optional int64 timeoutSeconds = 5; |
| |
| // limit is a maximum number of responses to return for a list call. If more items exist, the |
| // server will set the `continue` field on the list metadata to a value that can be used with the |
| // same initial query to retrieve the next set of results. Setting a limit may return fewer than |
| // the requested amount of items (up to zero items) in the event all requested objects are |
| // filtered out and clients should only use the presence of the continue field to determine whether |
| // more results are available. Servers may choose not to support the limit argument and will return |
| // all of the available results. If limit is specified and the continue field is empty, clients may |
| // assume that no more results are available. This field is not supported if watch is true. |
| // |
| // The server guarantees that the objects returned when using continue will be identical to issuing |
| // a single list call without a limit - that is, no objects created, modified, or deleted after the |
| // first request is issued will be included in any subsequent continued requests. This is sometimes |
| // referred to as a consistent snapshot, and ensures that a client that is using limit to receive |
| // smaller chunks of a very large result can ensure they see all possible objects. If objects are |
| // updated during a chunked list the version of the object that was present at the time the first list |
| // result was calculated is returned. |
| optional int64 limit = 7; |
| |
| // The continue option should be set when retrieving more results from the server. Since this value is |
| // server defined, clients may only use the continue value from a previous query result with identical |
| // query parameters (except for the value of continue) and the server may reject a continue value it |
| // does not recognize. If the specified continue value is no longer valid whether due to expiration |
| // (generally five to fifteen minutes) or a configuration change on the server, the server will |
| // respond with a 410 ResourceExpired error together with a continue token. If the client needs a |
| // consistent list, it must restart their list without the continue field. Otherwise, the client may |
| // send another list request with the token received with the 410 error, the server will respond with |
| // a list starting from the next key, but from the latest snapshot, which is inconsistent from the |
| // previous list results - objects that are created, modified, or deleted after the first list request |
| // will be included in the response, as long as their keys are after the "next key". |
| // |
| // This field is not supported when watch is true. Clients may start a watch from the last |
| // resourceVersion value returned by the server and not miss any modifications. |
| optional string continue = 8; |
| } |
| |
| // MicroTime is version of Time with microsecond level precision. |
| // |
| // +protobuf.options.marshal=false |
| // +protobuf.as=Timestamp |
| // +protobuf.options.(gogoproto.goproto_stringer)=false |
| message MicroTime { |
| // Represents seconds of UTC time since Unix epoch |
| // 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to |
| // 9999-12-31T23:59:59Z inclusive. |
| optional int64 seconds = 1; |
| |
| // Non-negative fractions of a second at nanosecond resolution. Negative |
| // second values with fractions must still have non-negative nanos values |
| // that count forward in time. Must be from 0 to 999,999,999 |
| // inclusive. This field may be limited in precision depending on context. |
| optional int32 nanos = 2; |
| } |
| |
| // ObjectMeta is metadata that all persisted resources must have, which includes all objects |
| // users must create. |
| message ObjectMeta { |
| // Name must be unique within a namespace. Is required when creating resources, although |
| // some resources may allow a client to request the generation of an appropriate name |
| // automatically. Name is primarily intended for creation idempotence and configuration |
| // definition. |
| // Cannot be updated. |
| // More info: http://kubernetes.io/docs/user-guide/identifiers#names |
| // +optional |
| optional string name = 1; |
| |
| // GenerateName is an optional prefix, used by the server, to generate a unique |
| // name ONLY IF the Name field has not been provided. |
| // If this field is used, the name returned to the client will be different |
| // than the name passed. This value will also be combined with a unique suffix. |
| // The provided value has the same validation rules as the Name field, |
| // and may be truncated by the length of the suffix required to make the value |
| // unique on the server. |
| // |
| // If this field is specified and the generated name exists, the server will |
| // NOT return a 409 - instead, it will either return 201 Created or 500 with Reason |
| // ServerTimeout indicating a unique name could not be found in the time allotted, and the client |
| // should retry (optionally after the time indicated in the Retry-After header). |
| // |
| // Applied only if Name is not specified. |
| // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency |
| // +optional |
| optional string generateName = 2; |
| |
| // Namespace defines the space within each name must be unique. An empty namespace is |
| // equivalent to the "default" namespace, but "default" is the canonical representation. |
| // Not all objects are required to be scoped to a namespace - the value of this field for |
| // those objects will be empty. |
| // |
| // Must be a DNS_LABEL. |
| // Cannot be updated. |
| // More info: http://kubernetes.io/docs/user-guide/namespaces |
| // +optional |
| optional string namespace = 3; |
| |
| // SelfLink is a URL representing this object. |
| // Populated by the system. |
| // Read-only. |
| // +optional |
| optional string selfLink = 4; |
| |
| // UID is the unique in time and space value for this object. It is typically generated by |
| // the server on successful creation of a resource and is not allowed to change on PUT |
| // operations. |
| // |
| // Populated by the system. |
| // Read-only. |
| // More info: http://kubernetes.io/docs/user-guide/identifiers#uids |
| // +optional |
| optional string uid = 5; |
| |
| // An opaque value that represents the internal version of this object that can |
| // be used by clients to determine when objects have changed. May be used for optimistic |
| // concurrency, change detection, and the watch operation on a resource or set of resources. |
| // Clients must treat these values as opaque and passed unmodified back to the server. |
| // They may only be valid for a particular resource or set of resources. |
| // |
| // Populated by the system. |
| // Read-only. |
| // Value must be treated as opaque by clients and . |
| // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency |
| // +optional |
| optional string resourceVersion = 6; |
| |
| // A sequence number representing a specific generation of the desired state. |
| // Populated by the system. Read-only. |
| // +optional |
| optional int64 generation = 7; |
| |
| // CreationTimestamp is a timestamp representing the server time when this object was |
| // created. It is not guaranteed to be set in happens-before order across separate operations. |
| // Clients may not set this value. It is represented in RFC3339 form and is in UTC. |
| // |
| // Populated by the system. |
| // Read-only. |
| // Null for lists. |
| // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata |
| // +optional |
| optional Time creationTimestamp = 8; |
| |
| // DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This |
| // field is set by the server when a graceful deletion is requested by the user, and is not |
| // directly settable by a client. The resource is expected to be deleted (no longer visible |
| // from resource lists, and not reachable by name) after the time in this field, once the |
| // finalizers list is empty. As long as the finalizers list contains items, deletion is blocked. |
| // Once the deletionTimestamp is set, this value may not be unset or be set further into the |
| // future, although it may be shortened or the resource may be deleted prior to this time. |
| // For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react |
| // by sending a graceful termination signal to the containers in the pod. After that 30 seconds, |
| // the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup, |
| // remove the pod from the API. In the presence of network partitions, this object may still |
| // exist after this timestamp, until an administrator or automated process can determine the |
| // resource is fully terminated. |
| // If not set, graceful deletion of the object has not been requested. |
| // |
| // Populated by the system when a graceful deletion is requested. |
| // Read-only. |
| // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata |
| // +optional |
| optional Time deletionTimestamp = 9; |
| |
| // Number of seconds allowed for this object to gracefully terminate before |
| // it will be removed from the system. Only set when deletionTimestamp is also set. |
| // May only be shortened. |
| // Read-only. |
| // +optional |
| optional int64 deletionGracePeriodSeconds = 10; |
| |
| // Map of string keys and values that can be used to organize and categorize |
| // (scope and select) objects. May match selectors of replication controllers |
| // and services. |
| // More info: http://kubernetes.io/docs/user-guide/labels |
| // +optional |
| map<string, string> labels = 11; |
| |
| // Annotations is an unstructured key value map stored with a resource that may be |
| // set by external tools to store and retrieve arbitrary metadata. They are not |
| // queryable and should be preserved when modifying objects. |
| // More info: http://kubernetes.io/docs/user-guide/annotations |
| // +optional |
| map<string, string> annotations = 12; |
| |
| // List of objects depended by this object. If ALL objects in the list have |
| // been deleted, this object will be garbage collected. If this object is managed by a controller, |
| // then an entry in this list will point to this controller, with the controller field set to true. |
| // There cannot be more than one managing controller. |
| // +optional |
| // +patchMergeKey=uid |
| // +patchStrategy=merge |
| repeated OwnerReference ownerReferences = 13; |
| |
| // An initializer is a controller which enforces some system invariant at object creation time. |
| // This field is a list of initializers that have not yet acted on this object. If nil or empty, |
| // this object has been completely initialized. Otherwise, the object is considered uninitialized |
| // and is hidden (in list/watch and get calls) from clients that haven't explicitly asked to |
| // observe uninitialized objects. |
| // |
| // When an object is created, the system will populate this list with the current set of initializers. |
| // Only privileged users may set or modify this list. Once it is empty, it may not be modified further |
| // by any user. |
| optional Initializers initializers = 16; |
| |
| // Must be empty before the object is deleted from the registry. Each entry |
| // is an identifier for the responsible component that will remove the entry |
| // from the list. If the deletionTimestamp of the object is non-nil, entries |
| // in this list can only be removed. |
| // +optional |
| // +patchStrategy=merge |
| repeated string finalizers = 14; |
| |
| // The name of the cluster which the object belongs to. |
| // This is used to distinguish resources with same name and namespace in different clusters. |
| // This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request. |
| // +optional |
| optional string clusterName = 15; |
| } |
| |
| // OwnerReference contains enough information to let you identify an owning |
| // object. Currently, an owning object must be in the same namespace, so there |
| // is no namespace field. |
| message OwnerReference { |
| // API version of the referent. |
| optional string apiVersion = 5; |
| |
| // Kind of the referent. |
| // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds |
| optional string kind = 1; |
| |
| // Name of the referent. |
| // More info: http://kubernetes.io/docs/user-guide/identifiers#names |
| optional string name = 3; |
| |
| // UID of the referent. |
| // More info: http://kubernetes.io/docs/user-guide/identifiers#uids |
| optional string uid = 4; |
| |
| // If true, this reference points to the managing controller. |
| // +optional |
| optional bool controller = 6; |
| |
| // If true, AND if the owner has the "foregroundDeletion" finalizer, then |
| // the owner cannot be deleted from the key-value store until this |
| // reference is removed. |
| // Defaults to false. |
| // To set this field, a user needs "delete" permission of the owner, |
| // otherwise 422 (Unprocessable Entity) will be returned. |
| // +optional |
| optional bool blockOwnerDeletion = 7; |
| } |
| |
| // Patch is provided to give a concrete name and type to the Kubernetes PATCH request body. |
| message Patch { |
| } |
| |
| // Preconditions must be fulfilled before an operation (update, delete, etc.) is carried out. |
| message Preconditions { |
| // Specifies the target UID. |
| // +optional |
| optional string uid = 1; |
| } |
| |
| // RootPaths lists the paths available at root. |
| // For example: "/healthz", "/apis". |
| message RootPaths { |
| // paths are the paths available at root. |
| repeated string paths = 1; |
| } |
| |
| // ServerAddressByClientCIDR helps the client to determine the server address that they should use, depending on the clientCIDR that they match. |
| message ServerAddressByClientCIDR { |
| // The CIDR with which clients can match their IP to figure out the server address that they should use. |
| optional string clientCIDR = 1; |
| |
| // Address of this server, suitable for a client that matches the above CIDR. |
| // This can be a hostname, hostname:port, IP or IP:port. |
| optional string serverAddress = 2; |
| } |
| |
| // Status is a return value for calls that don't return other objects. |
| message Status { |
| // Standard list metadata. |
| // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds |
| // +optional |
| optional ListMeta metadata = 1; |
| |
| // Status of the operation. |
| // One of: "Success" or "Failure". |
| // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status |
| // +optional |
| optional string status = 2; |
| |
| // A human-readable description of the status of this operation. |
| // +optional |
| optional string message = 3; |
| |
| // A machine-readable description of why this operation is in the |
| // "Failure" status. If this value is empty there |
| // is no information available. A Reason clarifies an HTTP status |
| // code but does not override it. |
| // +optional |
| optional string reason = 4; |
| |
| // Extended data associated with the reason. Each reason may define its |
| // own extended details. This field is optional and the data returned |
| // is not guaranteed to conform to any schema except that defined by |
| // the reason type. |
| // +optional |
| optional StatusDetails details = 5; |
| |
| // Suggested HTTP return code for this status, 0 if not set. |
| // +optional |
| optional int32 code = 6; |
| } |
| |
| // StatusCause provides more information about an api.Status failure, including |
| // cases when multiple errors are encountered. |
| message StatusCause { |
| // A machine-readable description of the cause of the error. If this value is |
| // empty there is no information available. |
| // +optional |
| optional string reason = 1; |
| |
| // A human-readable description of the cause of the error. This field may be |
| // presented as-is to a reader. |
| // +optional |
| optional string message = 2; |
| |
| // The field of the resource that has caused this error, as named by its JSON |
| // serialization. May include dot and postfix notation for nested attributes. |
| // Arrays are zero-indexed. Fields may appear more than once in an array of |
| // causes due to fields having multiple errors. |
| // Optional. |
| // |
| // Examples: |
| // "name" - the field "name" on the current resource |
| // "items[0].name" - the field "name" on the first array entry in "items" |
| // +optional |
| optional string field = 3; |
| } |
| |
| // StatusDetails is a set of additional properties that MAY be set by the |
| // server to provide additional information about a response. The Reason |
| // field of a Status object defines what attributes will be set. Clients |
| // must ignore fields that do not match the defined type of each attribute, |
| // and should assume that any attribute may be empty, invalid, or under |
| // defined. |
| message StatusDetails { |
| // The name attribute of the resource associated with the status StatusReason |
| // (when there is a single name which can be described). |
| // +optional |
| optional string name = 1; |
| |
| // The group attribute of the resource associated with the status StatusReason. |
| // +optional |
| optional string group = 2; |
| |
| // The kind attribute of the resource associated with the status StatusReason. |
| // On some operations may differ from the requested resource Kind. |
| // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds |
| // +optional |
| optional string kind = 3; |
| |
| // UID of the resource. |
| // (when there is a single resource which can be described). |
| // More info: http://kubernetes.io/docs/user-guide/identifiers#uids |
| // +optional |
| optional string uid = 6; |
| |
| // The Causes array includes more details associated with the StatusReason |
| // failure. Not all StatusReasons may provide detailed causes. |
| // +optional |
| repeated StatusCause causes = 4; |
| |
| // If specified, the time in seconds before the operation should be retried. Some errors may indicate |
| // the client must take an alternate action - for those errors this field may indicate how long to wait |
| // before taking the alternate action. |
| // +optional |
| optional int32 retryAfterSeconds = 5; |
| } |
| |
| // Time is a wrapper around time.Time which supports correct |
| // marshaling to YAML and JSON. Wrappers are provided for many |
| // of the factory methods that the time package offers. |
| // |
| // +protobuf.options.marshal=false |
| // +protobuf.as=Timestamp |
| // +protobuf.options.(gogoproto.goproto_stringer)=false |
| message Time { |
| // Represents seconds of UTC time since Unix epoch |
| // 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to |
| // 9999-12-31T23:59:59Z inclusive. |
| optional int64 seconds = 1; |
| |
| // Non-negative fractions of a second at nanosecond resolution. Negative |
| // second values with fractions must still have non-negative nanos values |
| // that count forward in time. Must be from 0 to 999,999,999 |
| // inclusive. This field may be limited in precision depending on context. |
| optional int32 nanos = 2; |
| } |
| |
| // Timestamp is a struct that is equivalent to Time, but intended for |
| // protobuf marshalling/unmarshalling. It is generated into a serialization |
| // that matches Time. Do not use in Go structs. |
| message Timestamp { |
| // Represents seconds of UTC time since Unix epoch |
| // 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to |
| // 9999-12-31T23:59:59Z inclusive. |
| optional int64 seconds = 1; |
| |
| // Non-negative fractions of a second at nanosecond resolution. Negative |
| // second values with fractions must still have non-negative nanos values |
| // that count forward in time. Must be from 0 to 999,999,999 |
| // inclusive. This field may be limited in precision depending on context. |
| optional int32 nanos = 2; |
| } |
| |
| // TypeMeta describes an individual object in an API response or request |
| // with strings representing the type of the object and its API schema version. |
| // Structures that are versioned or persisted should inline TypeMeta. |
| // |
| // +k8s:deepcopy-gen=false |
| message TypeMeta { |
| // 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/api-conventions.md#types-kinds |
| // +optional |
| optional string kind = 1; |
| |
| // 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/api-conventions.md#resources |
| // +optional |
| optional string apiVersion = 2; |
| } |
| |
| // UpdateOptions may be provided when updating an API object. |
| message UpdateOptions { |
| // When present, indicates that modifications should not be |
| // persisted. An invalid or unrecognized dryRun directive will |
| // result in an error response and no further processing of the |
| // request. Valid values are: |
| // - All: all dry run stages will be processed |
| // +optional |
| repeated string dryRun = 1; |
| } |
| |
| // Verbs masks the value so protobuf can generate |
| // |
| // +protobuf.nullable=true |
| // +protobuf.options.(gogoproto.goproto_stringer)=false |
| message Verbs { |
| // items, if empty, will result in an empty slice |
| |
| repeated string items = 1; |
| } |
| |
| // Event represents a single event to a watched resource. |
| // |
| // +protobuf=true |
| // +k8s:deepcopy-gen=true |
| // +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object |
| message WatchEvent { |
| optional string type = 1; |
| |
| // Object is: |
| // * If Type is Added or Modified: the new state of the object. |
| // * If Type is Deleted: the state of the object immediately before deletion. |
| // * If Type is Error: *Status is recommended; other types may make sense |
| // depending on context. |
| optional k8s.io.apimachinery.pkg.runtime.RawExtension object = 2; |
| } |
| |