123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378 |
- /*
- Copyright 2016 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.kubernetes.pkg.api.unversioned;
- import "k8s.io/kubernetes/pkg/runtime/generated.proto";
- import "k8s.io/kubernetes/pkg/util/intstr/generated.proto";
- // Package-wide variables from generator "generated".
- option go_package = "unversioned";
- // 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 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.
- 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 name of the resource.
- optional string name = 1;
- // namespaced indicates if a resource is namespaced or not.
- optional bool namespaced = 2;
- // kind is the kind for the resource (e.g. 'Foo' is the kind for a resource 'foo')
- optional string kind = 3;
- }
- // 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
- 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;
- }
- // 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;
- }
- // 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;
- }
- // 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.
- map<string, string> matchLabels = 1;
- // matchExpressions is a list of label selector requirements. The requirements are ANDed.
- 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.
- optional string key = 1;
- // operator represents a key's relationship to a set of values.
- // Valid operators ard 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.
- repeated string values = 3;
- }
- // 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 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: http://releases.k8s.io/release-1.4/docs/devel/api-conventions.md#concurrency-control-and-consistency
- optional string resourceVersion = 2;
- }
- // 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: http://releases.k8s.io/release-1.4/docs/devel/api-conventions.md#types-kinds
- optional ListMeta metadata = 1;
- // Status of the operation.
- // One of: "Success" or "Failure".
- // More info: http://releases.k8s.io/release-1.4/docs/devel/api-conventions.md#spec-and-status
- optional string status = 2;
- // A human-readable description of the status of this operation.
- 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 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 StatusDetails details = 5;
- // Suggested HTTP return code for this status, 0 if not set.
- 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 string reason = 1;
- // A human-readable description of the cause of the error. This field may be
- // presented as-is to a reader.
- 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 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 string name = 1;
- // The group attribute of the resource associated with the status StatusReason.
- 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: http://releases.k8s.io/release-1.4/docs/devel/api-conventions.md#types-kinds
- optional string kind = 3;
- // The Causes array includes more details associated with the StatusReason
- // failure. Not all StatusReasons may provide detailed causes.
- repeated StatusCause causes = 4;
- // If specified, the time in seconds before the operation should be retried.
- 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 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 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.
- 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: http://releases.k8s.io/release-1.4/docs/devel/api-conventions.md#types-kinds
- 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: http://releases.k8s.io/release-1.4/docs/devel/api-conventions.md#resources
- optional string apiVersion = 2;
- }
|