mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-30 15:05:27 +00:00
Merge pull request #8338 from nikhiljindal/omitEmpty
Fixing the omitempty tag
This commit is contained in:
commit
bf912e0d82
@ -188,7 +188,7 @@ type Volume struct {
|
||||
// Source represents the location and type of a volume to mount.
|
||||
// This is optional for now. If not specified, the Volume is implied to be an EmptyDir.
|
||||
// This implied behavior is deprecated and will be removed in a future version.
|
||||
VolumeSource `json:",inline,omitempty"`
|
||||
VolumeSource `json:",inline"`
|
||||
}
|
||||
|
||||
// VolumeSource represents the source location of a volume to mount.
|
||||
@ -200,26 +200,26 @@ type VolumeSource struct {
|
||||
// to see the host machine. Most containers will NOT need this.
|
||||
// TODO(jonesdl) We need to restrict who can use host directory mounts and who can/can not
|
||||
// mount host directories as read/write.
|
||||
HostPath *HostPathVolumeSource `json:"hostPath" description:"pre-existing host file or directory; generally for privileged system daemons or other agents tied to the host"`
|
||||
HostPath *HostPathVolumeSource `json:"hostPath,omitempty" description:"pre-existing host file or directory; generally for privileged system daemons or other agents tied to the host"`
|
||||
// EmptyDir represents a temporary directory that shares a pod's lifetime.
|
||||
EmptyDir *EmptyDirVolumeSource `json:"emptyDir" description:"temporary directory that shares a pod's lifetime"`
|
||||
EmptyDir *EmptyDirVolumeSource `json:"emptyDir,omitempty" description:"temporary directory that shares a pod's lifetime"`
|
||||
// GCEPersistentDisk represents a GCE Disk resource that is attached to a
|
||||
// kubelet's host machine and then exposed to the pod.
|
||||
GCEPersistentDisk *GCEPersistentDiskVolumeSource `json:"gcePersistentDisk" description:"GCE disk resource attached to the host machine on demand"`
|
||||
GCEPersistentDisk *GCEPersistentDiskVolumeSource `json:"gcePersistentDisk,omitempty" description:"GCE disk resource attached to the host machine on demand"`
|
||||
// AWSElasticBlockStore represents an AWS Disk resource that is attached to a
|
||||
// kubelet's host machine and then exposed to the pod.
|
||||
AWSElasticBlockStore *AWSElasticBlockStoreVolumeSource `json:"awsElasticBlockStore" description:"AWS disk resource attached to the host machine on demand"`
|
||||
AWSElasticBlockStore *AWSElasticBlockStoreVolumeSource `json:"awsElasticBlockStore,omitempty" description:"AWS disk resource attached to the host machine on demand"`
|
||||
// GitRepo represents a git repository at a particular revision.
|
||||
GitRepo *GitRepoVolumeSource `json:"gitRepo" description:"git repository at a particular revision"`
|
||||
GitRepo *GitRepoVolumeSource `json:"gitRepo,omitempty" description:"git repository at a particular revision"`
|
||||
// Secret represents a secret that should populate this volume.
|
||||
Secret *SecretVolumeSource `json:"secret" description:"secret to populate volume"`
|
||||
Secret *SecretVolumeSource `json:"secret,omitempty" description:"secret to populate volume"`
|
||||
// NFS represents an NFS mount on the host that shares a pod's lifetime
|
||||
NFS *NFSVolumeSource `json:"nfs" description:"NFS volume that will be mounted in the host machine"`
|
||||
NFS *NFSVolumeSource `json:"nfs,omitempty" description:"NFS volume that will be mounted in the host machine"`
|
||||
// ISCSI represents an ISCSI Disk resource that is attached to a
|
||||
// kubelet's host machine and then exposed to the pod.
|
||||
ISCSI *ISCSIVolumeSource `json:"iscsi" description:"iSCSI disk attached to host machine on demand"`
|
||||
ISCSI *ISCSIVolumeSource `json:"iscsi,omitempty" description:"iSCSI disk attached to host machine on demand"`
|
||||
// Glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime
|
||||
Glusterfs *GlusterfsVolumeSource `json:"glusterfs" description:"Glusterfs volume that will be mounted on the host machine "`
|
||||
Glusterfs *GlusterfsVolumeSource `json:"glusterfs,omitempty" description:"Glusterfs volume that will be mounted on the host machine "`
|
||||
// PersistentVolumeClaimVolumeSource represents a reference to a PersistentVolumeClaim in the same namespace
|
||||
PersistentVolumeClaimVolumeSource *PersistentVolumeClaimVolumeSource `json:"persistentVolumeClaim,omitempty" description:"a reference to a PersistentVolumeClaim in the same namespace"`
|
||||
}
|
||||
@ -237,25 +237,25 @@ type PersistentVolumeClaimVolumeSource struct {
|
||||
type PersistentVolumeSource struct {
|
||||
// GCEPersistentDisk represents a GCE Disk resource that is attached to a
|
||||
// kubelet's host machine and then exposed to the pod.
|
||||
GCEPersistentDisk *GCEPersistentDiskVolumeSource `json:"gcePersistentDisk" description:"GCE disk resource provisioned by an admin"`
|
||||
GCEPersistentDisk *GCEPersistentDiskVolumeSource `json:"gcePersistentDisk,omitempty" description:"GCE disk resource provisioned by an admin"`
|
||||
// AWSElasticBlockStore represents an AWS Disk resource that is attached to a
|
||||
// kubelet's host machine and then exposed to the pod.
|
||||
AWSElasticBlockStore *AWSElasticBlockStoreVolumeSource `json:"awsElasticBlockStore" description:"AWS disk resource provisioned by an admin"`
|
||||
AWSElasticBlockStore *AWSElasticBlockStoreVolumeSource `json:"awsElasticBlockStore,omitempty" description:"AWS disk resource provisioned by an admin"`
|
||||
// HostPath represents a directory on the host.
|
||||
// This is useful for development and testing only.
|
||||
// on-host storage is not supported in any way.
|
||||
HostPath *HostPathVolumeSource `json:"hostPath" description:"a HostPath provisioned by a developer or tester; for develment use only"`
|
||||
HostPath *HostPathVolumeSource `json:"hostPath,omitempty" description:"a HostPath provisioned by a developer or tester; for develment use only"`
|
||||
// Glusterfs represents a Glusterfs volume that is attached to a host and exposed to the pod
|
||||
Glusterfs *GlusterfsVolumeSource `json:"glusterfs" description:"Glusterfs volume resource provisioned by an admin"`
|
||||
Glusterfs *GlusterfsVolumeSource `json:"glusterfs,omitempty" description:"Glusterfs volume resource provisioned by an admin"`
|
||||
// NFS represents an NFS mount on the host
|
||||
NFS *NFSVolumeSource `json:"nfs" description:"NFS volume resource provisioned by an admin"`
|
||||
NFS *NFSVolumeSource `json:"nfs,omitempty" description:"NFS volume resource provisioned by an admin"`
|
||||
}
|
||||
|
||||
type PersistentVolume struct {
|
||||
TypeMeta `json:",inline"`
|
||||
ObjectMeta `json:"metadata,omitempty" description:"standard object metadata; see http://docs.k8s.io/api-conventions.md#metadata"`
|
||||
|
||||
//Spec defines a persistent volume owned by the cluster
|
||||
// Spec defines a persistent volume owned by the cluster
|
||||
Spec PersistentVolumeSpec `json:"spec,omitempty" description:"specification of a persistent volume as provisioned by an administrator"`
|
||||
|
||||
// Status represents the current information about persistent volume.
|
||||
@ -366,7 +366,7 @@ type HostPathVolumeSource struct {
|
||||
type EmptyDirVolumeSource struct {
|
||||
// Optional: what type of storage medium should back this directory.
|
||||
// The default is "" which means to use the node's default medium.
|
||||
Medium StorageType `json:"medium" description:"type of storage used to back the volume; must be an empty string (default) or Memory"`
|
||||
Medium StorageType `json:"medium,omitempty" description:"type of storage used to back the volume; must be an empty string (default) or Memory"`
|
||||
}
|
||||
|
||||
// GlusterfsVolumeSource represents a Glusterfs Mount that lasts the lifetime of a pod
|
||||
@ -412,7 +412,7 @@ type GCEPersistentDiskVolumeSource struct {
|
||||
// Must be a filesystem type supported by the host operating system.
|
||||
// Ex. "ext4", "xfs", "ntfs"
|
||||
// TODO: how do we prevent errors in the filesystem from compromising the machine
|
||||
FSType string `json:"fsType,omitempty" description:"file system type to mount, such as ext4, xfs, ntfs"`
|
||||
FSType string `json:"fsType" description:"file system type to mount, such as ext4, xfs, ntfs"`
|
||||
// Optional: Partition on the disk to mount.
|
||||
// If omitted, kubelet will attempt to mount the device name.
|
||||
// Ex. For /dev/sda1, this field is "1", for /dev/sda, this field is 0 or empty.
|
||||
@ -434,8 +434,7 @@ type AWSElasticBlockStoreVolumeSource struct {
|
||||
// Must be a filesystem type supported by the host operating system.
|
||||
// Ex. "ext4", "xfs", "ntfs"
|
||||
// TODO: how do we prevent errors in the filesystem from compromising the machine
|
||||
// TODO: why omitempty if required?
|
||||
FSType string `json:"fsType,omitempty" description:"file system type to mount, such as ext4, xfs, ntfs"`
|
||||
FSType string `json:"fsType" description:"file system type to mount, such as ext4, xfs, ntfs"`
|
||||
// Optional: Partition on the disk to mount.
|
||||
// If omitted, kubelet will attempt to mount the device name.
|
||||
// Ex. For /dev/sda1, this field is "1", for /dev/sda, this field 0 or empty.
|
||||
@ -478,16 +477,16 @@ type NFSVolumeSource struct {
|
||||
type ISCSIVolumeSource struct {
|
||||
// Required: iSCSI target portal
|
||||
// the portal is either an IP or ip_addr:port if port is other than default (typically TCP ports 860 and 3260)
|
||||
TargetPortal string `json:"targetPortal,omitempty" description:"iSCSI target portal"`
|
||||
TargetPortal string `json:"targetPortal" description:"iSCSI target portal"`
|
||||
// Required: target iSCSI Qualified Name
|
||||
IQN string `json:"iqn,omitempty" description:"iSCSI Qualified Name"`
|
||||
IQN string `json:"iqn" description:"iSCSI Qualified Name"`
|
||||
// Required: iSCSI target lun number
|
||||
Lun int `json:"lun,omitempty" description:"iscsi target lun number"`
|
||||
Lun int `json:"lun" description:"iscsi target lun number"`
|
||||
// Required: Filesystem type to mount.
|
||||
// Must be a filesystem type supported by the host operating system.
|
||||
// Ex. "ext4", "xfs", "ntfs"
|
||||
// TODO: how do we prevent errors in the filesystem from compromising the machine
|
||||
FSType string `json:"fsType,omitempty" description:"file system type to mount, such as ext4, xfs, ntfs"`
|
||||
FSType string `json:"fsType" description:"file system type to mount, such as ext4, xfs, ntfs"`
|
||||
// Optional: Defaults to false (read/write). ReadOnly here will force
|
||||
// the ReadOnly setting in VolumeMounts.
|
||||
ReadOnly bool `json:"readOnly,omitempty" description:"read-only if true, read-write otherwise (false or unspecified)"`
|
||||
@ -549,7 +548,7 @@ type HTTPGetAction struct {
|
||||
// Optional: Path to access on the HTTP server.
|
||||
Path string `json:"path,omitempty" description:"path to access on the HTTP server"`
|
||||
// Required: Name or number of the port to access on the container.
|
||||
Port util.IntOrString `json:"port,omitempty" description:"number or name of the port to access on the container"`
|
||||
Port util.IntOrString `json:"port" description:"number or name of the port to access on the container"`
|
||||
// Optional: Host name to connect to, defaults to the pod IP.
|
||||
Host string `json:"host,omitempty" description:"hostname to connect to; defaults to pod IP"`
|
||||
}
|
||||
@ -557,7 +556,7 @@ type HTTPGetAction struct {
|
||||
// TCPSocketAction describes an action based on opening a socket
|
||||
type TCPSocketAction struct {
|
||||
// Required: Port to connect to.
|
||||
Port util.IntOrString `json:"port,omitempty" description:"number of name of the port to access on the container"`
|
||||
Port util.IntOrString `json:"port" description:"number of name of the port to access on the container"`
|
||||
}
|
||||
|
||||
// ExecAction describes a "run in container" action.
|
||||
@ -643,7 +642,7 @@ type Container struct {
|
||||
// Deprecated - see SecurityContext. Optional: Default to false.
|
||||
Privileged bool `json:"privileged,omitempty" description:"hether or not the container is granted privileged status; defaults to false; cannot be updated; deprecated; See SecurityContext"`
|
||||
// Optional: Policy for pulling images for this container
|
||||
ImagePullPolicy PullPolicy `json:"imagePullPolicy" description:"image pull policy; one of PullAlways, PullNever, PullIfNotPresent; defaults to PullAlways if :latest tag is specified, or PullIfNotPresent otherwise; cannot be updated"`
|
||||
ImagePullPolicy PullPolicy `json:"imagePullPolicy,omitempty" description:"image pull policy; one of PullAlways, PullNever, PullIfNotPresent; defaults to PullAlways if :latest tag is specified, or PullIfNotPresent otherwise; cannot be updated"`
|
||||
// Deprecated - see SecurityContext. Optional: Capabilities for container.
|
||||
Capabilities Capabilities `json:"capabilities,omitempty" description:"capabilities for container; cannot be updated; deprecated; See SecurityContext"`
|
||||
// Optional: SecurityContext defines the security options the pod should be run with
|
||||
@ -802,7 +801,7 @@ const (
|
||||
|
||||
// PodSpec is a description of a pod
|
||||
type PodSpec struct {
|
||||
Volumes []Volume `json:"volumes" description:"list of volumes that can be mounted by containers belonging to the pod" patchStrategy:"merge" patchMergeKey:"name"`
|
||||
Volumes []Volume `json:"volumes,omitempty" description:"list of volumes that can be mounted by containers belonging to the pod" patchStrategy:"merge" patchMergeKey:"name"`
|
||||
// Required: there must be at least one container in a pod.
|
||||
Containers []Container `json:"containers" description:"list of containers belonging to the pod; cannot be updated; containers cannot currently be added or removed; there must be at least one container in a Pod" patchStrategy:"merge" patchMergeKey:"name"`
|
||||
RestartPolicy RestartPolicy `json:"restartPolicy,omitempty" description:"restart policy for all containers within the pod; one of RestartPolicyAlways, RestartPolicyOnFailure, RestartPolicyNever"`
|
||||
@ -820,7 +819,7 @@ type PodSpec struct {
|
||||
NodeSelector map[string]string `json:"nodeSelector,omitempty" description:"selector which must match a node's labels for the pod to be scheduled on that node"`
|
||||
|
||||
// ServiceAccount is the name of the ServiceAccount to use to run this pod
|
||||
ServiceAccount string `json:"serviceAccount" description:"name of the ServiceAccount to use to run this pod"`
|
||||
ServiceAccount string `json:"serviceAccount,omitempty" description:"name of the ServiceAccount to use to run this pod"`
|
||||
|
||||
// Host is a request to schedule this pod onto a specific host. If it is non-empty,
|
||||
// the the scheduler simply schedules this pod onto that host, assuming that it fits
|
||||
@ -910,7 +909,7 @@ type PodTemplateList struct {
|
||||
// ReplicationControllerSpec is the specification of a replication controller.
|
||||
type ReplicationControllerSpec struct {
|
||||
// Replicas is the number of desired replicas.
|
||||
Replicas int `json:"replicas" description:"number of replicas desired"`
|
||||
Replicas int `json:"replicas,omitempty" description:"number of replicas desired"`
|
||||
|
||||
// Selector is a label query over pods that should match the Replicas count.
|
||||
// If Selector is empty, it is defaulted to the labels present on the Pod template.
|
||||
@ -975,7 +974,7 @@ type ServiceSpec struct {
|
||||
Ports []ServicePort `json:"ports" description:"ports exposed by the service"`
|
||||
|
||||
// This service will route traffic to pods having labels matching this selector. If null, no endpoints will be automatically created. If empty, all pods will be selected.
|
||||
Selector map[string]string `json:"selector" description:"label keys and values that must match in order to receive traffic for this service; if empty, all pods are selected, if not specified, endpoints must be manually specified"`
|
||||
Selector map[string]string `json:"selector,omitempty" description:"label keys and values that must match in order to receive traffic for this service; if empty, all pods are selected, if not specified, endpoints must be manually specified"`
|
||||
|
||||
// PortalIP is usually assigned by the master. If specified by the user
|
||||
// we will try to respect it or else fail the request. This field can
|
||||
@ -1000,11 +999,11 @@ type ServicePort struct {
|
||||
// name of this port within the service. This must be a DNS_LABEL.
|
||||
// All ports within a ServiceSpec must have unique names. This maps to
|
||||
// the 'Name' field in EndpointPort objects.
|
||||
Name string `json:"name" description:"the name of this port; optional if only one port is defined"`
|
||||
Name string `json:"name,omitempty" description:"the name of this port; optional if only one port is defined"`
|
||||
|
||||
// Optional: The IP protocol for this port. Supports "TCP" and "UDP",
|
||||
// default is TCP.
|
||||
Protocol Protocol `json:"protocol" description:"the protocol used by this port; must be UDP or TCP; TCP if unspecified"`
|
||||
Protocol Protocol `json:"protocol,omitempty" description:"the protocol used by this port; must be UDP or TCP; TCP if unspecified"`
|
||||
|
||||
// Required: The port that will be exposed by this service.
|
||||
Port int `json:"port" description:"the port number that is exposed"`
|
||||
@ -1013,7 +1012,7 @@ type ServicePort struct {
|
||||
// If this is a string, it will be looked up as a named port in the
|
||||
// target Pod's container ports. If this is not specified, the value
|
||||
// of Port is used (an identity map).
|
||||
TargetPort util.IntOrString `json:"targetPort" description:"the port to access on the pods targeted by the service; defaults to the service port"`
|
||||
TargetPort util.IntOrString `json:"targetPort,omitempty" description:"the port to access on the pods targeted by the service; defaults to the service port"`
|
||||
}
|
||||
|
||||
// Service is a named abstraction of software service (for example, mysql) consisting of local port
|
||||
@ -1053,7 +1052,7 @@ type ServiceAccount struct {
|
||||
ObjectMeta `json:"metadata,omitempty" description:"standard object metadata; see http://docs.k8s.io/api-conventions.md#metadata"`
|
||||
|
||||
// Secrets is the list of secrets allowed to be used by pods running using this ServiceAccount
|
||||
Secrets []ObjectReference `json:"secrets" description:"list of secrets that can be used by pods running as this service account" patchStrategy:"merge" patchMergeKey:"name"`
|
||||
Secrets []ObjectReference `json:"secrets,omitempty" description:"list of secrets that can be used by pods running as this service account" patchStrategy:"merge" patchMergeKey:"name"`
|
||||
}
|
||||
|
||||
// ServiceAccountList is a list of ServiceAccount objects
|
||||
@ -1332,13 +1331,13 @@ type ListOptions struct {
|
||||
TypeMeta `json:",inline"`
|
||||
|
||||
// A selector based on labels
|
||||
LabelSelector string `json:"labelSelector" description:"a selector to restrict the list of returned objects by their labels; defaults to everything"`
|
||||
LabelSelector string `json:"labelSelector,omitempty" description:"a selector to restrict the list of returned objects by their labels; defaults to everything"`
|
||||
// A selector based on fields
|
||||
FieldSelector string `json:"fieldSelector" description:"a selector to restrict the list of returned objects by their fields; defaults to everything"`
|
||||
FieldSelector string `json:"fieldSelector,omitempty" description:"a selector to restrict the list of returned objects by their fields; defaults to everything"`
|
||||
// If true, watch for changes to the selected resources
|
||||
Watch bool `json:"watch" description:"watch for changes to the described resources and return them as a stream of add, update, and remove notifications; specify resourceVersion"`
|
||||
Watch bool `json:"watch,omitempty" description:"watch for changes to the described resources and return them as a stream of add, update, and remove notifications; specify resourceVersion"`
|
||||
// The desired resource version to watch
|
||||
ResourceVersion string `json:"resourceVersion" description:"when specified with a watch call, shows changes that occur after that particular version of a resource; defaults to changes from the beginning of history"`
|
||||
ResourceVersion string `json:"resourceVersion,omitempty" description:"when specified with a watch call, shows changes that occur after that particular version of a resource; defaults to changes from the beginning of history"`
|
||||
}
|
||||
|
||||
// PodLogOptions is the query options for a Pod's logs REST call
|
||||
@ -1579,7 +1578,7 @@ type Event struct {
|
||||
ObjectMeta `json:"metadata" description:"standard object metadata; see http://docs.k8s.io/api-conventions.md#metadata"`
|
||||
|
||||
// Required. The object that this event is about.
|
||||
InvolvedObject ObjectReference `json:"involvedObject,omitempty" description:"object this event is about"`
|
||||
InvolvedObject ObjectReference `json:"involvedObject" description:"object this event is about"`
|
||||
|
||||
// Optional; this should be a short, machine understandable string that gives the reason
|
||||
// for this event being generated.
|
||||
|
@ -188,7 +188,7 @@ type Volume struct {
|
||||
// Source represents the location and type of a volume to mount.
|
||||
// This is optional for now. If not specified, the Volume is implied to be an EmptyDir.
|
||||
// This implied behavior is deprecated and will be removed in a future version.
|
||||
VolumeSource `json:",inline,omitempty"`
|
||||
VolumeSource `json:",inline"`
|
||||
}
|
||||
|
||||
// VolumeSource represents the source location of a volume to mount.
|
||||
@ -200,26 +200,26 @@ type VolumeSource struct {
|
||||
// to see the host machine. Most containers will NOT need this.
|
||||
// TODO(jonesdl) We need to restrict who can use host directory mounts and who can/can not
|
||||
// mount host directories as read/write.
|
||||
HostPath *HostPathVolumeSource `json:"hostPath" description:"pre-existing host file or directory; generally for privileged system daemons or other agents tied to the host"`
|
||||
HostPath *HostPathVolumeSource `json:"hostPath,omitempty" description:"pre-existing host file or directory; generally for privileged system daemons or other agents tied to the host"`
|
||||
// EmptyDir represents a temporary directory that shares a pod's lifetime.
|
||||
EmptyDir *EmptyDirVolumeSource `json:"emptyDir" description:"temporary directory that shares a pod's lifetime"`
|
||||
EmptyDir *EmptyDirVolumeSource `json:"emptyDir,omitempty" description:"temporary directory that shares a pod's lifetime"`
|
||||
// GCEPersistentDisk represents a GCE Disk resource that is attached to a
|
||||
// kubelet's host machine and then exposed to the pod.
|
||||
GCEPersistentDisk *GCEPersistentDiskVolumeSource `json:"gcePersistentDisk" description:"GCE disk resource attached to the host machine on demand"`
|
||||
GCEPersistentDisk *GCEPersistentDiskVolumeSource `json:"gcePersistentDisk,omitempty" description:"GCE disk resource attached to the host machine on demand"`
|
||||
// AWSElasticBlockStore represents an AWS Disk resource that is attached to a
|
||||
// kubelet's host machine and then exposed to the pod.
|
||||
AWSElasticBlockStore *AWSElasticBlockStoreVolumeSource `json:"awsElasticBlockStore" description:"AWS disk resource attached to the host machine on demand"`
|
||||
AWSElasticBlockStore *AWSElasticBlockStoreVolumeSource `json:"awsElasticBlockStore,omitempty" description:"AWS disk resource attached to the host machine on demand"`
|
||||
// GitRepo represents a git repository at a particular revision.
|
||||
GitRepo *GitRepoVolumeSource `json:"gitRepo" description:"git repository at a particular revision"`
|
||||
GitRepo *GitRepoVolumeSource `json:"gitRepo,omitempty" description:"git repository at a particular revision"`
|
||||
// Secret represents a secret that should populate this volume.
|
||||
Secret *SecretVolumeSource `json:"secret" description:"secret to populate volume"`
|
||||
Secret *SecretVolumeSource `json:"secret,omitempty" description:"secret to populate volume"`
|
||||
// NFS represents an NFS mount on the host that shares a pod's lifetime
|
||||
NFS *NFSVolumeSource `json:"nfs" description:"NFS volume that will be mounted in the host machine"`
|
||||
NFS *NFSVolumeSource `json:"nfs,omitempty" description:"NFS volume that will be mounted in the host machine"`
|
||||
// ISCSI represents an ISCSI Disk resource that is attached to a
|
||||
// kubelet's host machine and then exposed to the pod.
|
||||
ISCSI *ISCSIVolumeSource `json:"iscsi" description:"iSCSI disk attached to host machine on demand"`
|
||||
ISCSI *ISCSIVolumeSource `json:"iscsi,omitempty" description:"iSCSI disk attached to host machine on demand"`
|
||||
// Glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime
|
||||
Glusterfs *GlusterfsVolumeSource `json:"glusterfs" description:"Glusterfs volume that will be mounted on the host machine "`
|
||||
Glusterfs *GlusterfsVolumeSource `json:"glusterfs,omitempty" description:"Glusterfs volume that will be mounted on the host machine "`
|
||||
// PersistentVolumeClaimVolumeSource represents a reference to a PersistentVolumeClaim in the same namespace
|
||||
PersistentVolumeClaimVolumeSource *PersistentVolumeClaimVolumeSource `json:"persistentVolumeClaim,omitempty" description:"a reference to a PersistentVolumeClaim in the same namespace"`
|
||||
}
|
||||
@ -237,18 +237,18 @@ type PersistentVolumeClaimVolumeSource struct {
|
||||
type PersistentVolumeSource struct {
|
||||
// GCEPersistentDisk represents a GCE Disk resource that is attached to a
|
||||
// kubelet's host machine and then exposed to the pod.
|
||||
GCEPersistentDisk *GCEPersistentDiskVolumeSource `json:"gcePersistentDisk" description:"GCE disk resource provisioned by an admin"`
|
||||
GCEPersistentDisk *GCEPersistentDiskVolumeSource `json:"gcePersistentDisk,omitempty" description:"GCE disk resource provisioned by an admin"`
|
||||
// AWSElasticBlockStore represents an AWS Disk resource that is attached to a
|
||||
// kubelet's host machine and then exposed to the pod.
|
||||
AWSElasticBlockStore *AWSElasticBlockStoreVolumeSource `json:"awsElasticBlockStore" description:"AWS disk resource provisioned by an admin"`
|
||||
AWSElasticBlockStore *AWSElasticBlockStoreVolumeSource `json:"awsElasticBlockStore,omitempty" description:"AWS disk resource provisioned by an admin"`
|
||||
// HostPath represents a directory on the host.
|
||||
// This is useful for development and testing only.
|
||||
// on-host storage is not supported in any way.
|
||||
HostPath *HostPathVolumeSource `json:"hostPath" description:"a HostPath provisioned by a developer or tester; for develment use only"`
|
||||
HostPath *HostPathVolumeSource `json:"hostPath,omitempty" description:"a HostPath provisioned by a developer or tester; for develment use only"`
|
||||
// Glusterfs represents a Glusterfs volume that is attached to a host and exposed to the pod
|
||||
Glusterfs *GlusterfsVolumeSource `json:"glusterfs" description:"Glusterfs volume resource provisioned by an admin"`
|
||||
Glusterfs *GlusterfsVolumeSource `json:"glusterfs,omitempty" description:"Glusterfs volume resource provisioned by an admin"`
|
||||
// NFS represents an NFS mount on the host
|
||||
NFS *NFSVolumeSource `json:"nfs" description:"NFS volume resource provisioned by an admin"`
|
||||
NFS *NFSVolumeSource `json:"nfs,omitempty" description:"NFS volume resource provisioned by an admin"`
|
||||
}
|
||||
|
||||
type PersistentVolume struct {
|
||||
@ -366,7 +366,7 @@ type HostPathVolumeSource struct {
|
||||
type EmptyDirVolumeSource struct {
|
||||
// Optional: what type of storage medium should back this directory.
|
||||
// The default is "" which means to use the node's default medium.
|
||||
Medium StorageType `json:"medium" description:"type of storage used to back the volume; must be an empty string (default) or Memory"`
|
||||
Medium StorageType `json:"medium,omitempty" description:"type of storage used to back the volume; must be an empty string (default) or Memory"`
|
||||
}
|
||||
|
||||
// GlusterfsVolumeSource represents a Glusterfs Mount that lasts the lifetime of a pod
|
||||
@ -412,7 +412,7 @@ type GCEPersistentDiskVolumeSource struct {
|
||||
// Must be a filesystem type supported by the host operating system.
|
||||
// Ex. "ext4", "xfs", "ntfs"
|
||||
// TODO: how do we prevent errors in the filesystem from compromising the machine
|
||||
FSType string `json:"fsType,omitempty" description:"file system type to mount, such as ext4, xfs, ntfs"`
|
||||
FSType string `json:"fsType" description:"file system type to mount, such as ext4, xfs, ntfs"`
|
||||
// Optional: Partition on the disk to mount.
|
||||
// If omitted, kubelet will attempt to mount the device name.
|
||||
// Ex. For /dev/sda1, this field is "1", for /dev/sda, this field is 0 or empty.
|
||||
@ -434,8 +434,7 @@ type AWSElasticBlockStoreVolumeSource struct {
|
||||
// Must be a filesystem type supported by the host operating system.
|
||||
// Ex. "ext4", "xfs", "ntfs"
|
||||
// TODO: how do we prevent errors in the filesystem from compromising the machine
|
||||
// TODO: why omitempty if required?
|
||||
FSType string `json:"fsType,omitempty" description:"file system type to mount, such as ext4, xfs, ntfs"`
|
||||
FSType string `json:"fsType" description:"file system type to mount, such as ext4, xfs, ntfs"`
|
||||
// Optional: Partition on the disk to mount.
|
||||
// If omitted, kubelet will attempt to mount the device name.
|
||||
// Ex. For /dev/sda1, this field is "1", for /dev/sda, this field 0 or empty.
|
||||
@ -450,7 +449,7 @@ type GitRepoVolumeSource struct {
|
||||
// Repository URL
|
||||
Repository string `json:"repository" description:"repository URL"`
|
||||
// Commit hash, this is optional
|
||||
Revision string `json:"revision" description:"commit hash for the specified revision"`
|
||||
Revision string `json:"revision,omitempty" description:"commit hash for the specified revision"`
|
||||
}
|
||||
|
||||
// SecretVolumeSource adapts a Secret into a VolumeSource
|
||||
@ -478,16 +477,16 @@ type NFSVolumeSource struct {
|
||||
type ISCSIVolumeSource struct {
|
||||
// Required: iSCSI target portal
|
||||
// the portal is either an IP or ip_addr:port if port is other than default (typically TCP ports 860 and 3260)
|
||||
TargetPortal string `json:"targetPortal,omitempty" description:"iSCSI target portal"`
|
||||
TargetPortal string `json:"targetPortal" description:"iSCSI target portal"`
|
||||
// Required: target iSCSI Qualified Name
|
||||
IQN string `json:"iqn,omitempty" description:"iSCSI Qualified Name"`
|
||||
IQN string `json:"iqn" description:"iSCSI Qualified Name"`
|
||||
// Required: iSCSI target lun number
|
||||
Lun int `json:"lun,omitempty" description:"iscsi target lun number"`
|
||||
Lun int `json:"lun" description:"iscsi target lun number"`
|
||||
// Required: Filesystem type to mount.
|
||||
// Must be a filesystem type supported by the host operating system.
|
||||
// Ex. "ext4", "xfs", "ntfs"
|
||||
// TODO: how do we prevent errors in the filesystem from compromising the machine
|
||||
FSType string `json:"fsType,omitempty" description:"file system type to mount, such as ext4, xfs, ntfs"`
|
||||
FSType string `json:"fsType" description:"file system type to mount, such as ext4, xfs, ntfs"`
|
||||
// Optional: Defaults to false (read/write). ReadOnly here will force
|
||||
// the ReadOnly setting in VolumeMounts.
|
||||
ReadOnly bool `json:"readOnly,omitempty" description:"read-only if true, read-write otherwise (false or unspecified)"`
|
||||
@ -549,7 +548,7 @@ type HTTPGetAction struct {
|
||||
// Optional: Path to access on the HTTP server.
|
||||
Path string `json:"path,omitempty" description:"path to access on the HTTP server"`
|
||||
// Required: Name or number of the port to access on the container.
|
||||
Port util.IntOrString `json:"port,omitempty" description:"number or name of the port to access on the container"`
|
||||
Port util.IntOrString `json:"port" description:"number or name of the port to access on the container"`
|
||||
// Optional: Host name to connect to, defaults to the pod IP.
|
||||
Host string `json:"host,omitempty" description:"hostname to connect to; defaults to pod IP"`
|
||||
}
|
||||
@ -557,7 +556,7 @@ type HTTPGetAction struct {
|
||||
// TCPSocketAction describes an action based on opening a socket
|
||||
type TCPSocketAction struct {
|
||||
// Required: Port to connect to.
|
||||
Port util.IntOrString `json:"port,omitempty" description:"number of name of the port to access on the container"`
|
||||
Port util.IntOrString `json:"port" description:"number of name of the port to access on the container"`
|
||||
}
|
||||
|
||||
// ExecAction describes a "run in container" action.
|
||||
@ -643,7 +642,7 @@ type Container struct {
|
||||
// Deprecated - see SecurityContext. Optional: Default to false.
|
||||
Privileged bool `json:"privileged,omitempty" description:"whether or not the container is granted privileged status; defaults to false; cannot be updated; deprecated; See SecurityContext."`
|
||||
// Optional: Policy for pulling images for this container
|
||||
ImagePullPolicy PullPolicy `json:"imagePullPolicy" description:"image pull policy; one of PullAlways, PullNever, PullIfNotPresent; defaults to PullAlways if :latest tag is specified, or PullIfNotPresent otherwise; cannot be updated"`
|
||||
ImagePullPolicy PullPolicy `json:"imagePullPolicy,omitempty" description:"image pull policy; one of PullAlways, PullNever, PullIfNotPresent; defaults to PullAlways if :latest tag is specified, or PullIfNotPresent otherwise; cannot be updated"`
|
||||
// Deprecated - see SecurityContext. Optional: Capabilities for container.
|
||||
Capabilities Capabilities `json:"capabilities,omitempty" description:"capabilities for container; cannot be updated; deprecated; See SecurityContext."`
|
||||
// Optional: SecurityContext defines the security options the pod should be run with
|
||||
@ -802,7 +801,7 @@ const (
|
||||
|
||||
// PodSpec is a description of a pod
|
||||
type PodSpec struct {
|
||||
Volumes []Volume `json:"volumes" description:"list of volumes that can be mounted by containers belonging to the pod" patchStrategy:"merge" patchMergeKey:"name"`
|
||||
Volumes []Volume `json:"volumes,omitempty" description:"list of volumes that can be mounted by containers belonging to the pod" patchStrategy:"merge" patchMergeKey:"name"`
|
||||
// Required: there must be at least one container in a pod.
|
||||
Containers []Container `json:"containers" description:"list of containers belonging to the pod; cannot be updated; containers cannot currently be added or removed; there must be at least one container in a Pod" patchStrategy:"merge" patchMergeKey:"name"`
|
||||
RestartPolicy RestartPolicy `json:"restartPolicy,omitempty" description:"restart policy for all containers within the pod; one of RestartPolicyAlways, RestartPolicyOnFailure, RestartPolicyNever"`
|
||||
@ -910,7 +909,7 @@ type PodTemplateList struct {
|
||||
// ReplicationControllerSpec is the specification of a replication controller.
|
||||
type ReplicationControllerSpec struct {
|
||||
// Replicas is the number of desired replicas.
|
||||
Replicas int `json:"replicas" description:"number of replicas desired"`
|
||||
Replicas int `json:"replicas,omitempty" description:"number of replicas desired"`
|
||||
|
||||
// Selector is a label query over pods that should match the Replicas count.
|
||||
// If Selector is empty, it is defaulted to the labels present on the Pod template.
|
||||
@ -975,7 +974,7 @@ type ServiceSpec struct {
|
||||
Ports []ServicePort `json:"ports" description:"ports exposed by the service"`
|
||||
|
||||
// This service will route traffic to pods having labels matching this selector. If null, no endpoints will be automatically created. If empty, all pods will be selected.
|
||||
Selector map[string]string `json:"selector" description:"label keys and values that must match in order to receive traffic for this service; if empty, all pods are selected, if not specified, endpoints must be manually specified"`
|
||||
Selector map[string]string `json:"selector,omitempty" description:"label keys and values that must match in order to receive traffic for this service; if empty, all pods are selected, if not specified, endpoints must be manually specified"`
|
||||
|
||||
// PortalIP is usually assigned by the master. If specified by the user
|
||||
// we will try to respect it or else fail the request. This field can
|
||||
@ -1000,11 +999,11 @@ type ServicePort struct {
|
||||
// name of this port within the service. This must be a DNS_LABEL.
|
||||
// All ports within a ServiceSpec must have unique names. This maps to
|
||||
// the 'Name' field in EndpointPort objects.
|
||||
Name string `json:"name" description:"the name of this port; optional if only one port is defined"`
|
||||
Name string `json:"name,omitempty" description:"the name of this port; optional if only one port is defined"`
|
||||
|
||||
// Optional: The IP protocol for this port. Supports "TCP" and "UDP",
|
||||
// default is TCP.
|
||||
Protocol Protocol `json:"protocol" description:"the protocol used by this port; must be UDP or TCP; TCP if unspecified"`
|
||||
Protocol Protocol `json:"protocol,omitempty" description:"the protocol used by this port; must be UDP or TCP; TCP if unspecified"`
|
||||
|
||||
// Required: The port that will be exposed by this service.
|
||||
Port int `json:"port" description:"the port number that is exposed"`
|
||||
@ -1013,7 +1012,7 @@ type ServicePort struct {
|
||||
// If this is a string, it will be looked up as a named port in the
|
||||
// target Pod's container ports. If this is not specified, the value
|
||||
// of Port is used (an identity map).
|
||||
TargetPort util.IntOrString `json:"targetPort" description:"the port to access on the pods targeted by the service; defaults to the service port"`
|
||||
TargetPort util.IntOrString `json:"targetPort,omitempty" description:"the port to access on the pods targeted by the service; defaults to the service port"`
|
||||
}
|
||||
|
||||
// Service is a named abstraction of software service (for example, mysql) consisting of local port
|
||||
@ -1053,7 +1052,7 @@ type ServiceAccount struct {
|
||||
ObjectMeta `json:"metadata,omitempty" description:"standard object metadata; see http://docs.k8s.io/api-conventions.md#metadata"`
|
||||
|
||||
// Secrets is the list of secrets allowed to be used by pods running using this ServiceAccount
|
||||
Secrets []ObjectReference `json:"secrets" description:"list of secrets that can be used by pods running as this service account" patchStrategy:"merge" patchMergeKey:"name"`
|
||||
Secrets []ObjectReference `json:"secrets,omitempty" description:"list of secrets that can be used by pods running as this service account" patchStrategy:"merge" patchMergeKey:"name"`
|
||||
}
|
||||
|
||||
// ServiceAccountList is a list of ServiceAccount objects
|
||||
@ -1324,7 +1323,7 @@ type DeleteOptions struct {
|
||||
// Optional duration in seconds before the object should be deleted. Value must be non-negative integer.
|
||||
// The value zero indicates delete immediately. If this value is nil, the default grace period for the
|
||||
// specified type will be used.
|
||||
GracePeriodSeconds *int64 `json:"gracePeriodSeconds" description:"the duration in seconds to wait before deleting this object; defaults to a per object value if not specified; zero means delete immediately"`
|
||||
GracePeriodSeconds *int64 `json:"gracePeriodSeconds,omitempty" description:"the duration in seconds to wait before deleting this object; defaults to a per object value if not specified; zero means delete immediately"`
|
||||
}
|
||||
|
||||
// ListOptions is the query options to a standard REST list call
|
||||
@ -1332,13 +1331,13 @@ type ListOptions struct {
|
||||
TypeMeta `json:",inline"`
|
||||
|
||||
// A selector based on labels
|
||||
LabelSelector string `json:"labelSelector" description:"a selector to restrict the list of returned objects by their labels; defaults to everything"`
|
||||
LabelSelector string `json:"labelSelector,omitempty" description:"a selector to restrict the list of returned objects by their labels; defaults to everything"`
|
||||
// A selector based on fields
|
||||
FieldSelector string `json:"fieldSelector" description:"a selector to restrict the list of returned objects by their fields; defaults to everything"`
|
||||
FieldSelector string `json:"fieldSelector,omitempty" description:"a selector to restrict the list of returned objects by their fields; defaults to everything"`
|
||||
// If true, watch for changes to the selected resources
|
||||
Watch bool `json:"watch" description:"watch for changes to the described resources and return them as a stream of add, update, and remove notifications; specify resourceVersion"`
|
||||
Watch bool `json:"watch,omitempty" description:"watch for changes to the described resources and return them as a stream of add, update, and remove notifications; specify resourceVersion"`
|
||||
// The desired resource version to watch
|
||||
ResourceVersion string `json:"resourceVersion" description:"when specified with a watch call, shows changes that occur after that particular version of a resource; defaults to changes from the beginning of history"`
|
||||
ResourceVersion string `json:"resourceVersion,omitempty" description:"when specified with a watch call, shows changes that occur after that particular version of a resource; defaults to changes from the beginning of history"`
|
||||
}
|
||||
|
||||
// PodLogOptions is the query options for a Pod's logs REST call
|
||||
@ -1579,7 +1578,7 @@ type Event struct {
|
||||
ObjectMeta `json:"metadata" description:"standard object metadata; see http://docs.k8s.io/api-conventions.md#metadata"`
|
||||
|
||||
// Required. The object that this event is about.
|
||||
InvolvedObject ObjectReference `json:"involvedObject,omitempty" description:"object this event is about"`
|
||||
InvolvedObject ObjectReference `json:"involvedObject" description:"object this event is about"`
|
||||
|
||||
// Optional; this should be a short, machine understandable string that gives the reason
|
||||
// for this event being generated.
|
||||
|
Loading…
Reference in New Issue
Block a user