mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-25 20:53:33 +00:00
Merge pull request #70237 from nikhita/proto-remove-trailing-whitespace
Remove trailing whitespace in the protobuf generator
This commit is contained in:
commit
f4bf0e8d33
@ -88,7 +88,7 @@ message Rule {
|
|||||||
repeated string apiVersions = 2;
|
repeated string apiVersions = 2;
|
||||||
|
|
||||||
// Resources is a list of resources this rule applies to.
|
// Resources is a list of resources this rule applies to.
|
||||||
//
|
//
|
||||||
// For example:
|
// For example:
|
||||||
// 'pods' means pods.
|
// 'pods' means pods.
|
||||||
// 'pods/log' means the log subresource of pods.
|
// 'pods/log' means the log subresource of pods.
|
||||||
@ -96,10 +96,10 @@ message Rule {
|
|||||||
// 'pods/*' means all subresources of pods.
|
// 'pods/*' means all subresources of pods.
|
||||||
// '*/scale' means all scale subresources.
|
// '*/scale' means all scale subresources.
|
||||||
// '*/*' means all resources and their subresources.
|
// '*/*' means all resources and their subresources.
|
||||||
//
|
//
|
||||||
// If wildcard is present, the validation rule will ensure resources do not
|
// If wildcard is present, the validation rule will ensure resources do not
|
||||||
// overlap with each other.
|
// overlap with each other.
|
||||||
//
|
//
|
||||||
// Depending on the enclosing object, subresources might not be allowed.
|
// Depending on the enclosing object, subresources might not be allowed.
|
||||||
// Required.
|
// Required.
|
||||||
repeated string resources = 3;
|
repeated string resources = 3;
|
||||||
|
@ -66,7 +66,7 @@ message Rule {
|
|||||||
repeated string apiVersions = 2;
|
repeated string apiVersions = 2;
|
||||||
|
|
||||||
// Resources is a list of resources this rule applies to.
|
// Resources is a list of resources this rule applies to.
|
||||||
//
|
//
|
||||||
// For example:
|
// For example:
|
||||||
// 'pods' means pods.
|
// 'pods' means pods.
|
||||||
// 'pods/log' means the log subresource of pods.
|
// 'pods/log' means the log subresource of pods.
|
||||||
@ -74,10 +74,10 @@ message Rule {
|
|||||||
// 'pods/*' means all subresources of pods.
|
// 'pods/*' means all subresources of pods.
|
||||||
// '*/scale' means all scale subresources.
|
// '*/scale' means all scale subresources.
|
||||||
// '*/*' means all resources and their subresources.
|
// '*/*' means all resources and their subresources.
|
||||||
//
|
//
|
||||||
// If wildcard is present, the validation rule will ensure resources do not
|
// If wildcard is present, the validation rule will ensure resources do not
|
||||||
// overlap with each other.
|
// overlap with each other.
|
||||||
//
|
//
|
||||||
// Depending on the enclosing object, subresources might not be allowed.
|
// Depending on the enclosing object, subresources might not be allowed.
|
||||||
// Required.
|
// Required.
|
||||||
repeated string resources = 3;
|
repeated string resources = 3;
|
||||||
@ -168,7 +168,7 @@ message Webhook {
|
|||||||
// object itself is a namespace, the matching is performed on
|
// object itself is a namespace, the matching is performed on
|
||||||
// object.metadata.labels. If the object is another cluster scoped resource,
|
// object.metadata.labels. If the object is another cluster scoped resource,
|
||||||
// it never skips the webhook.
|
// it never skips the webhook.
|
||||||
//
|
//
|
||||||
// For example, to run the webhook on any objects whose namespace is not
|
// For example, to run the webhook on any objects whose namespace is not
|
||||||
// associated with "runlevel" of "0" or "1"; you will set the selector as
|
// associated with "runlevel" of "0" or "1"; you will set the selector as
|
||||||
// follows:
|
// follows:
|
||||||
@ -184,7 +184,7 @@ message Webhook {
|
|||||||
// }
|
// }
|
||||||
// ]
|
// ]
|
||||||
// }
|
// }
|
||||||
//
|
//
|
||||||
// If instead you want to only run the webhook on any objects whose
|
// If instead you want to only run the webhook on any objects whose
|
||||||
// namespace is associated with the "environment" of "prod" or "staging";
|
// namespace is associated with the "environment" of "prod" or "staging";
|
||||||
// you will set the selector as follows:
|
// you will set the selector as follows:
|
||||||
@ -200,11 +200,11 @@ message Webhook {
|
|||||||
// }
|
// }
|
||||||
// ]
|
// ]
|
||||||
// }
|
// }
|
||||||
//
|
//
|
||||||
// See
|
// See
|
||||||
// https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
|
// https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
|
||||||
// for more examples of label selectors.
|
// for more examples of label selectors.
|
||||||
//
|
//
|
||||||
// Default to the empty LabelSelector, which matches everything.
|
// Default to the empty LabelSelector, which matches everything.
|
||||||
// +optional
|
// +optional
|
||||||
optional k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector namespaceSelector = 5;
|
optional k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector namespaceSelector = 5;
|
||||||
@ -225,39 +225,39 @@ message WebhookClientConfig {
|
|||||||
// `url` gives the location of the webhook, in standard URL form
|
// `url` gives the location of the webhook, in standard URL form
|
||||||
// (`[scheme://]host:port/path`). Exactly one of `url` or `service`
|
// (`[scheme://]host:port/path`). Exactly one of `url` or `service`
|
||||||
// must be specified.
|
// must be specified.
|
||||||
//
|
//
|
||||||
// The `host` should not refer to a service running in the cluster; use
|
// The `host` should not refer to a service running in the cluster; use
|
||||||
// the `service` field instead. The host might be resolved via external
|
// the `service` field instead. The host might be resolved via external
|
||||||
// DNS in some apiservers (e.g., `kube-apiserver` cannot resolve
|
// DNS in some apiservers (e.g., `kube-apiserver` cannot resolve
|
||||||
// in-cluster DNS as that would be a layering violation). `host` may
|
// in-cluster DNS as that would be a layering violation). `host` may
|
||||||
// also be an IP address.
|
// also be an IP address.
|
||||||
//
|
//
|
||||||
// Please note that using `localhost` or `127.0.0.1` as a `host` is
|
// Please note that using `localhost` or `127.0.0.1` as a `host` is
|
||||||
// risky unless you take great care to run this webhook on all hosts
|
// risky unless you take great care to run this webhook on all hosts
|
||||||
// which run an apiserver which might need to make calls to this
|
// which run an apiserver which might need to make calls to this
|
||||||
// webhook. Such installs are likely to be non-portable, i.e., not easy
|
// webhook. Such installs are likely to be non-portable, i.e., not easy
|
||||||
// to turn up in a new cluster.
|
// to turn up in a new cluster.
|
||||||
//
|
//
|
||||||
// The scheme must be "https"; the URL must begin with "https://".
|
// The scheme must be "https"; the URL must begin with "https://".
|
||||||
//
|
//
|
||||||
// A path is optional, and if present may be any string permissible in
|
// A path is optional, and if present may be any string permissible in
|
||||||
// a URL. You may use the path to pass an arbitrary string to the
|
// a URL. You may use the path to pass an arbitrary string to the
|
||||||
// webhook, for example, a cluster identifier.
|
// webhook, for example, a cluster identifier.
|
||||||
//
|
//
|
||||||
// Attempting to use a user or basic auth e.g. "user:password@" is not
|
// Attempting to use a user or basic auth e.g. "user:password@" is not
|
||||||
// allowed. Fragments ("#...") and query parameters ("?...") are not
|
// allowed. Fragments ("#...") and query parameters ("?...") are not
|
||||||
// allowed, either.
|
// allowed, either.
|
||||||
//
|
//
|
||||||
// +optional
|
// +optional
|
||||||
optional string url = 3;
|
optional string url = 3;
|
||||||
|
|
||||||
// `service` is a reference to the service for this webhook. Either
|
// `service` is a reference to the service for this webhook. Either
|
||||||
// `service` or `url` must be specified.
|
// `service` or `url` must be specified.
|
||||||
//
|
//
|
||||||
// If the webhook is running within the cluster, then you should use `service`.
|
// If the webhook is running within the cluster, then you should use `service`.
|
||||||
//
|
//
|
||||||
// Port 443 will be used if it is open, otherwise it is an error.
|
// Port 443 will be used if it is open, otherwise it is an error.
|
||||||
//
|
//
|
||||||
// +optional
|
// +optional
|
||||||
optional ServiceReference service = 1;
|
optional ServiceReference service = 1;
|
||||||
|
|
||||||
|
@ -101,39 +101,39 @@ message WebhookClientConfig {
|
|||||||
// `url` gives the location of the webhook, in standard URL form
|
// `url` gives the location of the webhook, in standard URL form
|
||||||
// (`[scheme://]host:port/path`). Exactly one of `url` or `service`
|
// (`[scheme://]host:port/path`). Exactly one of `url` or `service`
|
||||||
// must be specified.
|
// must be specified.
|
||||||
//
|
//
|
||||||
// The `host` should not refer to a service running in the cluster; use
|
// The `host` should not refer to a service running in the cluster; use
|
||||||
// the `service` field instead. The host might be resolved via external
|
// the `service` field instead. The host might be resolved via external
|
||||||
// DNS in some apiservers (e.g., `kube-apiserver` cannot resolve
|
// DNS in some apiservers (e.g., `kube-apiserver` cannot resolve
|
||||||
// in-cluster DNS as that would be a layering violation). `host` may
|
// in-cluster DNS as that would be a layering violation). `host` may
|
||||||
// also be an IP address.
|
// also be an IP address.
|
||||||
//
|
//
|
||||||
// Please note that using `localhost` or `127.0.0.1` as a `host` is
|
// Please note that using `localhost` or `127.0.0.1` as a `host` is
|
||||||
// risky unless you take great care to run this webhook on all hosts
|
// risky unless you take great care to run this webhook on all hosts
|
||||||
// which run an apiserver which might need to make calls to this
|
// which run an apiserver which might need to make calls to this
|
||||||
// webhook. Such installs are likely to be non-portable, i.e., not easy
|
// webhook. Such installs are likely to be non-portable, i.e., not easy
|
||||||
// to turn up in a new cluster.
|
// to turn up in a new cluster.
|
||||||
//
|
//
|
||||||
// The scheme must be "https"; the URL must begin with "https://".
|
// The scheme must be "https"; the URL must begin with "https://".
|
||||||
//
|
//
|
||||||
// A path is optional, and if present may be any string permissible in
|
// A path is optional, and if present may be any string permissible in
|
||||||
// a URL. You may use the path to pass an arbitrary string to the
|
// a URL. You may use the path to pass an arbitrary string to the
|
||||||
// webhook, for example, a cluster identifier.
|
// webhook, for example, a cluster identifier.
|
||||||
//
|
//
|
||||||
// Attempting to use a user or basic auth e.g. "user:password@" is not
|
// Attempting to use a user or basic auth e.g. "user:password@" is not
|
||||||
// allowed. Fragments ("#...") and query parameters ("?...") are not
|
// allowed. Fragments ("#...") and query parameters ("?...") are not
|
||||||
// allowed, either.
|
// allowed, either.
|
||||||
//
|
//
|
||||||
// +optional
|
// +optional
|
||||||
optional string url = 1;
|
optional string url = 1;
|
||||||
|
|
||||||
// `service` is a reference to the service for this webhook. Either
|
// `service` is a reference to the service for this webhook. Either
|
||||||
// `service` or `url` must be specified.
|
// `service` or `url` must be specified.
|
||||||
//
|
//
|
||||||
// If the webhook is running within the cluster, then you should use `service`.
|
// If the webhook is running within the cluster, then you should use `service`.
|
||||||
//
|
//
|
||||||
// Port 443 will be used if it is open, otherwise it is an error.
|
// Port 443 will be used if it is open, otherwise it is an error.
|
||||||
//
|
//
|
||||||
// +optional
|
// +optional
|
||||||
optional ServiceReference service = 2;
|
optional ServiceReference service = 2;
|
||||||
|
|
||||||
|
@ -31,7 +31,7 @@ import "k8s.io/apimachinery/pkg/util/intstr/generated.proto";
|
|||||||
option go_package = "v1";
|
option go_package = "v1";
|
||||||
|
|
||||||
// Represents a Persistent Disk resource in AWS.
|
// Represents a Persistent Disk resource in AWS.
|
||||||
//
|
//
|
||||||
// An AWS EBS disk must exist before mounting to a container. The disk
|
// An AWS EBS disk must exist before mounting to a container. The disk
|
||||||
// must also be in the same AWS zone as the kubelet. An AWS EBS disk
|
// must also be in the same AWS zone as the kubelet. An AWS EBS disk
|
||||||
// can only be mounted as read/write once. AWS EBS volumes support
|
// can only be mounted as read/write once. AWS EBS volumes support
|
||||||
@ -436,7 +436,7 @@ message ConfigMap {
|
|||||||
|
|
||||||
// ConfigMapEnvSource selects a ConfigMap to populate the environment
|
// ConfigMapEnvSource selects a ConfigMap to populate the environment
|
||||||
// variables with.
|
// variables with.
|
||||||
//
|
//
|
||||||
// The contents of the target ConfigMap's Data field will represent the
|
// The contents of the target ConfigMap's Data field will represent the
|
||||||
// key-value pairs as environment variables.
|
// key-value pairs as environment variables.
|
||||||
message ConfigMapEnvSource {
|
message ConfigMapEnvSource {
|
||||||
@ -497,7 +497,7 @@ message ConfigMapNodeConfigSource {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Adapts a ConfigMap into a projected volume.
|
// Adapts a ConfigMap into a projected volume.
|
||||||
//
|
//
|
||||||
// The contents of the target ConfigMap's Data field will be presented in a
|
// The contents of the target ConfigMap's Data field will be presented in a
|
||||||
// projected volume as files using the keys in the Data field as the file names,
|
// projected volume as files using the keys in the Data field as the file names,
|
||||||
// unless the items element is populated with specific mappings of keys to paths.
|
// unless the items element is populated with specific mappings of keys to paths.
|
||||||
@ -522,7 +522,7 @@ message ConfigMapProjection {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Adapts a ConfigMap into a volume.
|
// Adapts a ConfigMap into a volume.
|
||||||
//
|
//
|
||||||
// The contents of the target ConfigMap's Data field will be presented in a
|
// The contents of the target ConfigMap's Data field will be presented in a
|
||||||
// volume as files using the keys in the Data field as the file names, unless
|
// volume as files using the keys in the Data field as the file names, unless
|
||||||
// the items element is populated with specific mappings of keys to paths.
|
// the items element is populated with specific mappings of keys to paths.
|
||||||
@ -1317,7 +1317,7 @@ message FlockerVolumeSource {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Represents a Persistent Disk resource in Google Compute Engine.
|
// Represents a Persistent Disk resource in Google Compute Engine.
|
||||||
//
|
//
|
||||||
// A GCE PD must exist before mounting to a container. The disk must
|
// A GCE PD must exist before mounting to a container. The disk must
|
||||||
// also be in the same GCE project and zone as the kubelet. A GCE PD
|
// also be in the same GCE project and zone as the kubelet. A GCE PD
|
||||||
// can only be mounted as read/write once or read-only many times. GCE
|
// can only be mounted as read/write once or read-only many times. GCE
|
||||||
@ -1353,7 +1353,7 @@ message GCEPersistentDiskVolumeSource {
|
|||||||
// Represents a volume that is populated with the contents of a git repository.
|
// Represents a volume that is populated with the contents of a git repository.
|
||||||
// Git repo volumes do not support ownership management.
|
// Git repo volumes do not support ownership management.
|
||||||
// Git repo volumes support SELinux relabeling.
|
// Git repo volumes support SELinux relabeling.
|
||||||
//
|
//
|
||||||
// DEPRECATED: GitRepo is deprecated. To provision a container with a git repo, mount an
|
// DEPRECATED: GitRepo is deprecated. To provision a container with a git repo, mount an
|
||||||
// EmptyDir into an InitContainer that clones the repo using git, then mount the EmptyDir
|
// EmptyDir into an InitContainer that clones the repo using git, then mount the EmptyDir
|
||||||
// into the Pod's container.
|
// into the Pod's container.
|
||||||
@ -2902,11 +2902,11 @@ message PodSecurityContext {
|
|||||||
// A special supplemental group that applies to all containers in a pod.
|
// A special supplemental group that applies to all containers in a pod.
|
||||||
// Some volume types allow the Kubelet to change the ownership of that volume
|
// Some volume types allow the Kubelet to change the ownership of that volume
|
||||||
// to be owned by the pod:
|
// to be owned by the pod:
|
||||||
//
|
//
|
||||||
// 1. The owning GID will be the FSGroup
|
// 1. The owning GID will be the FSGroup
|
||||||
// 2. The setgid bit is set (new files created in the volume will be owned by FSGroup)
|
// 2. The setgid bit is set (new files created in the volume will be owned by FSGroup)
|
||||||
// 3. The permission bits are OR'd with rw-rw----
|
// 3. The permission bits are OR'd with rw-rw----
|
||||||
//
|
//
|
||||||
// If unset, the Kubelet will not modify the ownership and permissions of any volume.
|
// If unset, the Kubelet will not modify the ownership and permissions of any volume.
|
||||||
// +optional
|
// +optional
|
||||||
optional int64 fsGroup = 5;
|
optional int64 fsGroup = 5;
|
||||||
@ -3144,7 +3144,7 @@ message PodStatus {
|
|||||||
// The conditions array, the reason and message fields, and the individual container status
|
// The conditions array, the reason and message fields, and the individual container status
|
||||||
// arrays contain more detail about the pod's status.
|
// arrays contain more detail about the pod's status.
|
||||||
// There are five possible phase values:
|
// There are five possible phase values:
|
||||||
//
|
//
|
||||||
// Pending: The pod has been accepted by the Kubernetes system, but one or more of the
|
// Pending: The pod has been accepted by the Kubernetes system, but one or more of the
|
||||||
// container images has not been created. This includes time before being scheduled as
|
// container images has not been created. This includes time before being scheduled as
|
||||||
// well as time spent downloading images over the network, which could take a while.
|
// well as time spent downloading images over the network, which could take a while.
|
||||||
@ -3156,7 +3156,7 @@ message PodStatus {
|
|||||||
// by the system.
|
// by the system.
|
||||||
// Unknown: For some reason the state of the pod could not be obtained, typically due to an
|
// Unknown: For some reason the state of the pod could not be obtained, typically due to an
|
||||||
// error in communicating with the host of the pod.
|
// error in communicating with the host of the pod.
|
||||||
//
|
//
|
||||||
// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#pod-phase
|
// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#pod-phase
|
||||||
// +optional
|
// +optional
|
||||||
optional string phase = 1;
|
optional string phase = 1;
|
||||||
@ -3887,7 +3887,7 @@ message Secret {
|
|||||||
|
|
||||||
// SecretEnvSource selects a Secret to populate the environment
|
// SecretEnvSource selects a Secret to populate the environment
|
||||||
// variables with.
|
// variables with.
|
||||||
//
|
//
|
||||||
// The contents of the target Secret's Data field will represent the
|
// The contents of the target Secret's Data field will represent the
|
||||||
// key-value pairs as environment variables.
|
// key-value pairs as environment variables.
|
||||||
message SecretEnvSource {
|
message SecretEnvSource {
|
||||||
@ -3925,7 +3925,7 @@ message SecretList {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Adapts a secret into a projected volume.
|
// Adapts a secret into a projected volume.
|
||||||
//
|
//
|
||||||
// The contents of the target Secret's Data field will be presented in a
|
// The contents of the target Secret's Data field will be presented in a
|
||||||
// projected volume as files using the keys in the Data field as the file names.
|
// projected volume as files using the keys in the Data field as the file names.
|
||||||
// Note that this is identical to a secret volume source without the default
|
// Note that this is identical to a secret volume source without the default
|
||||||
@ -3961,7 +3961,7 @@ message SecretReference {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Adapts a Secret into a volume.
|
// Adapts a Secret into a volume.
|
||||||
//
|
//
|
||||||
// The contents of the target Secret's Data field will be presented in a volume
|
// The contents of the target Secret's Data field will be presented in a volume
|
||||||
// as files using the keys in the Data field as the file names.
|
// as files using the keys in the Data field as the file names.
|
||||||
// Secret volumes support ownership management and SELinux relabeling.
|
// Secret volumes support ownership management and SELinux relabeling.
|
||||||
|
@ -45,7 +45,7 @@ message AllowedHostPath {
|
|||||||
// pathPrefix is the path prefix that the host volume must match.
|
// pathPrefix is the path prefix that the host volume must match.
|
||||||
// It does not support `*`.
|
// It does not support `*`.
|
||||||
// Trailing slashes are trimmed when validating the path prefix with a host path.
|
// Trailing slashes are trimmed when validating the path prefix with a host path.
|
||||||
//
|
//
|
||||||
// Examples:
|
// Examples:
|
||||||
// `/foo` would allow `/foo`, `/foo/` and `/foo/bar`
|
// `/foo` would allow `/foo`, `/foo/` and `/foo/bar`
|
||||||
// `/foo` would not allow `/food` or `/etc/foo`
|
// `/foo` would not allow `/food` or `/etc/foo`
|
||||||
@ -690,7 +690,7 @@ message NetworkPolicyList {
|
|||||||
message NetworkPolicyPeer {
|
message NetworkPolicyPeer {
|
||||||
// This is a label selector which selects Pods. This field follows standard label
|
// This is a label selector which selects Pods. This field follows standard label
|
||||||
// selector semantics; if present but empty, it selects all pods.
|
// selector semantics; if present but empty, it selects all pods.
|
||||||
//
|
//
|
||||||
// If NamespaceSelector is also set, then the NetworkPolicyPeer as a whole selects
|
// If NamespaceSelector is also set, then the NetworkPolicyPeer as a whole selects
|
||||||
// the Pods matching PodSelector in the Namespaces selected by NamespaceSelector.
|
// the Pods matching PodSelector in the Namespaces selected by NamespaceSelector.
|
||||||
// Otherwise it selects the Pods matching PodSelector in the policy's own Namespace.
|
// Otherwise it selects the Pods matching PodSelector in the policy's own Namespace.
|
||||||
@ -699,7 +699,7 @@ message NetworkPolicyPeer {
|
|||||||
|
|
||||||
// Selects Namespaces using cluster-scoped labels. This field follows standard label
|
// Selects Namespaces using cluster-scoped labels. This field follows standard label
|
||||||
// selector semantics; if present but empty, it selects all namespaces.
|
// selector semantics; if present but empty, it selects all namespaces.
|
||||||
//
|
//
|
||||||
// If PodSelector is also set, then the NetworkPolicyPeer as a whole selects
|
// If PodSelector is also set, then the NetworkPolicyPeer as a whole selects
|
||||||
// the Pods matching PodSelector in the Namespaces selected by NamespaceSelector.
|
// the Pods matching PodSelector in the Namespaces selected by NamespaceSelector.
|
||||||
// Otherwise it selects all Pods in the Namespaces selected by NamespaceSelector.
|
// Otherwise it selects all Pods in the Namespaces selected by NamespaceSelector.
|
||||||
@ -894,7 +894,7 @@ message PodSecurityPolicySpec {
|
|||||||
// Each entry is either a plain sysctl name or ends in "*" in which case it is considered
|
// Each entry is either a plain sysctl name or ends in "*" in which case it is considered
|
||||||
// as a prefix of allowed sysctls. Single * means all unsafe sysctls are allowed.
|
// as a prefix of allowed sysctls. Single * means all unsafe sysctls are allowed.
|
||||||
// Kubelet has to whitelist all allowed unsafe sysctls explicitly to avoid rejection.
|
// Kubelet has to whitelist all allowed unsafe sysctls explicitly to avoid rejection.
|
||||||
//
|
//
|
||||||
// Examples:
|
// Examples:
|
||||||
// e.g. "foo/*" allows "foo/bar", "foo/baz", etc.
|
// e.g. "foo/*" allows "foo/bar", "foo/baz", etc.
|
||||||
// e.g. "foo.*" allows "foo.bar", "foo.baz", etc.
|
// e.g. "foo.*" allows "foo.bar", "foo.baz", etc.
|
||||||
@ -904,7 +904,7 @@ message PodSecurityPolicySpec {
|
|||||||
// forbiddenSysctls is a list of explicitly forbidden sysctls, defaults to none.
|
// forbiddenSysctls is a list of explicitly forbidden sysctls, defaults to none.
|
||||||
// Each entry is either a plain sysctl name or ends in "*" in which case it is considered
|
// Each entry is either a plain sysctl name or ends in "*" in which case it is considered
|
||||||
// as a prefix of forbidden sysctls. Single * means all sysctls are forbidden.
|
// as a prefix of forbidden sysctls. Single * means all sysctls are forbidden.
|
||||||
//
|
//
|
||||||
// Examples:
|
// Examples:
|
||||||
// e.g. "foo/*" forbids "foo/bar", "foo/baz", etc.
|
// e.g. "foo/*" forbids "foo/bar", "foo/baz", etc.
|
||||||
// e.g. "foo.*" forbids "foo.bar", "foo.baz", etc.
|
// e.g. "foo.*" forbids "foo.bar", "foo.baz", etc.
|
||||||
|
@ -114,7 +114,7 @@ message NetworkPolicyList {
|
|||||||
message NetworkPolicyPeer {
|
message NetworkPolicyPeer {
|
||||||
// This is a label selector which selects Pods. This field follows standard label
|
// This is a label selector which selects Pods. This field follows standard label
|
||||||
// selector semantics; if present but empty, it selects all pods.
|
// selector semantics; if present but empty, it selects all pods.
|
||||||
//
|
//
|
||||||
// If NamespaceSelector is also set, then the NetworkPolicyPeer as a whole selects
|
// If NamespaceSelector is also set, then the NetworkPolicyPeer as a whole selects
|
||||||
// the Pods matching PodSelector in the Namespaces selected by NamespaceSelector.
|
// the Pods matching PodSelector in the Namespaces selected by NamespaceSelector.
|
||||||
// Otherwise it selects the Pods matching PodSelector in the policy's own Namespace.
|
// Otherwise it selects the Pods matching PodSelector in the policy's own Namespace.
|
||||||
@ -123,7 +123,7 @@ message NetworkPolicyPeer {
|
|||||||
|
|
||||||
// Selects Namespaces using cluster-scoped labels. This field follows standard label
|
// Selects Namespaces using cluster-scoped labels. This field follows standard label
|
||||||
// selector semantics; if present but empty, it selects all namespaces.
|
// selector semantics; if present but empty, it selects all namespaces.
|
||||||
//
|
//
|
||||||
// If PodSelector is also set, then the NetworkPolicyPeer as a whole selects
|
// If PodSelector is also set, then the NetworkPolicyPeer as a whole selects
|
||||||
// the Pods matching PodSelector in the Namespaces selected by NamespaceSelector.
|
// the Pods matching PodSelector in the Namespaces selected by NamespaceSelector.
|
||||||
// Otherwise it selects all Pods in the Namespaces selected by NamespaceSelector.
|
// Otherwise it selects all Pods in the Namespaces selected by NamespaceSelector.
|
||||||
|
@ -42,7 +42,7 @@ message AllowedHostPath {
|
|||||||
// pathPrefix is the path prefix that the host volume must match.
|
// pathPrefix is the path prefix that the host volume must match.
|
||||||
// It does not support `*`.
|
// It does not support `*`.
|
||||||
// Trailing slashes are trimmed when validating the path prefix with a host path.
|
// Trailing slashes are trimmed when validating the path prefix with a host path.
|
||||||
//
|
//
|
||||||
// Examples:
|
// Examples:
|
||||||
// `/foo` would allow `/foo`, `/foo/` and `/foo/bar`
|
// `/foo` would allow `/foo`, `/foo/` and `/foo/bar`
|
||||||
// `/foo` would not allow `/food` or `/etc/foo`
|
// `/foo` would not allow `/food` or `/etc/foo`
|
||||||
@ -296,7 +296,7 @@ message PodSecurityPolicySpec {
|
|||||||
// Each entry is either a plain sysctl name or ends in "*" in which case it is considered
|
// Each entry is either a plain sysctl name or ends in "*" in which case it is considered
|
||||||
// as a prefix of allowed sysctls. Single * means all unsafe sysctls are allowed.
|
// as a prefix of allowed sysctls. Single * means all unsafe sysctls are allowed.
|
||||||
// Kubelet has to whitelist all allowed unsafe sysctls explicitly to avoid rejection.
|
// Kubelet has to whitelist all allowed unsafe sysctls explicitly to avoid rejection.
|
||||||
//
|
//
|
||||||
// Examples:
|
// Examples:
|
||||||
// e.g. "foo/*" allows "foo/bar", "foo/baz", etc.
|
// e.g. "foo/*" allows "foo/bar", "foo/baz", etc.
|
||||||
// e.g. "foo.*" allows "foo.bar", "foo.baz", etc.
|
// e.g. "foo.*" allows "foo.bar", "foo.baz", etc.
|
||||||
@ -306,7 +306,7 @@ message PodSecurityPolicySpec {
|
|||||||
// forbiddenSysctls is a list of explicitly forbidden sysctls, defaults to none.
|
// forbiddenSysctls is a list of explicitly forbidden sysctls, defaults to none.
|
||||||
// Each entry is either a plain sysctl name or ends in "*" in which case it is considered
|
// Each entry is either a plain sysctl name or ends in "*" in which case it is considered
|
||||||
// as a prefix of forbidden sysctls. Single * means all sysctls are forbidden.
|
// as a prefix of forbidden sysctls. Single * means all sysctls are forbidden.
|
||||||
//
|
//
|
||||||
// Examples:
|
// Examples:
|
||||||
// e.g. "foo/*" forbids "foo/bar", "foo/baz", etc.
|
// e.g. "foo/*" forbids "foo/bar", "foo/baz", etc.
|
||||||
// e.g. "foo.*" forbids "foo.bar", "foo.baz", etc.
|
// e.g. "foo.*" forbids "foo.bar", "foo.baz", etc.
|
||||||
|
@ -31,7 +31,7 @@ option go_package = "v1";
|
|||||||
|
|
||||||
// StorageClass describes the parameters for a class of storage for
|
// StorageClass describes the parameters for a class of storage for
|
||||||
// which PersistentVolumes can be dynamically provisioned.
|
// which PersistentVolumes can be dynamically provisioned.
|
||||||
//
|
//
|
||||||
// StorageClasses are non-namespaced; the name of the storage class
|
// StorageClasses are non-namespaced; the name of the storage class
|
||||||
// according to etcd is in ObjectMeta.Name.
|
// according to etcd is in ObjectMeta.Name.
|
||||||
message StorageClass {
|
message StorageClass {
|
||||||
|
@ -30,7 +30,7 @@ option go_package = "v1alpha1";
|
|||||||
|
|
||||||
// VolumeAttachment captures the intent to attach or detach the specified volume
|
// VolumeAttachment captures the intent to attach or detach the specified volume
|
||||||
// to/from the specified node.
|
// to/from the specified node.
|
||||||
//
|
//
|
||||||
// VolumeAttachment objects are non-namespaced.
|
// VolumeAttachment objects are non-namespaced.
|
||||||
message VolumeAttachment {
|
message VolumeAttachment {
|
||||||
// Standard object metadata.
|
// Standard object metadata.
|
||||||
|
@ -31,7 +31,7 @@ option go_package = "v1beta1";
|
|||||||
|
|
||||||
// StorageClass describes the parameters for a class of storage for
|
// StorageClass describes the parameters for a class of storage for
|
||||||
// which PersistentVolumes can be dynamically provisioned.
|
// which PersistentVolumes can be dynamically provisioned.
|
||||||
//
|
//
|
||||||
// StorageClasses are non-namespaced; the name of the storage class
|
// StorageClasses are non-namespaced; the name of the storage class
|
||||||
// according to etcd is in ObjectMeta.Name.
|
// according to etcd is in ObjectMeta.Name.
|
||||||
message StorageClass {
|
message StorageClass {
|
||||||
@ -90,7 +90,7 @@ message StorageClassList {
|
|||||||
|
|
||||||
// VolumeAttachment captures the intent to attach or detach the specified volume
|
// VolumeAttachment captures the intent to attach or detach the specified volume
|
||||||
// to/from the specified node.
|
// to/from the specified node.
|
||||||
//
|
//
|
||||||
// VolumeAttachment objects are non-namespaced.
|
// VolumeAttachment objects are non-namespaced.
|
||||||
message VolumeAttachment {
|
message VolumeAttachment {
|
||||||
// Standard object metadata.
|
// Standard object metadata.
|
||||||
|
@ -27,9 +27,9 @@ option go_package = "resource";
|
|||||||
// Quantity is a fixed-point representation of a number.
|
// Quantity is a fixed-point representation of a number.
|
||||||
// It provides convenient marshaling/unmarshaling in JSON and YAML,
|
// It provides convenient marshaling/unmarshaling in JSON and YAML,
|
||||||
// in addition to String() and Int64() accessors.
|
// in addition to String() and Int64() accessors.
|
||||||
//
|
//
|
||||||
// The serialization format is:
|
// The serialization format is:
|
||||||
//
|
//
|
||||||
// <quantity> ::= <signedNumber><suffix>
|
// <quantity> ::= <signedNumber><suffix>
|
||||||
// (Note that <suffix> may be empty, from the "" case in <decimalSI>.)
|
// (Note that <suffix> may be empty, from the "" case in <decimalSI>.)
|
||||||
// <digit> ::= 0 | 1 | ... | 9
|
// <digit> ::= 0 | 1 | ... | 9
|
||||||
@ -43,16 +43,16 @@ option go_package = "resource";
|
|||||||
// <decimalSI> ::= m | "" | k | M | G | T | P | E
|
// <decimalSI> ::= m | "" | k | M | G | T | P | E
|
||||||
// (Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)
|
// (Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)
|
||||||
// <decimalExponent> ::= "e" <signedNumber> | "E" <signedNumber>
|
// <decimalExponent> ::= "e" <signedNumber> | "E" <signedNumber>
|
||||||
//
|
//
|
||||||
// No matter which of the three exponent forms is used, no quantity may represent
|
// No matter which of the three exponent forms is used, no quantity may represent
|
||||||
// a number greater than 2^63-1 in magnitude, nor may it have more than 3 decimal
|
// a number greater than 2^63-1 in magnitude, nor may it have more than 3 decimal
|
||||||
// places. Numbers larger or more precise will be capped or rounded up.
|
// places. Numbers larger or more precise will be capped or rounded up.
|
||||||
// (E.g.: 0.1m will rounded up to 1m.)
|
// (E.g.: 0.1m will rounded up to 1m.)
|
||||||
// This may be extended in the future if we require larger or smaller quantities.
|
// This may be extended in the future if we require larger or smaller quantities.
|
||||||
//
|
//
|
||||||
// When a Quantity is parsed from a string, it will remember the type of suffix
|
// When a Quantity is parsed from a string, it will remember the type of suffix
|
||||||
// it had, and will use the same type again when it is serialized.
|
// it had, and will use the same type again when it is serialized.
|
||||||
//
|
//
|
||||||
// Before serializing, Quantity will be put in "canonical form".
|
// Before serializing, Quantity will be put in "canonical form".
|
||||||
// This means that Exponent/suffix will be adjusted up or down (with a
|
// This means that Exponent/suffix will be adjusted up or down (with a
|
||||||
// corresponding increase or decrease in Mantissa) such that:
|
// corresponding increase or decrease in Mantissa) such that:
|
||||||
@ -60,22 +60,22 @@ option go_package = "resource";
|
|||||||
// b. No fractional digits will be emitted
|
// b. No fractional digits will be emitted
|
||||||
// c. The exponent (or suffix) is as large as possible.
|
// c. The exponent (or suffix) is as large as possible.
|
||||||
// The sign will be omitted unless the number is negative.
|
// The sign will be omitted unless the number is negative.
|
||||||
//
|
//
|
||||||
// Examples:
|
// Examples:
|
||||||
// 1.5 will be serialized as "1500m"
|
// 1.5 will be serialized as "1500m"
|
||||||
// 1.5Gi will be serialized as "1536Mi"
|
// 1.5Gi will be serialized as "1536Mi"
|
||||||
//
|
//
|
||||||
// Note that the quantity will NEVER be internally represented by a
|
// Note that the quantity will NEVER be internally represented by a
|
||||||
// floating point number. That is the whole point of this exercise.
|
// floating point number. That is the whole point of this exercise.
|
||||||
//
|
//
|
||||||
// Non-canonical values will still parse as long as they are well formed,
|
// Non-canonical values will still parse as long as they are well formed,
|
||||||
// but will be re-emitted in their canonical form. (So always use canonical
|
// but will be re-emitted in their canonical form. (So always use canonical
|
||||||
// form, or don't diff.)
|
// form, or don't diff.)
|
||||||
//
|
//
|
||||||
// This format is intended to make it difficult to use these numbers without
|
// This format is intended to make it difficult to use these numbers without
|
||||||
// writing some sort of special handling code in the hopes that that will
|
// writing some sort of special handling code in the hopes that that will
|
||||||
// cause implementors to also use a fixed point implementation.
|
// cause implementors to also use a fixed point implementation.
|
||||||
//
|
//
|
||||||
// +protobuf=true
|
// +protobuf=true
|
||||||
// +protobuf.embed=string
|
// +protobuf.embed=string
|
||||||
// +protobuf.options.marshal=false
|
// +protobuf.options.marshal=false
|
||||||
|
@ -107,7 +107,7 @@ message APIResourceList {
|
|||||||
|
|
||||||
// APIVersions lists the versions that are available, to allow clients to
|
// 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.
|
// discover the API at /api, which is the root path of the legacy v1 API.
|
||||||
//
|
//
|
||||||
// +protobuf.options.(gogoproto.goproto_stringer)=false
|
// +protobuf.options.(gogoproto.goproto_stringer)=false
|
||||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||||
message APIVersions {
|
message APIVersions {
|
||||||
@ -211,7 +211,7 @@ message GetOptions {
|
|||||||
|
|
||||||
// GroupKind specifies a Group and a Kind, but does not force a version. This is useful for identifying
|
// 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
|
// concepts during lookup stages without having partially valid types
|
||||||
//
|
//
|
||||||
// +protobuf.options.(gogoproto.goproto_stringer)=false
|
// +protobuf.options.(gogoproto.goproto_stringer)=false
|
||||||
message GroupKind {
|
message GroupKind {
|
||||||
optional string group = 1;
|
optional string group = 1;
|
||||||
@ -221,7 +221,7 @@ message GroupKind {
|
|||||||
|
|
||||||
// GroupResource specifies a Group and a Resource, but does not force a version. This is useful for identifying
|
// 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
|
// concepts during lookup stages without having partially valid types
|
||||||
//
|
//
|
||||||
// +protobuf.options.(gogoproto.goproto_stringer)=false
|
// +protobuf.options.(gogoproto.goproto_stringer)=false
|
||||||
message GroupResource {
|
message GroupResource {
|
||||||
optional string group = 1;
|
optional string group = 1;
|
||||||
@ -230,7 +230,7 @@ message GroupResource {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// GroupVersion contains the "group" and the "version", which uniquely identifies the API.
|
// GroupVersion contains the "group" and the "version", which uniquely identifies the API.
|
||||||
//
|
//
|
||||||
// +protobuf.options.(gogoproto.goproto_stringer)=false
|
// +protobuf.options.(gogoproto.goproto_stringer)=false
|
||||||
message GroupVersion {
|
message GroupVersion {
|
||||||
optional string group = 1;
|
optional string group = 1;
|
||||||
@ -251,7 +251,7 @@ message GroupVersionForDiscovery {
|
|||||||
|
|
||||||
// GroupVersionKind unambiguously identifies a kind. It doesn't anonymously include GroupVersion
|
// 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
|
// to avoid automatic coersion. It doesn't use a GroupVersion to avoid custom marshalling
|
||||||
//
|
//
|
||||||
// +protobuf.options.(gogoproto.goproto_stringer)=false
|
// +protobuf.options.(gogoproto.goproto_stringer)=false
|
||||||
message GroupVersionKind {
|
message GroupVersionKind {
|
||||||
optional string group = 1;
|
optional string group = 1;
|
||||||
@ -263,7 +263,7 @@ message GroupVersionKind {
|
|||||||
|
|
||||||
// GroupVersionResource unambiguously identifies a resource. It doesn't anonymously include GroupVersion
|
// 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
|
// to avoid automatic coersion. It doesn't use a GroupVersion to avoid custom marshalling
|
||||||
//
|
//
|
||||||
// +protobuf.options.(gogoproto.goproto_stringer)=false
|
// +protobuf.options.(gogoproto.goproto_stringer)=false
|
||||||
message GroupVersionResource {
|
message GroupVersionResource {
|
||||||
optional string group = 1;
|
optional string group = 1;
|
||||||
@ -411,7 +411,7 @@ message ListOptions {
|
|||||||
// more results are available. Servers may choose not to support the limit argument and will return
|
// 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
|
// 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.
|
// 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
|
// 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
|
// 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
|
// first request is issued will be included in any subsequent continued requests. This is sometimes
|
||||||
@ -432,14 +432,14 @@ message ListOptions {
|
|||||||
// a list starting from the next key, but from the latest snapshot, which is inconsistent from the
|
// 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
|
// 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".
|
// 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
|
// 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.
|
// resourceVersion value returned by the server and not miss any modifications.
|
||||||
optional string continue = 8;
|
optional string continue = 8;
|
||||||
}
|
}
|
||||||
|
|
||||||
// MicroTime is version of Time with microsecond level precision.
|
// MicroTime is version of Time with microsecond level precision.
|
||||||
//
|
//
|
||||||
// +protobuf.options.marshal=false
|
// +protobuf.options.marshal=false
|
||||||
// +protobuf.as=Timestamp
|
// +protobuf.as=Timestamp
|
||||||
// +protobuf.options.(gogoproto.goproto_stringer)=false
|
// +protobuf.options.(gogoproto.goproto_stringer)=false
|
||||||
@ -475,12 +475,12 @@ message ObjectMeta {
|
|||||||
// The provided value has the same validation rules as the Name field,
|
// 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
|
// and may be truncated by the length of the suffix required to make the value
|
||||||
// unique on the server.
|
// unique on the server.
|
||||||
//
|
//
|
||||||
// If this field is specified and the generated name exists, the server will
|
// 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
|
// 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
|
// 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).
|
// should retry (optionally after the time indicated in the Retry-After header).
|
||||||
//
|
//
|
||||||
// Applied only if Name is not specified.
|
// Applied only if Name is not specified.
|
||||||
// More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency
|
// More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency
|
||||||
// +optional
|
// +optional
|
||||||
@ -490,7 +490,7 @@ message ObjectMeta {
|
|||||||
// equivalent to the "default" namespace, but "default" is the canonical representation.
|
// 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
|
// Not all objects are required to be scoped to a namespace - the value of this field for
|
||||||
// those objects will be empty.
|
// those objects will be empty.
|
||||||
//
|
//
|
||||||
// Must be a DNS_LABEL.
|
// Must be a DNS_LABEL.
|
||||||
// Cannot be updated.
|
// Cannot be updated.
|
||||||
// More info: http://kubernetes.io/docs/user-guide/namespaces
|
// More info: http://kubernetes.io/docs/user-guide/namespaces
|
||||||
@ -506,7 +506,7 @@ message ObjectMeta {
|
|||||||
// UID is the unique in time and space value for this object. It is typically generated by
|
// 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
|
// the server on successful creation of a resource and is not allowed to change on PUT
|
||||||
// operations.
|
// operations.
|
||||||
//
|
//
|
||||||
// Populated by the system.
|
// Populated by the system.
|
||||||
// Read-only.
|
// Read-only.
|
||||||
// More info: http://kubernetes.io/docs/user-guide/identifiers#uids
|
// More info: http://kubernetes.io/docs/user-guide/identifiers#uids
|
||||||
@ -518,7 +518,7 @@ message ObjectMeta {
|
|||||||
// concurrency, change detection, and the watch operation on a resource or set of resources.
|
// 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.
|
// 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.
|
// They may only be valid for a particular resource or set of resources.
|
||||||
//
|
//
|
||||||
// Populated by the system.
|
// Populated by the system.
|
||||||
// Read-only.
|
// Read-only.
|
||||||
// Value must be treated as opaque by clients and .
|
// Value must be treated as opaque by clients and .
|
||||||
@ -534,7 +534,7 @@ message ObjectMeta {
|
|||||||
// CreationTimestamp is a timestamp representing the server time when this object was
|
// 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.
|
// 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.
|
// Clients may not set this value. It is represented in RFC3339 form and is in UTC.
|
||||||
//
|
//
|
||||||
// Populated by the system.
|
// Populated by the system.
|
||||||
// Read-only.
|
// Read-only.
|
||||||
// Null for lists.
|
// Null for lists.
|
||||||
@ -556,7 +556,7 @@ message ObjectMeta {
|
|||||||
// exist after this timestamp, until an administrator or automated process can determine the
|
// exist after this timestamp, until an administrator or automated process can determine the
|
||||||
// resource is fully terminated.
|
// resource is fully terminated.
|
||||||
// If not set, graceful deletion of the object has not been requested.
|
// If not set, graceful deletion of the object has not been requested.
|
||||||
//
|
//
|
||||||
// Populated by the system when a graceful deletion is requested.
|
// Populated by the system when a graceful deletion is requested.
|
||||||
// Read-only.
|
// Read-only.
|
||||||
// More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
|
// More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
|
||||||
@ -598,7 +598,7 @@ message ObjectMeta {
|
|||||||
// this object has been completely initialized. Otherwise, the object is considered uninitialized
|
// 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
|
// and is hidden (in list/watch and get calls) from clients that haven't explicitly asked to
|
||||||
// observe uninitialized objects.
|
// observe uninitialized objects.
|
||||||
//
|
//
|
||||||
// When an object is created, the system will populate this list with the current set of initializers.
|
// 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
|
// Only privileged users may set or modify this list. Once it is empty, it may not be modified further
|
||||||
// by any user.
|
// by any user.
|
||||||
@ -734,7 +734,7 @@ message StatusCause {
|
|||||||
// Arrays are zero-indexed. Fields may appear more than once in an array of
|
// Arrays are zero-indexed. Fields may appear more than once in an array of
|
||||||
// causes due to fields having multiple errors.
|
// causes due to fields having multiple errors.
|
||||||
// Optional.
|
// Optional.
|
||||||
//
|
//
|
||||||
// Examples:
|
// Examples:
|
||||||
// "name" - the field "name" on the current resource
|
// "name" - the field "name" on the current resource
|
||||||
// "items[0].name" - the field "name" on the first array entry in "items"
|
// "items[0].name" - the field "name" on the first array entry in "items"
|
||||||
@ -785,7 +785,7 @@ message StatusDetails {
|
|||||||
// Time is a wrapper around time.Time which supports correct
|
// Time is a wrapper around time.Time which supports correct
|
||||||
// marshaling to YAML and JSON. Wrappers are provided for many
|
// marshaling to YAML and JSON. Wrappers are provided for many
|
||||||
// of the factory methods that the time package offers.
|
// of the factory methods that the time package offers.
|
||||||
//
|
//
|
||||||
// +protobuf.options.marshal=false
|
// +protobuf.options.marshal=false
|
||||||
// +protobuf.as=Timestamp
|
// +protobuf.as=Timestamp
|
||||||
// +protobuf.options.(gogoproto.goproto_stringer)=false
|
// +protobuf.options.(gogoproto.goproto_stringer)=false
|
||||||
@ -821,7 +821,7 @@ message Timestamp {
|
|||||||
// TypeMeta describes an individual object in an API response or request
|
// TypeMeta describes an individual object in an API response or request
|
||||||
// with strings representing the type of the object and its API schema version.
|
// with strings representing the type of the object and its API schema version.
|
||||||
// Structures that are versioned or persisted should inline TypeMeta.
|
// Structures that are versioned or persisted should inline TypeMeta.
|
||||||
//
|
//
|
||||||
// +k8s:deepcopy-gen=false
|
// +k8s:deepcopy-gen=false
|
||||||
message TypeMeta {
|
message TypeMeta {
|
||||||
// Kind is a string value representing the REST resource this object represents.
|
// Kind is a string value representing the REST resource this object represents.
|
||||||
@ -852,7 +852,7 @@ message UpdateOptions {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Verbs masks the value so protobuf can generate
|
// Verbs masks the value so protobuf can generate
|
||||||
//
|
//
|
||||||
// +protobuf.nullable=true
|
// +protobuf.nullable=true
|
||||||
// +protobuf.options.(gogoproto.goproto_stringer)=false
|
// +protobuf.options.(gogoproto.goproto_stringer)=false
|
||||||
message Verbs {
|
message Verbs {
|
||||||
@ -862,7 +862,7 @@ message Verbs {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Event represents a single event to a watched resource.
|
// Event represents a single event to a watched resource.
|
||||||
//
|
//
|
||||||
// +protobuf=true
|
// +protobuf=true
|
||||||
// +k8s:deepcopy-gen=true
|
// +k8s:deepcopy-gen=true
|
||||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||||
|
@ -25,11 +25,11 @@ package k8s.io.apimachinery.pkg.runtime;
|
|||||||
option go_package = "runtime";
|
option go_package = "runtime";
|
||||||
|
|
||||||
// RawExtension is used to hold extensions in external versions.
|
// RawExtension is used to hold extensions in external versions.
|
||||||
//
|
//
|
||||||
// To use this, make a field which has RawExtension as its type in your external, versioned
|
// To use this, make a field which has RawExtension as its type in your external, versioned
|
||||||
// struct, and Object in your internal struct. You also need to register your
|
// struct, and Object in your internal struct. You also need to register your
|
||||||
// various plugin types.
|
// various plugin types.
|
||||||
//
|
//
|
||||||
// // Internal package:
|
// // Internal package:
|
||||||
// type MyAPIObject struct {
|
// type MyAPIObject struct {
|
||||||
// runtime.TypeMeta `json:",inline"`
|
// runtime.TypeMeta `json:",inline"`
|
||||||
@ -38,7 +38,7 @@ option go_package = "runtime";
|
|||||||
// type PluginA struct {
|
// type PluginA struct {
|
||||||
// AOption string `json:"aOption"`
|
// AOption string `json:"aOption"`
|
||||||
// }
|
// }
|
||||||
//
|
//
|
||||||
// // External package:
|
// // External package:
|
||||||
// type MyAPIObject struct {
|
// type MyAPIObject struct {
|
||||||
// runtime.TypeMeta `json:",inline"`
|
// runtime.TypeMeta `json:",inline"`
|
||||||
@ -47,7 +47,7 @@ option go_package = "runtime";
|
|||||||
// type PluginA struct {
|
// type PluginA struct {
|
||||||
// AOption string `json:"aOption"`
|
// AOption string `json:"aOption"`
|
||||||
// }
|
// }
|
||||||
//
|
//
|
||||||
// // On the wire, the JSON will look something like this:
|
// // On the wire, the JSON will look something like this:
|
||||||
// {
|
// {
|
||||||
// "kind":"MyAPIObject",
|
// "kind":"MyAPIObject",
|
||||||
@ -57,7 +57,7 @@ option go_package = "runtime";
|
|||||||
// "aOption":"foo",
|
// "aOption":"foo",
|
||||||
// },
|
// },
|
||||||
// }
|
// }
|
||||||
//
|
//
|
||||||
// So what happens? Decode first uses json or yaml to unmarshal the serialized data into
|
// So what happens? Decode first uses json or yaml to unmarshal the serialized data into
|
||||||
// your external MyAPIObject. That causes the raw JSON to be stored, but not unpacked.
|
// your external MyAPIObject. That causes the raw JSON to be stored, but not unpacked.
|
||||||
// The next step is to copy (using pkg/conversion) into the internal struct. The runtime
|
// The next step is to copy (using pkg/conversion) into the internal struct. The runtime
|
||||||
@ -65,13 +65,13 @@ option go_package = "runtime";
|
|||||||
// JSON stored in RawExtension, turning it into the correct object type, and storing it
|
// JSON stored in RawExtension, turning it into the correct object type, and storing it
|
||||||
// in the Object. (TODO: In the case where the object is of an unknown type, a
|
// in the Object. (TODO: In the case where the object is of an unknown type, a
|
||||||
// runtime.Unknown object will be created and stored.)
|
// runtime.Unknown object will be created and stored.)
|
||||||
//
|
//
|
||||||
// +k8s:deepcopy-gen=true
|
// +k8s:deepcopy-gen=true
|
||||||
// +protobuf=true
|
// +protobuf=true
|
||||||
// +k8s:openapi-gen=true
|
// +k8s:openapi-gen=true
|
||||||
message RawExtension {
|
message RawExtension {
|
||||||
// Raw is the underlying serialization of this object.
|
// Raw is the underlying serialization of this object.
|
||||||
//
|
//
|
||||||
// TODO: Determine how to detect ContentType and ContentEncoding of 'Raw' data.
|
// TODO: Determine how to detect ContentType and ContentEncoding of 'Raw' data.
|
||||||
optional bytes raw = 1;
|
optional bytes raw = 1;
|
||||||
}
|
}
|
||||||
@ -83,10 +83,10 @@ message RawExtension {
|
|||||||
// ... // other fields
|
// ... // other fields
|
||||||
// }
|
// }
|
||||||
// func (obj *MyAwesomeAPIObject) SetGroupVersionKind(gvk *metav1.GroupVersionKind) { metav1.UpdateTypeMeta(obj,gvk) }; GroupVersionKind() *GroupVersionKind
|
// func (obj *MyAwesomeAPIObject) SetGroupVersionKind(gvk *metav1.GroupVersionKind) { metav1.UpdateTypeMeta(obj,gvk) }; GroupVersionKind() *GroupVersionKind
|
||||||
//
|
//
|
||||||
// TypeMeta is provided here for convenience. You may use it directly from this package or define
|
// TypeMeta is provided here for convenience. You may use it directly from this package or define
|
||||||
// your own with the same fields.
|
// your own with the same fields.
|
||||||
//
|
//
|
||||||
// +k8s:deepcopy-gen=false
|
// +k8s:deepcopy-gen=false
|
||||||
// +protobuf=true
|
// +protobuf=true
|
||||||
// +k8s:openapi-gen=true
|
// +k8s:openapi-gen=true
|
||||||
@ -103,7 +103,7 @@ message TypeMeta {
|
|||||||
// TypeMeta features-- kind, version, etc.
|
// TypeMeta features-- kind, version, etc.
|
||||||
// TODO: Make this object have easy access to field based accessors and settors for
|
// TODO: Make this object have easy access to field based accessors and settors for
|
||||||
// metadata and field mutatation.
|
// metadata and field mutatation.
|
||||||
//
|
//
|
||||||
// +k8s:deepcopy-gen=true
|
// +k8s:deepcopy-gen=true
|
||||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||||
// +protobuf=true
|
// +protobuf=true
|
||||||
|
@ -29,7 +29,7 @@ option go_package = "intstr";
|
|||||||
// inner type. This allows you to have, for example, a JSON field that can
|
// inner type. This allows you to have, for example, a JSON field that can
|
||||||
// accept a name or number.
|
// accept a name or number.
|
||||||
// TODO: Rename to Int32OrString
|
// TODO: Rename to Int32OrString
|
||||||
//
|
//
|
||||||
// +protobuf=true
|
// +protobuf=true
|
||||||
// +protobuf.options.(gogoproto.goproto_stringer)=false
|
// +protobuf.options.(gogoproto.goproto_stringer)=false
|
||||||
// +k8s:openapi-gen=true
|
// +k8s:openapi-gen=true
|
||||||
|
@ -121,17 +121,17 @@ message GroupResources {
|
|||||||
optional string group = 1;
|
optional string group = 1;
|
||||||
|
|
||||||
// Resources is a list of resources this rule applies to.
|
// Resources is a list of resources this rule applies to.
|
||||||
//
|
//
|
||||||
// For example:
|
// For example:
|
||||||
// 'pods' matches pods.
|
// 'pods' matches pods.
|
||||||
// 'pods/log' matches the log subresource of pods.
|
// 'pods/log' matches the log subresource of pods.
|
||||||
// '*' matches all resources and their subresources.
|
// '*' matches all resources and their subresources.
|
||||||
// 'pods/*' matches all subresources of pods.
|
// 'pods/*' matches all subresources of pods.
|
||||||
// '*/scale' matches all scale subresources.
|
// '*/scale' matches all scale subresources.
|
||||||
//
|
//
|
||||||
// If wildcard is present, the validation rule will ensure resources do not
|
// If wildcard is present, the validation rule will ensure resources do not
|
||||||
// overlap with each other.
|
// overlap with each other.
|
||||||
//
|
//
|
||||||
// An empty list implies all resources and subresources in this API groups apply.
|
// An empty list implies all resources and subresources in this API groups apply.
|
||||||
// +optional
|
// +optional
|
||||||
repeated string resources = 2;
|
repeated string resources = 2;
|
||||||
|
@ -128,17 +128,17 @@ message GroupResources {
|
|||||||
optional string group = 1;
|
optional string group = 1;
|
||||||
|
|
||||||
// Resources is a list of resources this rule applies to.
|
// Resources is a list of resources this rule applies to.
|
||||||
//
|
//
|
||||||
// For example:
|
// For example:
|
||||||
// 'pods' matches pods.
|
// 'pods' matches pods.
|
||||||
// 'pods/log' matches the log subresource of pods.
|
// 'pods/log' matches the log subresource of pods.
|
||||||
// '*' matches all resources and their subresources.
|
// '*' matches all resources and their subresources.
|
||||||
// 'pods/*' matches all subresources of pods.
|
// 'pods/*' matches all subresources of pods.
|
||||||
// '*/scale' matches all scale subresources.
|
// '*/scale' matches all scale subresources.
|
||||||
//
|
//
|
||||||
// If wildcard is present, the validation rule will ensure resources do not
|
// If wildcard is present, the validation rule will ensure resources do not
|
||||||
// overlap with each other.
|
// overlap with each other.
|
||||||
//
|
//
|
||||||
// An empty list implies all resources and subresources in this API groups apply.
|
// An empty list implies all resources and subresources in this API groups apply.
|
||||||
// +optional
|
// +optional
|
||||||
repeated string resources = 2;
|
repeated string resources = 2;
|
||||||
|
@ -131,17 +131,17 @@ message GroupResources {
|
|||||||
optional string group = 1;
|
optional string group = 1;
|
||||||
|
|
||||||
// Resources is a list of resources this rule applies to.
|
// Resources is a list of resources this rule applies to.
|
||||||
//
|
//
|
||||||
// For example:
|
// For example:
|
||||||
// 'pods' matches pods.
|
// 'pods' matches pods.
|
||||||
// 'pods/log' matches the log subresource of pods.
|
// 'pods/log' matches the log subresource of pods.
|
||||||
// '*' matches all resources and their subresources.
|
// '*' matches all resources and their subresources.
|
||||||
// 'pods/*' matches all subresources of pods.
|
// 'pods/*' matches all subresources of pods.
|
||||||
// '*/scale' matches all scale subresources.
|
// '*/scale' matches all scale subresources.
|
||||||
//
|
//
|
||||||
// If wildcard is present, the validation rule will ensure resources do not
|
// If wildcard is present, the validation rule will ensure resources do not
|
||||||
// overlap with each other.
|
// overlap with each other.
|
||||||
//
|
//
|
||||||
// An empty list implies all resources and subresources in this API groups apply.
|
// An empty list implies all resources and subresources in this API groups apply.
|
||||||
// +optional
|
// +optional
|
||||||
repeated string resources = 2;
|
repeated string resources = 2;
|
||||||
|
@ -724,6 +724,10 @@ func genComment(out io.Writer, lines []string, indent string) {
|
|||||||
lines = lines[:l-1]
|
lines = lines[:l-1]
|
||||||
}
|
}
|
||||||
for _, c := range lines {
|
for _, c := range lines {
|
||||||
|
if len(c) == 0 {
|
||||||
|
fmt.Fprintf(out, "%s//\n", indent) // avoid trailing whitespace
|
||||||
|
continue
|
||||||
|
}
|
||||||
fmt.Fprintf(out, "%s// %s\n", indent, c)
|
fmt.Fprintf(out, "%s// %s\n", indent, c)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user