github.com/aclisp/heapster@v0.19.2-0.20160613100040-51756f899a96/Godeps/_workspace/src/k8s.io/kubernetes/pkg/api/unversioned/generated.proto (about) 1 /* 2 Copyright 2016 The Kubernetes Authors All rights reserved. 3 4 Licensed under the Apache License, Version 2.0 (the "License"); 5 you may not use this file except in compliance with the License. 6 You may obtain a copy of the License at 7 8 http://www.apache.org/licenses/LICENSE-2.0 9 10 Unless required by applicable law or agreed to in writing, software 11 distributed under the License is distributed on an "AS IS" BASIS, 12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 See the License for the specific language governing permissions and 14 limitations under the License. 15 */ 16 17 18 // This file was autogenerated by go-to-protobuf. Do not edit it manually! 19 20 syntax = 'proto2'; 21 22 package k8s.io.kubernetes.pkg.api.unversioned; 23 24 import "k8s.io/kubernetes/pkg/runtime/generated.proto"; 25 import "k8s.io/kubernetes/pkg/util/intstr/generated.proto"; 26 27 // Package-wide variables from generator "generated". 28 option go_package = "unversioned"; 29 30 // APIGroup contains the name, the supported versions, and the preferred version 31 // of a group. 32 message APIGroup { 33 // name is the name of the group. 34 optional string name = 1; 35 36 // versions are the versions supported in this group. 37 repeated GroupVersionForDiscovery versions = 2; 38 39 // preferredVersion is the version preferred by the API server, which 40 // probably is the storage version. 41 optional GroupVersionForDiscovery preferredVersion = 3; 42 43 // a map of client CIDR to server address that is serving this group. 44 // This is to help clients reach servers in the most network-efficient way possible. 45 // Clients can use the appropriate server address as per the CIDR that they match. 46 // In case of multiple matches, clients should use the longest matching CIDR. 47 // The server returns only those CIDRs that it thinks that the client can match. 48 // For example: the master will return an internal IP CIDR only, if the client reaches the server using an internal IP. 49 // Server looks at X-Forwarded-For header or X-Real-Ip header or request.RemoteAddr (in that order) to get the client IP. 50 repeated ServerAddressByClientCIDR serverAddressByClientCIDRs = 4; 51 } 52 53 // APIGroupList is a list of APIGroup, to allow clients to discover the API at 54 // /apis. 55 message APIGroupList { 56 // groups is a list of APIGroup. 57 repeated APIGroup groups = 1; 58 } 59 60 // APIResource specifies the name of a resource and whether it is namespaced. 61 message APIResource { 62 // name is the name of the resource. 63 optional string name = 1; 64 65 // namespaced indicates if a resource is namespaced or not. 66 optional bool namespaced = 2; 67 68 // kind is the kind for the resource (e.g. 'Foo' is the kind for a resource 'foo') 69 optional string kind = 3; 70 } 71 72 // APIResourceList is a list of APIResource, it is used to expose the name of the 73 // resources supported in a specific group and version, and if the resource 74 // is namespaced. 75 message APIResourceList { 76 // groupVersion is the group and version this APIResourceList is for. 77 optional string groupVersion = 1; 78 79 // resources contains the name of the resources and if they are namespaced. 80 repeated APIResource resources = 2; 81 } 82 83 // APIVersions lists the versions that are available, to allow clients to 84 // discover the API at /api, which is the root path of the legacy v1 API. 85 // 86 // +protobuf.options.(gogoproto.goproto_stringer)=false 87 message APIVersions { 88 // versions are the api versions that are available. 89 repeated string versions = 1; 90 91 // a map of client CIDR to server address that is serving this group. 92 // This is to help clients reach servers in the most network-efficient way possible. 93 // Clients can use the appropriate server address as per the CIDR that they match. 94 // In case of multiple matches, clients should use the longest matching CIDR. 95 // The server returns only those CIDRs that it thinks that the client can match. 96 // For example: the master will return an internal IP CIDR only, if the client reaches the server using an internal IP. 97 // Server looks at X-Forwarded-For header or X-Real-Ip header or request.RemoteAddr (in that order) to get the client IP. 98 repeated ServerAddressByClientCIDR serverAddressByClientCIDRs = 2; 99 } 100 101 // Duration is a wrapper around time.Duration which supports correct 102 // marshaling to YAML and JSON. In particular, it marshals into strings, which 103 // can be used as map keys in json. 104 message Duration { 105 optional int64 duration = 1; 106 } 107 108 // ExportOptions is the query options to the standard REST get call. 109 message ExportOptions { 110 // Should this value be exported. Export strips fields that a user can not specify.` 111 optional bool export = 1; 112 113 // Should the export be exact. Exact export maintains cluster-specific fields like 'Namespace' 114 optional bool exact = 2; 115 } 116 117 // GroupKind specifies a Group and a Kind, but does not force a version. This is useful for identifying 118 // concepts during lookup stages without having partially valid types 119 // 120 // +protobuf.options.(gogoproto.goproto_stringer)=false 121 message GroupKind { 122 optional string group = 1; 123 124 optional string kind = 2; 125 } 126 127 // GroupResource specifies a Group and a Resource, but does not force a version. This is useful for identifying 128 // concepts during lookup stages without having partially valid types 129 // 130 // +protobuf.options.(gogoproto.goproto_stringer)=false 131 message GroupResource { 132 optional string group = 1; 133 134 optional string resource = 2; 135 } 136 137 // GroupVersion contains the "group" and the "version", which uniquely identifies the API. 138 // 139 // +protobuf.options.(gogoproto.goproto_stringer)=false 140 message GroupVersion { 141 optional string group = 1; 142 143 optional string version = 2; 144 } 145 146 // GroupVersion contains the "group/version" and "version" string of a version. 147 // It is made a struct to keep extensiblity. 148 message GroupVersionForDiscovery { 149 // groupVersion specifies the API group and version in the form "group/version" 150 optional string groupVersion = 1; 151 152 // version specifies the version in the form of "version". This is to save 153 // the clients the trouble of splitting the GroupVersion. 154 optional string version = 2; 155 } 156 157 // GroupVersionKind unambiguously identifies a kind. It doesn't anonymously include GroupVersion 158 // to avoid automatic coersion. It doesn't use a GroupVersion to avoid custom marshalling 159 // 160 // +protobuf.options.(gogoproto.goproto_stringer)=false 161 message GroupVersionKind { 162 optional string group = 1; 163 164 optional string version = 2; 165 166 optional string kind = 3; 167 } 168 169 // GroupVersionResource unambiguously identifies a resource. It doesn't anonymously include GroupVersion 170 // to avoid automatic coersion. It doesn't use a GroupVersion to avoid custom marshalling 171 // 172 // +protobuf.options.(gogoproto.goproto_stringer)=false 173 message GroupVersionResource { 174 optional string group = 1; 175 176 optional string version = 2; 177 178 optional string resource = 3; 179 } 180 181 // A label selector is a label query over a set of resources. The result of matchLabels and 182 // matchExpressions are ANDed. An empty label selector matches all objects. A null 183 // label selector matches no objects. 184 message LabelSelector { 185 // matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 186 // map is equivalent to an element of matchExpressions, whose key field is "key", the 187 // operator is "In", and the values array contains only "value". The requirements are ANDed. 188 map<string, string> matchLabels = 1; 189 190 // matchExpressions is a list of label selector requirements. The requirements are ANDed. 191 repeated LabelSelectorRequirement matchExpressions = 2; 192 } 193 194 // A label selector requirement is a selector that contains values, a key, and an operator that 195 // relates the key and values. 196 message LabelSelectorRequirement { 197 // key is the label key that the selector applies to. 198 optional string key = 1; 199 200 // operator represents a key's relationship to a set of values. 201 // Valid operators ard In, NotIn, Exists and DoesNotExist. 202 optional string operator = 2; 203 204 // values is an array of string values. If the operator is In or NotIn, 205 // the values array must be non-empty. If the operator is Exists or DoesNotExist, 206 // the values array must be empty. This array is replaced during a strategic 207 // merge patch. 208 repeated string values = 3; 209 } 210 211 // ListMeta describes metadata that synthetic resources must have, including lists and 212 // various status objects. A resource may have only one of {ObjectMeta, ListMeta}. 213 message ListMeta { 214 // SelfLink is a URL representing this object. 215 // Populated by the system. 216 // Read-only. 217 optional string selfLink = 1; 218 219 // String that identifies the server's internal version of this object that 220 // can be used by clients to determine when objects have changed. 221 // Value must be treated as opaque by clients and passed unmodified back to the server. 222 // Populated by the system. 223 // Read-only. 224 // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#concurrency-control-and-consistency 225 optional string resourceVersion = 2; 226 } 227 228 // RootPaths lists the paths available at root. 229 // For example: "/healthz", "/apis". 230 message RootPaths { 231 // paths are the paths available at root. 232 repeated string paths = 1; 233 } 234 235 // ServerAddressByClientCIDR helps the client to determine the server address that they should use, depending on the clientCIDR that they match. 236 message ServerAddressByClientCIDR { 237 // The CIDR with which clients can match their IP to figure out the server address that they should use. 238 optional string clientCIDR = 1; 239 240 // Address of this server, suitable for a client that matches the above CIDR. 241 // This can be a hostname, hostname:port, IP or IP:port. 242 optional string serverAddress = 2; 243 } 244 245 // Status is a return value for calls that don't return other objects. 246 message Status { 247 // Standard list metadata. 248 // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds 249 optional ListMeta metadata = 1; 250 251 // Status of the operation. 252 // One of: "Success" or "Failure". 253 // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status 254 optional string status = 2; 255 256 // A human-readable description of the status of this operation. 257 optional string message = 3; 258 259 // A machine-readable description of why this operation is in the 260 // "Failure" status. If this value is empty there 261 // is no information available. A Reason clarifies an HTTP status 262 // code but does not override it. 263 optional string reason = 4; 264 265 // Extended data associated with the reason. Each reason may define its 266 // own extended details. This field is optional and the data returned 267 // is not guaranteed to conform to any schema except that defined by 268 // the reason type. 269 optional StatusDetails details = 5; 270 271 // Suggested HTTP return code for this status, 0 if not set. 272 optional int32 code = 6; 273 } 274 275 // StatusCause provides more information about an api.Status failure, including 276 // cases when multiple errors are encountered. 277 message StatusCause { 278 // A machine-readable description of the cause of the error. If this value is 279 // empty there is no information available. 280 optional string reason = 1; 281 282 // A human-readable description of the cause of the error. This field may be 283 // presented as-is to a reader. 284 optional string message = 2; 285 286 // The field of the resource that has caused this error, as named by its JSON 287 // serialization. May include dot and postfix notation for nested attributes. 288 // Arrays are zero-indexed. Fields may appear more than once in an array of 289 // causes due to fields having multiple errors. 290 // Optional. 291 // 292 // Examples: 293 // "name" - the field "name" on the current resource 294 // "items[0].name" - the field "name" on the first array entry in "items" 295 optional string field = 3; 296 } 297 298 // StatusDetails is a set of additional properties that MAY be set by the 299 // server to provide additional information about a response. The Reason 300 // field of a Status object defines what attributes will be set. Clients 301 // must ignore fields that do not match the defined type of each attribute, 302 // and should assume that any attribute may be empty, invalid, or under 303 // defined. 304 message StatusDetails { 305 // The name attribute of the resource associated with the status StatusReason 306 // (when there is a single name which can be described). 307 optional string name = 1; 308 309 // The group attribute of the resource associated with the status StatusReason. 310 optional string group = 2; 311 312 // The kind attribute of the resource associated with the status StatusReason. 313 // On some operations may differ from the requested resource Kind. 314 // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds 315 optional string kind = 3; 316 317 // The Causes array includes more details associated with the StatusReason 318 // failure. Not all StatusReasons may provide detailed causes. 319 repeated StatusCause causes = 4; 320 321 // If specified, the time in seconds before the operation should be retried. 322 optional int32 retryAfterSeconds = 5; 323 } 324 325 // Time is a wrapper around time.Time which supports correct 326 // marshaling to YAML and JSON. Wrappers are provided for many 327 // of the factory methods that the time package offers. 328 // 329 // +protobuf.options.marshal=false 330 // +protobuf.as=Timestamp 331 message Time { 332 // Represents seconds of UTC time since Unix epoch 333 // 1970-01-01T00:00:00Z. Must be from from 0001-01-01T00:00:00Z to 334 // 9999-12-31T23:59:59Z inclusive. 335 optional int64 seconds = 1; 336 337 // Non-negative fractions of a second at nanosecond resolution. Negative 338 // second values with fractions must still have non-negative nanos values 339 // that count forward in time. Must be from 0 to 999,999,999 340 // inclusive. This field may be limited in precision depending on context. 341 optional int32 nanos = 2; 342 } 343 344 // Timestamp is a struct that is equivalent to Time, but intended for 345 // protobuf marshalling/unmarshalling. It is generated into a serialization 346 // that matches Time. Do not use in Go structs. 347 message Timestamp { 348 // Represents seconds of UTC time since Unix epoch 349 // 1970-01-01T00:00:00Z. Must be from from 0001-01-01T00:00:00Z to 350 // 9999-12-31T23:59:59Z inclusive. 351 optional int64 seconds = 1; 352 353 // Non-negative fractions of a second at nanosecond resolution. Negative 354 // second values with fractions must still have non-negative nanos values 355 // that count forward in time. Must be from 0 to 999,999,999 356 // inclusive. This field may be limited in precision depending on context. 357 optional int32 nanos = 2; 358 } 359 360 // TypeMeta describes an individual object in an API response or request 361 // with strings representing the type of the object and its API schema version. 362 // Structures that are versioned or persisted should inline TypeMeta. 363 message TypeMeta { 364 // Kind is a string value representing the REST resource this object represents. 365 // Servers may infer this from the endpoint the client submits requests to. 366 // Cannot be updated. 367 // In CamelCase. 368 // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds 369 optional string kind = 1; 370 371 // APIVersion defines the versioned schema of this representation of an object. 372 // Servers should convert recognized schemas to the latest internal value, and 373 // may reject unrecognized values. 374 // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources 375 optional string apiVersion = 2; 376 } 377