Remove unused YAML tags and GetYAML/SetYAML methods
Unneeded after move to ghodss/yaml.
This commit is contained in:
420
pkg/api/types.go
420
pkg/api/types.go
@@ -51,25 +51,25 @@ import (
|
||||
type TypeMeta struct {
|
||||
// Kind is a string value representing the REST resource this object represents.
|
||||
// Servers may infer this from the endpoint the client submits requests to.
|
||||
Kind string `json:"kind,omitempty" yaml:"kind,omitempty"`
|
||||
Kind string `json:"kind,omitempty"`
|
||||
|
||||
// APIVersion defines the versioned schema of this representation of an object.
|
||||
// Servers should convert recognized schemas to the latest internal value, and
|
||||
// may reject unrecognized values.
|
||||
APIVersion string `json:"apiVersion,omitempty" yaml:"apiVersion,omitempty"`
|
||||
APIVersion string `json:"apiVersion,omitempty"`
|
||||
}
|
||||
|
||||
// ListMeta describes metadata that synthetic resources must have, including lists and
|
||||
// various status objects. A resource may have only one of {ObjectMeta, ListMeta}.
|
||||
type ListMeta struct {
|
||||
// SelfLink is a URL representing this object.
|
||||
SelfLink string `json:"selfLink,omitempty" yaml:"selfLink,omitempty"`
|
||||
SelfLink string `json:"selfLink,omitempty"`
|
||||
|
||||
// An opaque value that represents the version of this response for use with optimistic
|
||||
// concurrency and change monitoring endpoints. Clients must treat these values as opaque
|
||||
// and values may only be valid for a particular resource or set of resources. Only servers
|
||||
// will generate resource versions.
|
||||
ResourceVersion string `json:"resourceVersion,omitempty" yaml:"resourceVersion,omitempty"`
|
||||
ResourceVersion string `json:"resourceVersion,omitempty"`
|
||||
}
|
||||
|
||||
// ObjectMeta is metadata that all persisted resources must have, which includes all objects
|
||||
@@ -79,32 +79,32 @@ type ObjectMeta struct {
|
||||
// some resources may allow a client to request the generation of an appropriate name
|
||||
// automatically. Name is primarily intended for creation idempotence and configuration
|
||||
// definition.
|
||||
Name string `json:"name,omitempty" yaml:"name,omitempty"`
|
||||
Name string `json:"name,omitempty"`
|
||||
|
||||
// Namespace defines the space within which name must be unique. An empty namespace is
|
||||
// equivalent to the "default" namespace, but "default" is the canonical representation.
|
||||
// Not all objects are required to be scoped to a namespace - the value of this field for
|
||||
// those objects will be empty.
|
||||
Namespace string `json:"namespace,omitempty" yaml:"namespace,omitempty"`
|
||||
Namespace string `json:"namespace,omitempty"`
|
||||
|
||||
// SelfLink is a URL representing this object.
|
||||
SelfLink string `json:"selfLink,omitempty" yaml:"selfLink,omitempty"`
|
||||
SelfLink string `json:"selfLink,omitempty"`
|
||||
|
||||
// UID is the unique in time and space value for this object. It is typically generated by
|
||||
// the server on successful creation of a resource and is not allowed to change on PUT
|
||||
// operations.
|
||||
UID string `json:"uid,omitempty" yaml:"uid,omitempty"`
|
||||
UID string `json:"uid,omitempty"`
|
||||
|
||||
// An opaque value that represents the version of this resource. May be used for optimistic
|
||||
// concurrency, change detection, and the watch operation on a resource or set of resources.
|
||||
// Clients must treat these values as opaque and values may only be valid for a particular
|
||||
// resource or set of resources. Only servers will generate resource versions.
|
||||
ResourceVersion string `json:"resourceVersion,omitempty" yaml:"resourceVersion,omitempty"`
|
||||
ResourceVersion string `json:"resourceVersion,omitempty"`
|
||||
|
||||
// CreationTimestamp is a timestamp representing the server time when this object was
|
||||
// created. It is not guaranteed to be set in happens-before order across separate operations.
|
||||
// Clients may not set this value. It is represented in RFC3339 form and is in UTC.
|
||||
CreationTimestamp util.Time `json:"creationTimestamp,omitempty" yaml:"creationTimestamp,omitempty"`
|
||||
CreationTimestamp util.Time `json:"creationTimestamp,omitempty"`
|
||||
|
||||
// Labels are key value pairs that may be used to scope and select individual resources.
|
||||
// Label keys are of the form:
|
||||
@@ -116,13 +116,13 @@ type ObjectMeta struct {
|
||||
// to the user. Other system components that wish to use labels must specify a prefix. The
|
||||
// "kubernetes.io/" prefix is reserved for use by kubernetes components.
|
||||
// TODO: replace map[string]string with labels.LabelSet type
|
||||
Labels map[string]string `json:"labels,omitempty" yaml:"labels,omitempty"`
|
||||
Labels map[string]string `json:"labels,omitempty"`
|
||||
|
||||
// Annotations are unstructured key value data stored with a resource that may be set by
|
||||
// external tooling. They are not queryable and should be preserved when modifying
|
||||
// objects. Annotation keys have the same formatting restrictions as Label keys. See the
|
||||
// comments on Labels for details.
|
||||
Annotations map[string]string `json:"annotations,omitempty" yaml:"annotations,omitempty"`
|
||||
Annotations map[string]string `json:"annotations,omitempty"`
|
||||
}
|
||||
|
||||
const (
|
||||
@@ -138,11 +138,11 @@ const (
|
||||
type Volume struct {
|
||||
// Required: This must be a DNS_LABEL. Each volume in a pod must have
|
||||
// a unique name.
|
||||
Name string `json:"name" yaml:"name"`
|
||||
Name string `json:"name"`
|
||||
// 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.
|
||||
Source *VolumeSource `json:"source" yaml:"source"`
|
||||
Source *VolumeSource `json:"source"`
|
||||
}
|
||||
|
||||
// VolumeSource represents the source location of a valume to mount.
|
||||
@@ -153,19 +153,19 @@ type VolumeSource struct {
|
||||
// things that are allowed 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.
|
||||
HostDir *HostDir `json:"hostDir" yaml:"hostDir"`
|
||||
HostDir *HostDir `json:"hostDir"`
|
||||
// EmptyDir represents a temporary directory that shares a pod's lifetime.
|
||||
EmptyDir *EmptyDir `json:"emptyDir" yaml:"emptyDir"`
|
||||
EmptyDir *EmptyDir `json:"emptyDir"`
|
||||
// GCEPersistentDisk represents a GCE Disk resource that is attached to a
|
||||
// kubelet's host machine and then exposed to the pod.
|
||||
GCEPersistentDisk *GCEPersistentDisk `json:"persistentDisk" yaml:"persistentDisk"`
|
||||
GCEPersistentDisk *GCEPersistentDisk `json:"persistentDisk"`
|
||||
// GitRepo represents a git repository at a particular revision.
|
||||
GitRepo *GitRepo `json:"gitRepo" yaml:"gitRepo"`
|
||||
GitRepo *GitRepo `json:"gitRepo"`
|
||||
}
|
||||
|
||||
// HostDir represents bare host directory volume.
|
||||
type HostDir struct {
|
||||
Path string `json:"path" yaml:"path"`
|
||||
Path string `json:"path"`
|
||||
}
|
||||
|
||||
type EmptyDir struct{}
|
||||
@@ -187,27 +187,27 @@ const (
|
||||
// A GCE PD can only be mounted as read/write once.
|
||||
type GCEPersistentDisk struct {
|
||||
// Unique name of the PD resource. Used to identify the disk in GCE
|
||||
PDName string `yaml:"pdName" json:"pdName"`
|
||||
PDName string `json:"pdName"`
|
||||
// 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 `yaml:"fsType,omitempty" json:"fsType,omitempty"`
|
||||
FSType string `json:"fsType,omitempty"`
|
||||
// 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.
|
||||
Partition int `yaml:"partition,omitempty" json:"partition,omitempty"`
|
||||
Partition int `json:"partition,omitempty"`
|
||||
// Optional: Defaults to false (read/write). ReadOnly here will force
|
||||
// the ReadOnly setting in VolumeMounts.
|
||||
ReadOnly bool `yaml:"readOnly,omitempty" json:"readOnly,omitempty"`
|
||||
ReadOnly bool `json:"readOnly,omitempty"`
|
||||
}
|
||||
|
||||
// GitRepo represents a volume that is pulled from git when the pod is created.
|
||||
type GitRepo struct {
|
||||
// Repository URL
|
||||
Repository string `yaml:"repository" json:"repository"`
|
||||
Repository string `json:"repository"`
|
||||
// Commit hash, this is optional
|
||||
Revision string `yaml:"revision" json:"revision"`
|
||||
Revision string `json:"revision"`
|
||||
// TODO: Consider credentials here.
|
||||
}
|
||||
|
||||
@@ -215,49 +215,49 @@ type GitRepo struct {
|
||||
type Port struct {
|
||||
// Optional: If specified, this must be a DNS_LABEL. Each named port
|
||||
// in a pod must have a unique name.
|
||||
Name string `json:"name,omitempty" yaml:"name,omitempty"`
|
||||
Name string `json:"name,omitempty"`
|
||||
// Optional: If specified, this must be a valid port number, 0 < x < 65536.
|
||||
HostPort int `json:"hostPort,omitempty" yaml:"hostPort,omitempty"`
|
||||
HostPort int `json:"hostPort,omitempty"`
|
||||
// Required: This must be a valid port number, 0 < x < 65536.
|
||||
ContainerPort int `json:"containerPort" yaml:"containerPort"`
|
||||
ContainerPort int `json:"containerPort"`
|
||||
// Optional: Supports "TCP" and "UDP". Defaults to "TCP".
|
||||
Protocol Protocol `json:"protocol,omitempty" yaml:"protocol,omitempty"`
|
||||
Protocol Protocol `json:"protocol,omitempty"`
|
||||
// Optional: What host IP to bind the external port to.
|
||||
HostIP string `json:"hostIP,omitempty" yaml:"hostIP,omitempty"`
|
||||
HostIP string `json:"hostIP,omitempty"`
|
||||
}
|
||||
|
||||
// VolumeMount describes a mounting of a Volume within a container.
|
||||
type VolumeMount struct {
|
||||
// Required: This must match the Name of a Volume [above].
|
||||
Name string `json:"name" yaml:"name"`
|
||||
Name string `json:"name"`
|
||||
// Optional: Defaults to false (read-write).
|
||||
ReadOnly bool `json:"readOnly,omitempty" yaml:"readOnly,omitempty"`
|
||||
ReadOnly bool `json:"readOnly,omitempty"`
|
||||
// Required.
|
||||
MountPath string `json:"mountPath,omitempty" yaml:"mountPath,omitempty"`
|
||||
MountPath string `json:"mountPath,omitempty"`
|
||||
}
|
||||
|
||||
// EnvVar represents an environment variable present in a Container.
|
||||
type EnvVar struct {
|
||||
// Required: This must be a C_IDENTIFIER.
|
||||
Name string `json:"name" yaml:"name"`
|
||||
Name string `json:"name"`
|
||||
// Optional: defaults to "".
|
||||
Value string `json:"value,omitempty" yaml:"value,omitempty"`
|
||||
Value string `json:"value,omitempty"`
|
||||
}
|
||||
|
||||
// HTTPGetAction describes an action based on HTTP Get requests.
|
||||
type HTTPGetAction struct {
|
||||
// Optional: Path to access on the HTTP server.
|
||||
Path string `json:"path,omitempty" yaml:"path,omitempty"`
|
||||
Path string `json:"path,omitempty"`
|
||||
// Required: Name or number of the port to access on the container.
|
||||
Port util.IntOrString `json:"port,omitempty" yaml:"port,omitempty"`
|
||||
Port util.IntOrString `json:"port,omitempty"`
|
||||
// Optional: Host name to connect to, defaults to the pod IP.
|
||||
Host string `json:"host,omitempty" yaml:"host,omitempty"`
|
||||
Host string `json:"host,omitempty"`
|
||||
}
|
||||
|
||||
// TCPSocketAction describes an action based on opening a socket
|
||||
type TCPSocketAction struct {
|
||||
// Required: Port to connect to.
|
||||
Port util.IntOrString `json:"port,omitempty" yaml:"port,omitempty"`
|
||||
Port util.IntOrString `json:"port,omitempty"`
|
||||
}
|
||||
|
||||
// ExecAction describes a "run in container" action.
|
||||
@@ -266,20 +266,20 @@ type ExecAction struct {
|
||||
// command is root ('/') in the container's filesystem. The command is simply exec'd, it is
|
||||
// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
|
||||
// a shell, you need to explicitly call out to that shell.
|
||||
Command []string `yaml:"command,omitempty" json:"command,omitempty"`
|
||||
Command []string `json:"command,omitempty"`
|
||||
}
|
||||
|
||||
// LivenessProbe describes a liveness probe to be examined to the container.
|
||||
// TODO: pass structured data to the actions, and document that data here.
|
||||
type LivenessProbe struct {
|
||||
// HTTPGetProbe parameters, required if Type == 'http'
|
||||
HTTPGet *HTTPGetAction `yaml:"httpGet,omitempty" json:"httpGet,omitempty"`
|
||||
HTTPGet *HTTPGetAction `json:"httpGet,omitempty"`
|
||||
// TCPSocketProbe parameter, required if Type == 'tcp'
|
||||
TCPSocket *TCPSocketAction `yaml:"tcpSocket,omitempty" json:"tcpSocket,omitempty"`
|
||||
TCPSocket *TCPSocketAction `json:"tcpSocket,omitempty"`
|
||||
// ExecProbe parameter, required if Type == 'exec'
|
||||
Exec *ExecAction `yaml:"exec,omitempty" json:"exec,omitempty"`
|
||||
Exec *ExecAction `json:"exec,omitempty"`
|
||||
// Length of time before health checking is activated. In seconds.
|
||||
InitialDelaySeconds int64 `yaml:"initialDelaySeconds,omitempty" json:"initialDelaySeconds,omitempty"`
|
||||
InitialDelaySeconds int64 `json:"initialDelaySeconds,omitempty"`
|
||||
}
|
||||
|
||||
// PullPolicy describes a policy for if/when to pull a container image
|
||||
@@ -298,28 +298,28 @@ const (
|
||||
type Container struct {
|
||||
// Required: This must be a DNS_LABEL. Each container in a pod must
|
||||
// have a unique name.
|
||||
Name string `json:"name" yaml:"name"`
|
||||
Name string `json:"name"`
|
||||
// Required.
|
||||
Image string `json:"image" yaml:"image"`
|
||||
Image string `json:"image"`
|
||||
// Optional: Defaults to whatever is defined in the image.
|
||||
Command []string `json:"command,omitempty" yaml:"command,omitempty"`
|
||||
Command []string `json:"command,omitempty"`
|
||||
// Optional: Defaults to Docker's default.
|
||||
WorkingDir string `json:"workingDir,omitempty" yaml:"workingDir,omitempty"`
|
||||
Ports []Port `json:"ports,omitempty" yaml:"ports,omitempty"`
|
||||
Env []EnvVar `json:"env,omitempty" yaml:"env,omitempty"`
|
||||
WorkingDir string `json:"workingDir,omitempty"`
|
||||
Ports []Port `json:"ports,omitempty"`
|
||||
Env []EnvVar `json:"env,omitempty"`
|
||||
// Optional: Defaults to unlimited.
|
||||
Memory int `json:"memory,omitempty" yaml:"memory,omitempty"`
|
||||
Memory int `json:"memory,omitempty"`
|
||||
// Optional: Defaults to unlimited.
|
||||
CPU int `json:"cpu,omitempty" yaml:"cpu,omitempty"`
|
||||
VolumeMounts []VolumeMount `json:"volumeMounts,omitempty" yaml:"volumeMounts,omitempty"`
|
||||
LivenessProbe *LivenessProbe `json:"livenessProbe,omitempty" yaml:"livenessProbe,omitempty"`
|
||||
Lifecycle *Lifecycle `json:"lifecycle,omitempty" yaml:"lifecycle,omitempty"`
|
||||
CPU int `json:"cpu,omitempty"`
|
||||
VolumeMounts []VolumeMount `json:"volumeMounts,omitempty"`
|
||||
LivenessProbe *LivenessProbe `json:"livenessProbe,omitempty"`
|
||||
Lifecycle *Lifecycle `json:"lifecycle,omitempty"`
|
||||
// Optional: Defaults to /dev/termination-log
|
||||
TerminationMessagePath string `json:"terminationMessagePath,omitempty" yaml:"terminationMessagePath,omitempty"`
|
||||
TerminationMessagePath string `json:"terminationMessagePath,omitempty"`
|
||||
// Optional: Default to false.
|
||||
Privileged bool `json:"privileged,omitempty" yaml:"privileged,omitempty"`
|
||||
Privileged bool `json:"privileged,omitempty"`
|
||||
// Optional: Policy for pulling images for this container
|
||||
ImagePullPolicy PullPolicy `json:"imagePullPolicy" yaml:"imagePullPolicy"`
|
||||
ImagePullPolicy PullPolicy `json:"imagePullPolicy"`
|
||||
}
|
||||
|
||||
// Handler defines a specific action that should be taken
|
||||
@@ -327,9 +327,9 @@ type Container struct {
|
||||
type Handler struct {
|
||||
// One and only one of the following should be specified.
|
||||
// Exec specifies the action to take.
|
||||
Exec *ExecAction `json:"exec,omitempty" yaml:"exec,omitempty"`
|
||||
Exec *ExecAction `json:"exec,omitempty"`
|
||||
// HTTPGet specifies the http request to perform.
|
||||
HTTPGet *HTTPGetAction `json:"httpGet,omitempty" yaml:"httpGet,omitempty"`
|
||||
HTTPGet *HTTPGetAction `json:"httpGet,omitempty"`
|
||||
}
|
||||
|
||||
// Lifecycle describes actions that the management system should take in response to container lifecycle
|
||||
@@ -338,10 +338,10 @@ type Handler struct {
|
||||
type Lifecycle struct {
|
||||
// PostStart is called immediately after a container is created. If the handler fails, the container
|
||||
// is terminated and restarted.
|
||||
PostStart *Handler `json:"postStart,omitempty" yaml:"postStart,omitempty"`
|
||||
PostStart *Handler `json:"postStart,omitempty"`
|
||||
// PreStop is called immediately before a container is terminated. The reason for termination is
|
||||
// passed to the handler. Regardless of the outcome of the handler, the container is eventually terminated.
|
||||
PreStop *Handler `yaml:"preStop,omitempty" json:"preStop,omitempty"`
|
||||
PreStop *Handler `json:"preStop,omitempty"`
|
||||
}
|
||||
|
||||
// The below types are used by kube_client and api_server.
|
||||
@@ -368,43 +368,43 @@ const (
|
||||
|
||||
type ContainerStateWaiting struct {
|
||||
// Reason could be pulling image,
|
||||
Reason string `json:"reason,omitempty" yaml:"reason,omitempty"`
|
||||
Reason string `json:"reason,omitempty"`
|
||||
}
|
||||
|
||||
type ContainerStateRunning struct {
|
||||
StartedAt time.Time `json:"startedAt,omitempty" yaml:"startedAt,omitempty"`
|
||||
StartedAt time.Time `json:"startedAt,omitempty"`
|
||||
}
|
||||
|
||||
type ContainerStateTerminated struct {
|
||||
ExitCode int `json:"exitCode" yaml:"exitCode"`
|
||||
Signal int `json:"signal,omitempty" yaml:"signal,omitempty"`
|
||||
Reason string `json:"reason,omitempty" yaml:"reason,omitempty"`
|
||||
Message string `json:"message,omitempty" yaml:"message,omitempty"`
|
||||
StartedAt time.Time `json:"startedAt,omitempty" yaml:"startedAt,omitempty"`
|
||||
FinishedAt time.Time `json:"finishedAt,omitempty" yaml:"finishedAt,omitempty"`
|
||||
ExitCode int `json:"exitCode"`
|
||||
Signal int `json:"signal,omitempty"`
|
||||
Reason string `json:"reason,omitempty"`
|
||||
Message string `json:"message,omitempty"`
|
||||
StartedAt time.Time `json:"startedAt,omitempty"`
|
||||
FinishedAt time.Time `json:"finishedAt,omitempty"`
|
||||
}
|
||||
|
||||
// ContainerState holds a possible state of container.
|
||||
// Only one of its members may be specified.
|
||||
// If none of them is specified, the default one is ContainerStateWaiting.
|
||||
type ContainerState struct {
|
||||
Waiting *ContainerStateWaiting `json:"waiting,omitempty" yaml:"waiting,omitempty"`
|
||||
Running *ContainerStateRunning `json:"running,omitempty" yaml:"running,omitempty"`
|
||||
Termination *ContainerStateTerminated `json:"termination,omitempty" yaml:"termination,omitempty"`
|
||||
Waiting *ContainerStateWaiting `json:"waiting,omitempty"`
|
||||
Running *ContainerStateRunning `json:"running,omitempty"`
|
||||
Termination *ContainerStateTerminated `json:"termination,omitempty"`
|
||||
}
|
||||
|
||||
type ContainerStatus struct {
|
||||
// TODO(dchen1107): Should we rename PodStatus to a more generic name or have a separate states
|
||||
// defined for container?
|
||||
State ContainerState `json:"state,omitempty" yaml:"state,omitempty"`
|
||||
State ContainerState `json:"state,omitempty"`
|
||||
// Note that this is calculated from dead containers. But those containers are subject to
|
||||
// garbage collection. This value will get capped at 5 by GC.
|
||||
RestartCount int `json:"restartCount" yaml:"restartCount"`
|
||||
RestartCount int `json:"restartCount"`
|
||||
// TODO(dchen1107): Deprecated this soon once we pull entire PodStatus from node,
|
||||
// not just PodInfo. Now we need this to remove docker.Container from API
|
||||
PodIP string `json:"podIP,omitempty" yaml:"podIP,omitempty"`
|
||||
PodIP string `json:"podIP,omitempty"`
|
||||
// TODO(dchen1107): Need to decide how to represent this in v1beta3
|
||||
Image string `yaml:"image" json:"image"`
|
||||
Image string `json:"image"`
|
||||
}
|
||||
|
||||
// PodInfo contains one entry for every container with available info.
|
||||
@@ -423,20 +423,20 @@ type RestartPolicyNever struct{}
|
||||
// If none of the following policies is specified, the default one
|
||||
// is RestartPolicyAlways.
|
||||
type RestartPolicy struct {
|
||||
Always *RestartPolicyAlways `json:"always,omitempty" yaml:"always,omitempty"`
|
||||
OnFailure *RestartPolicyOnFailure `json:"onFailure,omitempty" yaml:"onFailure,omitempty"`
|
||||
Never *RestartPolicyNever `json:"never,omitempty" yaml:"never,omitempty"`
|
||||
Always *RestartPolicyAlways `json:"always,omitempty"`
|
||||
OnFailure *RestartPolicyOnFailure `json:"onFailure,omitempty"`
|
||||
Never *RestartPolicyNever `json:"never,omitempty"`
|
||||
}
|
||||
|
||||
// PodState is the state of a pod, used as either input (desired state) or output (current state).
|
||||
type PodState struct {
|
||||
Manifest ContainerManifest `json:"manifest,omitempty" yaml:"manifest,omitempty"`
|
||||
Status PodPhase `json:"status,omitempty" yaml:"status,omitempty"`
|
||||
Manifest ContainerManifest `json:"manifest,omitempty"`
|
||||
Status PodPhase `json:"status,omitempty"`
|
||||
// A human readable message indicating details about why the pod is in this state.
|
||||
Message string `json:"message,omitempty" yaml:"message,omitempty"`
|
||||
Host string `json:"host,omitempty" yaml:"host,omitempty"`
|
||||
HostIP string `json:"hostIP,omitempty" yaml:"hostIP,omitempty"`
|
||||
PodIP string `json:"podIP,omitempty" yaml:"podIP,omitempty"`
|
||||
Message string `json:"message,omitempty"`
|
||||
Host string `json:"host,omitempty"`
|
||||
HostIP string `json:"hostIP,omitempty"`
|
||||
PodIP string `json:"podIP,omitempty"`
|
||||
|
||||
// The key of this map is the *name* of the container within the manifest; it has one
|
||||
// entry per container in the manifest. The value of this map is currently the output
|
||||
@@ -444,36 +444,36 @@ type PodState struct {
|
||||
// upon.
|
||||
// TODO: Make real decisions about what our info should look like. Re-enable fuzz test
|
||||
// when we have done this.
|
||||
Info PodInfo `json:"info,omitempty" yaml:"info,omitempty"`
|
||||
Info PodInfo `json:"info,omitempty"`
|
||||
}
|
||||
|
||||
// PodList is a list of Pods.
|
||||
type PodList struct {
|
||||
TypeMeta `json:",inline" yaml:",inline"`
|
||||
ListMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
|
||||
TypeMeta `json:",inline"`
|
||||
ListMeta `json:"metadata,omitempty"`
|
||||
|
||||
Items []Pod `json:"items" yaml:"items"`
|
||||
Items []Pod `json:"items"`
|
||||
}
|
||||
|
||||
// PodSpec is a description of a pod
|
||||
type PodSpec struct {
|
||||
Volumes []Volume `json:"volumes" yaml:"volumes"`
|
||||
Containers []Container `json:"containers" yaml:"containers"`
|
||||
RestartPolicy RestartPolicy `json:"restartPolicy,omitempty" yaml:"restartPolicy,omitempty"`
|
||||
Volumes []Volume `json:"volumes"`
|
||||
Containers []Container `json:"containers"`
|
||||
RestartPolicy RestartPolicy `json:"restartPolicy,omitempty"`
|
||||
// NodeSelector is a selector which must be true for the pod to fit on a node
|
||||
NodeSelector map[string]string `json:"nodeSelector,omitempty" yaml:"nodeSelector,omitempty"`
|
||||
NodeSelector map[string]string `json:"nodeSelector,omitempty"`
|
||||
}
|
||||
|
||||
// PodStatus represents information about the status of a pod. Status may trail the actual
|
||||
// state of a system.
|
||||
type PodStatus struct {
|
||||
Phase PodPhase `json:"phase,omitempty" yaml:"phase,omitempty"`
|
||||
Phase PodPhase `json:"phase,omitempty"`
|
||||
|
||||
// Host is the name of the node that this Pod is currently bound to, or empty if no
|
||||
// assignment has been done.
|
||||
Host string `json:"host,omitempty" yaml:"host,omitempty"`
|
||||
HostIP string `json:"hostIP,omitempty" yaml:"hostIP,omitempty"`
|
||||
PodIP string `json:"podIP,omitempty" yaml:"podIP,omitempty"`
|
||||
Host string `json:"host,omitempty"`
|
||||
HostIP string `json:"hostIP,omitempty"`
|
||||
PodIP string `json:"podIP,omitempty"`
|
||||
|
||||
// The key of this map is the *name* of the container within the manifest; it has one
|
||||
// entry per container in the manifest. The value of this map is currently the output
|
||||
@@ -481,46 +481,46 @@ type PodStatus struct {
|
||||
// upon.
|
||||
// TODO: Make real decisions about what our info should look like. Re-enable fuzz test
|
||||
// when we have done this.
|
||||
Info PodInfo `json:"info,omitempty" yaml:"info,omitempty"`
|
||||
Info PodInfo `json:"info,omitempty"`
|
||||
}
|
||||
|
||||
// Pod is a collection of containers, used as either input (create, update) or as output (list, get).
|
||||
type Pod struct {
|
||||
TypeMeta `json:",inline" yaml:",inline"`
|
||||
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
|
||||
TypeMeta `json:",inline"`
|
||||
ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
// Spec defines the behavior of a pod.
|
||||
Spec PodSpec `json:"spec,omitempty" yaml:"spec,omitempty"`
|
||||
Spec PodSpec `json:"spec,omitempty"`
|
||||
|
||||
// Status represents the current information about a pod. This data may not be up
|
||||
// to date.
|
||||
Status PodStatus `json:"status,omitempty" yaml:"status,omitempty"`
|
||||
Status PodStatus `json:"status,omitempty"`
|
||||
}
|
||||
|
||||
// PodTemplateSpec describes the data a pod should have when created from a template
|
||||
type PodTemplateSpec struct {
|
||||
// Metadata of the pods created from this template.
|
||||
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
|
||||
ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
// Spec defines the behavior of a pod.
|
||||
Spec PodSpec `json:"spec,omitempty" yaml:"spec,omitempty"`
|
||||
Spec PodSpec `json:"spec,omitempty"`
|
||||
}
|
||||
|
||||
// PodTemplate describes a template for creating copies of a predefined pod.
|
||||
type PodTemplate struct {
|
||||
TypeMeta `json:",inline" yaml:",inline"`
|
||||
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
|
||||
TypeMeta `json:",inline"`
|
||||
ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
// Spec defines the pods that will be created from this template
|
||||
Spec PodTemplateSpec `json:"spec,omitempty" yaml:"spec,omitempty"`
|
||||
Spec PodTemplateSpec `json:"spec,omitempty"`
|
||||
}
|
||||
|
||||
// PodTemplateList is a list of PodTemplates.
|
||||
type PodTemplateList struct {
|
||||
TypeMeta `json:",inline" yaml:",inline"`
|
||||
ListMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
|
||||
TypeMeta `json:",inline"`
|
||||
ListMeta `json:"metadata,omitempty"`
|
||||
|
||||
Items []PodTemplate `json:"items" yaml:"items"`
|
||||
Items []PodTemplate `json:"items"`
|
||||
}
|
||||
|
||||
// ReplicationControllerSpec is the specification of a replication controller.
|
||||
@@ -528,57 +528,57 @@ type PodTemplateList struct {
|
||||
// a TemplateRef or a Template set.
|
||||
type ReplicationControllerSpec struct {
|
||||
// Replicas is the number of desired replicas.
|
||||
Replicas int `json:"replicas" yaml:"replicas"`
|
||||
Replicas int `json:"replicas"`
|
||||
|
||||
// Selector is a label query over pods that should match the Replicas count.
|
||||
Selector map[string]string `json:"selector" yaml:"selector"`
|
||||
Selector map[string]string `json:"selector"`
|
||||
|
||||
// TemplateRef is a reference to an object that describes the pod that will be created if
|
||||
// insufficient replicas are detected. This reference is ignored if a Template is set.
|
||||
// Must be set before converting to a v1beta3 API object
|
||||
TemplateRef *ObjectReference `json:"templateRef,omitempty" yaml:"templateRef,omitempty"`
|
||||
TemplateRef *ObjectReference `json:"templateRef,omitempty"`
|
||||
|
||||
// Template is the object that describes the pod that will be created if
|
||||
// insufficient replicas are detected. Internally, this takes precedence over a
|
||||
// TemplateRef.
|
||||
// Must be set before converting to a v1beta1 or v1beta2 API object.
|
||||
Template *PodTemplateSpec `json:"template,omitempty" yaml:"template,omitempty"`
|
||||
Template *PodTemplateSpec `json:"template,omitempty"`
|
||||
}
|
||||
|
||||
// ReplicationControllerStatus represents the current status of a replication
|
||||
// controller.
|
||||
type ReplicationControllerStatus struct {
|
||||
// Replicas is the number of actual replicas.
|
||||
Replicas int `json:"replicas" yaml:"replicas"`
|
||||
Replicas int `json:"replicas"`
|
||||
}
|
||||
|
||||
// ReplicationController represents the configuration of a replication controller.
|
||||
type ReplicationController struct {
|
||||
TypeMeta `json:",inline" yaml:",inline"`
|
||||
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
|
||||
TypeMeta `json:",inline"`
|
||||
ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
// Spec defines the desired behavior of this replication controller.
|
||||
Spec ReplicationControllerSpec `json:"spec,omitempty" yaml:"spec,omitempty"`
|
||||
Spec ReplicationControllerSpec `json:"spec,omitempty"`
|
||||
|
||||
// Status is the current status of this replication controller. This data may be
|
||||
// out of date by some window of time.
|
||||
Status ReplicationControllerStatus `json:"status,omitempty" yaml:"status,omitempty"`
|
||||
Status ReplicationControllerStatus `json:"status,omitempty"`
|
||||
}
|
||||
|
||||
// ReplicationControllerList is a collection of replication controllers.
|
||||
type ReplicationControllerList struct {
|
||||
TypeMeta `json:",inline" yaml:",inline"`
|
||||
ListMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
|
||||
TypeMeta `json:",inline"`
|
||||
ListMeta `json:"metadata,omitempty"`
|
||||
|
||||
Items []ReplicationController `json:"items" yaml:"items"`
|
||||
Items []ReplicationController `json:"items"`
|
||||
}
|
||||
|
||||
// ServiceList holds a list of services.
|
||||
type ServiceList struct {
|
||||
TypeMeta `json:",inline" yaml:",inline"`
|
||||
ListMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
|
||||
TypeMeta `json:",inline"`
|
||||
ListMeta `json:"metadata,omitempty"`
|
||||
|
||||
Items []Service `json:"items" yaml:"items"`
|
||||
Items []Service `json:"items"`
|
||||
}
|
||||
|
||||
// ServiceStatus represents the current status of a service
|
||||
@@ -588,74 +588,74 @@ type ServiceStatus struct{}
|
||||
type ServiceSpec struct {
|
||||
// Port is the TCP or UDP port that will be made available to each pod for connecting to the pods
|
||||
// proxied by this service.
|
||||
Port int `json:"port" yaml:"port"`
|
||||
Port int `json:"port"`
|
||||
|
||||
// Optional: Supports "TCP" and "UDP". Defaults to "TCP".
|
||||
Protocol Protocol `json:"protocol,omitempty" yaml:"protocol,omitempty"`
|
||||
Protocol Protocol `json:"protocol,omitempty"`
|
||||
|
||||
// This service will route traffic to pods having labels matching this selector.
|
||||
Selector map[string]string `json:"selector,omitempty" yaml:"selector,omitempty"`
|
||||
Selector map[string]string `json:"selector,omitempty"`
|
||||
|
||||
// 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
|
||||
// not be changed by updates.
|
||||
PortalIP string `json:"portalIP,omitempty" yaml:"portalIP,omitempty"`
|
||||
PortalIP string `json:"portalIP,omitempty"`
|
||||
|
||||
// ProxyPort is assigned by the master. If 0, the proxy will choose an ephemeral port.
|
||||
// TODO: This is awkward - if we had a BoundService, it would be better factored.
|
||||
ProxyPort int `json:"proxyPort,omitempty" yaml:"proxyPort,omitempty"`
|
||||
ProxyPort int `json:"proxyPort,omitempty"`
|
||||
|
||||
// CreateExternalLoadBalancer indicates whether a load balancer should be created for this service.
|
||||
CreateExternalLoadBalancer bool `json:"createExternalLoadBalancer,omitempty" yaml:"createExternalLoadBalancer,omitempty"`
|
||||
CreateExternalLoadBalancer bool `json:"createExternalLoadBalancer,omitempty"`
|
||||
// PublicIPs are used by external load balancers.
|
||||
PublicIPs []string `json:"publicIPs,omitempty" yaml:"publicIPs,omitempty"`
|
||||
PublicIPs []string `json:"publicIPs,omitempty"`
|
||||
|
||||
// ContainerPort is the name of the port on the container to direct traffic to.
|
||||
// Optional, if unspecified use the first port on the container.
|
||||
ContainerPort util.IntOrString `json:"containerPort,omitempty" yaml:"containerPort,omitempty"`
|
||||
ContainerPort util.IntOrString `json:"containerPort,omitempty"`
|
||||
}
|
||||
|
||||
// Service is a named abstraction of software service (for example, mysql) consisting of local port
|
||||
// (for example 3306) that the proxy listens on, and the selector that determines which pods
|
||||
// will answer requests sent through the proxy.
|
||||
type Service struct {
|
||||
TypeMeta `json:",inline" yaml:",inline"`
|
||||
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
|
||||
TypeMeta `json:",inline"`
|
||||
ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
// Spec defines the behavior of a service.
|
||||
Spec ServiceSpec `json:"spec,omitempty" yaml:"spec,omitempty"`
|
||||
Spec ServiceSpec `json:"spec,omitempty"`
|
||||
|
||||
// Status represents the current status of a service.
|
||||
Status ServiceStatus `json:"status,omitempty" yaml:"status,omitempty"`
|
||||
Status ServiceStatus `json:"status,omitempty"`
|
||||
}
|
||||
|
||||
// Endpoints is a collection of endpoints that implement the actual service, for example:
|
||||
// Name: "mysql", Endpoints: ["10.10.1.1:1909", "10.10.2.2:8834"]
|
||||
type Endpoints struct {
|
||||
TypeMeta `json:",inline" yaml:",inline"`
|
||||
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
|
||||
TypeMeta `json:",inline"`
|
||||
ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
Endpoints []string `json:"endpoints,omitempty" yaml:"endpoints,omitempty"`
|
||||
Endpoints []string `json:"endpoints,omitempty"`
|
||||
}
|
||||
|
||||
// EndpointsList is a list of endpoints.
|
||||
type EndpointsList struct {
|
||||
TypeMeta `json:",inline" yaml:",inline"`
|
||||
ListMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
|
||||
TypeMeta `json:",inline"`
|
||||
ListMeta `json:"metadata,omitempty"`
|
||||
|
||||
Items []Endpoints `json:"items" yaml:"items"`
|
||||
Items []Endpoints `json:"items"`
|
||||
}
|
||||
|
||||
// NodeSpec describes the attributes that a node is created with.
|
||||
type NodeSpec struct {
|
||||
// Capacity represents the available resources of a node
|
||||
Capacity ResourceList `json:"capacity,omitempty" yaml:"capacity,omitempty"`
|
||||
Capacity ResourceList `json:"capacity,omitempty"`
|
||||
}
|
||||
|
||||
// NodeStatus is information about the current status of a node.
|
||||
type NodeStatus struct {
|
||||
// Queried from cloud provider, if available.
|
||||
HostIP string `json:"hostIP,omitempty" yaml:"hostIP,omitempty"`
|
||||
HostIP string `json:"hostIP,omitempty"`
|
||||
}
|
||||
|
||||
// NodeResources is an object for conveying resource information about a node.
|
||||
@@ -663,7 +663,7 @@ type NodeStatus struct {
|
||||
// TODO: Use ResourceList instead?
|
||||
type NodeResources struct {
|
||||
// Capacity represents the available resources of a node
|
||||
Capacity ResourceList `json:"capacity,omitempty" yaml:"capacity,omitempty"`
|
||||
Capacity ResourceList `json:"capacity,omitempty"`
|
||||
}
|
||||
|
||||
type ResourceName string
|
||||
@@ -674,56 +674,56 @@ type ResourceList map[ResourceName]util.IntOrString
|
||||
// The name of the minion according to etcd is in ObjectMeta.Name.
|
||||
// TODO: Rename to Node
|
||||
type Minion struct {
|
||||
TypeMeta `json:",inline" yaml:",inline"`
|
||||
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
|
||||
TypeMeta `json:",inline"`
|
||||
ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
// Spec defines the behavior of a node.
|
||||
Spec NodeSpec `json:"spec,omitempty" yaml:"spec,omitempty"`
|
||||
Spec NodeSpec `json:"spec,omitempty"`
|
||||
|
||||
// Status describes the current status of a Node
|
||||
Status NodeStatus `json:"status,omitempty" yaml:"status,omitempty"`
|
||||
Status NodeStatus `json:"status,omitempty"`
|
||||
}
|
||||
|
||||
// MinionList is a list of minions.
|
||||
type MinionList struct {
|
||||
TypeMeta `json:",inline" yaml:",inline"`
|
||||
ListMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
|
||||
TypeMeta `json:",inline"`
|
||||
ListMeta `json:"metadata,omitempty"`
|
||||
|
||||
Items []Minion `json:"items" yaml:"items"`
|
||||
Items []Minion `json:"items"`
|
||||
}
|
||||
|
||||
// Binding is written by a scheduler to cause a pod to be bound to a host.
|
||||
type Binding struct {
|
||||
TypeMeta `json:",inline" yaml:",inline"`
|
||||
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
|
||||
TypeMeta `json:",inline"`
|
||||
ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
PodID string `json:"podID" yaml:"podID"`
|
||||
Host string `json:"host" yaml:"host"`
|
||||
PodID string `json:"podID"`
|
||||
Host string `json:"host"`
|
||||
}
|
||||
|
||||
// Status is a return value for calls that don't return other objects.
|
||||
// TODO: this could go in apiserver, but I'm including it here so clients needn't
|
||||
// import both.
|
||||
type Status struct {
|
||||
TypeMeta `json:",inline" yaml:",inline"`
|
||||
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
|
||||
TypeMeta `json:",inline"`
|
||||
ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
// One of: "Success", "Failure", "Working" (for operations not yet completed)
|
||||
Status string `json:"status,omitempty" yaml:"status,omitempty"`
|
||||
Status string `json:"status,omitempty"`
|
||||
// A human-readable description of the status of this operation.
|
||||
Message string `json:"message,omitempty" yaml:"message,omitempty"`
|
||||
Message string `json:"message,omitempty"`
|
||||
// A machine-readable description of why this operation is in the
|
||||
// "Failure" or "Working" status. If this value is empty there
|
||||
// is no information available. A Reason clarifies an HTTP status
|
||||
// code but does not override it.
|
||||
Reason StatusReason `json:"reason,omitempty" yaml:"reason,omitempty"`
|
||||
Reason StatusReason `json:"reason,omitempty"`
|
||||
// Extended data associated with the reason. Each reason may define its
|
||||
// own extended details. This field is optional and the data returned
|
||||
// is not guaranteed to conform to any schema except that defined by
|
||||
// the reason type.
|
||||
Details *StatusDetails `json:"details,omitempty" yaml:"details,omitempty"`
|
||||
Details *StatusDetails `json:"details,omitempty"`
|
||||
// Suggested HTTP return code for this status, 0 if not set.
|
||||
Code int `json:"code,omitempty" yaml:"code,omitempty"`
|
||||
Code int `json:"code,omitempty"`
|
||||
}
|
||||
|
||||
// StatusDetails is a set of additional properties that MAY be set by the
|
||||
@@ -736,13 +736,13 @@ type StatusDetails struct {
|
||||
// The ID attribute of the resource associated with the status StatusReason
|
||||
// (when there is a single ID which can be described).
|
||||
// TODO: replace with Name with v1beta3
|
||||
ID string `json:"id,omitempty" yaml:"id,omitempty"`
|
||||
ID string `json:"id,omitempty"`
|
||||
// The kind attribute of the resource associated with the status StatusReason.
|
||||
// On some operations may differ from the requested resource Kind.
|
||||
Kind string `json:"kind,omitempty" yaml:"kind,omitempty"`
|
||||
Kind string `json:"kind,omitempty"`
|
||||
// The Causes array includes more details associated with the StatusReason
|
||||
// failure. Not all StatusReasons may provide detailed causes.
|
||||
Causes []StatusCause `json:"causes,omitempty" yaml:"causes,omitempty"`
|
||||
Causes []StatusCause `json:"causes,omitempty"`
|
||||
}
|
||||
|
||||
// Values of Status.Status
|
||||
@@ -832,10 +832,10 @@ const (
|
||||
type StatusCause struct {
|
||||
// A machine-readable description of the cause of the error. If this value is
|
||||
// empty there is no information available.
|
||||
Type CauseType `json:"reason,omitempty" yaml:"reason,omitempty"`
|
||||
Type CauseType `json:"reason,omitempty"`
|
||||
// A human-readable description of the cause of the error. This field may be
|
||||
// presented as-is to a reader.
|
||||
Message string `json:"message,omitempty" yaml:"message,omitempty"`
|
||||
Message string `json:"message,omitempty"`
|
||||
// The field of the resource that has caused this error, as named by its JSON
|
||||
// serialization. May include dot and postfix notation for nested attributes.
|
||||
// Arrays are zero-indexed. Fields may appear more than once in an array of
|
||||
@@ -845,7 +845,7 @@ type StatusCause struct {
|
||||
// Examples:
|
||||
// "name" - the field "name" on the current resource
|
||||
// "items[0].name" - the field "name" on the first array entry in "items"
|
||||
Field string `json:"field,omitempty" yaml:"field,omitempty"`
|
||||
Field string `json:"field,omitempty"`
|
||||
}
|
||||
|
||||
// CauseType is a machine readable value providing more detail about what
|
||||
@@ -873,26 +873,26 @@ const (
|
||||
|
||||
// ServerOp is an operation delivered to API clients.
|
||||
type ServerOp struct {
|
||||
TypeMeta `yaml:",inline" json:",inline"`
|
||||
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
|
||||
TypeMeta `json:",inline"`
|
||||
ObjectMeta `json:"metadata,omitempty"`
|
||||
}
|
||||
|
||||
// ServerOpList is a list of operations, as delivered to API clients.
|
||||
type ServerOpList struct {
|
||||
TypeMeta `yaml:",inline" json:",inline"`
|
||||
ListMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
|
||||
TypeMeta `json:",inline"`
|
||||
ListMeta `json:"metadata,omitempty"`
|
||||
|
||||
Items []ServerOp `yaml:"items" json:"items"`
|
||||
Items []ServerOp `json:"items"`
|
||||
}
|
||||
|
||||
// ObjectReference contains enough information to let you inspect or modify the referred object.
|
||||
type ObjectReference struct {
|
||||
Kind string `json:"kind,omitempty" yaml:"kind,omitempty"`
|
||||
Namespace string `json:"namespace,omitempty" yaml:"namespace,omitempty"`
|
||||
Name string `json:"name,omitempty" yaml:"name,omitempty"`
|
||||
UID string `json:"uid,omitempty" yaml:"uid,omitempty"`
|
||||
APIVersion string `json:"apiVersion,omitempty" yaml:"apiVersion,omitempty"`
|
||||
ResourceVersion string `json:"resourceVersion,omitempty" yaml:"resourceVersion,omitempty"`
|
||||
Kind string `json:"kind,omitempty"`
|
||||
Namespace string `json:"namespace,omitempty"`
|
||||
Name string `json:"name,omitempty"`
|
||||
UID string `json:"uid,omitempty"`
|
||||
APIVersion string `json:"apiVersion,omitempty"`
|
||||
ResourceVersion string `json:"resourceVersion,omitempty"`
|
||||
|
||||
// Optional. If referring to a piece of an object instead of an entire object, this string
|
||||
// should contain a valid field access statement. For example,
|
||||
@@ -901,17 +901,17 @@ type ObjectReference struct {
|
||||
// both go and JavaScript. This is syntax is chosen only to have some well-defined way of
|
||||
// referencing a part of an object.
|
||||
// TODO: this design is not final and this field is subject to change in the future.
|
||||
FieldPath string `json:"fieldPath,omitempty" yaml:"fieldPath,omitempty"`
|
||||
FieldPath string `json:"fieldPath,omitempty"`
|
||||
}
|
||||
|
||||
// Event is a report of an event somewhere in the cluster.
|
||||
// TODO: Decide whether to store these separately or with the object they apply to.
|
||||
type Event struct {
|
||||
TypeMeta `yaml:",inline" json:",inline"`
|
||||
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
|
||||
TypeMeta `json:",inline"`
|
||||
ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
// Required. The object that this event is about.
|
||||
InvolvedObject ObjectReference `json:"involvedObject,omitempty" yaml:"involvedObject,omitempty"`
|
||||
InvolvedObject ObjectReference `json:"involvedObject,omitempty"`
|
||||
|
||||
// Should be a short, machine understandable string that describes the current status
|
||||
// of the referred object. This should not give the reason for being in this state.
|
||||
@@ -920,32 +920,32 @@ type Event struct {
|
||||
// always be used for the same status.
|
||||
// TODO: define a way of making sure these are consistent and don't collide.
|
||||
// TODO: provide exact specification for format.
|
||||
Status string `json:"status,omitempty" yaml:"status,omitempty"`
|
||||
Status string `json:"status,omitempty"`
|
||||
|
||||
// Optional; this should be a short, machine understandable string that gives the reason
|
||||
// for the transition into the object's current status. For example, if ObjectStatus is
|
||||
// "cantStart", StatusReason might be "imageNotFound".
|
||||
// TODO: provide exact specification for format.
|
||||
Reason string `json:"reason,omitempty" yaml:"reason,omitempty"`
|
||||
Reason string `json:"reason,omitempty"`
|
||||
|
||||
// Optional. A human-readable description of the status of this operation.
|
||||
// TODO: decide on maximum length.
|
||||
Message string `json:"message,omitempty" yaml:"message,omitempty"`
|
||||
Message string `json:"message,omitempty"`
|
||||
|
||||
// Optional. The component reporting this event. Should be a short machine understandable string.
|
||||
// TODO: provide exact specification for format.
|
||||
Source string `json:"source,omitempty" yaml:"source,omitempty"`
|
||||
Source string `json:"source,omitempty"`
|
||||
|
||||
// The time at which the client recorded the event. (Time of server receipt is in TypeMeta.)
|
||||
Timestamp util.Time `json:"timestamp,omitempty" yaml:"timestamp,omitempty"`
|
||||
Timestamp util.Time `json:"timestamp,omitempty"`
|
||||
}
|
||||
|
||||
// EventList is a list of events.
|
||||
type EventList struct {
|
||||
TypeMeta `yaml:",inline" json:",inline"`
|
||||
ListMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
|
||||
TypeMeta `json:",inline"`
|
||||
ListMeta `json:"metadata,omitempty"`
|
||||
|
||||
Items []Event `yaml:"items" json:"items"`
|
||||
Items []Event `json:"items"`
|
||||
}
|
||||
|
||||
// ContainerManifest corresponds to the Container Manifest format, documented at:
|
||||
@@ -954,48 +954,48 @@ type EventList struct {
|
||||
// DEPRECATED: Replaced with BoundPod
|
||||
type ContainerManifest struct {
|
||||
// Required: This must be a supported version string, such as "v1beta1".
|
||||
Version string `yaml:"version" json:"version"`
|
||||
Version string `json:"version"`
|
||||
// Required: This must be a DNS_SUBDOMAIN.
|
||||
// TODO: ID on Manifest is deprecated and will be removed in the future.
|
||||
ID string `yaml:"id" json:"id"`
|
||||
ID string `json:"id"`
|
||||
// TODO: UUID on Manifest is deprecated in the future once we are done
|
||||
// with the API refactoring. It is required for now to determine the instance
|
||||
// of a Pod.
|
||||
UUID string `yaml:"uuid,omitempty" json:"uuid,omitempty"`
|
||||
Volumes []Volume `yaml:"volumes" json:"volumes"`
|
||||
Containers []Container `yaml:"containers" json:"containers"`
|
||||
RestartPolicy RestartPolicy `json:"restartPolicy,omitempty" yaml:"restartPolicy,omitempty"`
|
||||
UUID string `json:"uuid,omitempty"`
|
||||
Volumes []Volume `json:"volumes"`
|
||||
Containers []Container `json:"containers"`
|
||||
RestartPolicy RestartPolicy `json:"restartPolicy,omitempty"`
|
||||
}
|
||||
|
||||
// ContainerManifestList is used to communicate container manifests to kubelet.
|
||||
// DEPRECATED: Replaced with BoundPods
|
||||
type ContainerManifestList struct {
|
||||
TypeMeta `json:",inline" yaml:",inline"`
|
||||
ListMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
|
||||
TypeMeta `json:",inline"`
|
||||
ListMeta `json:"metadata,omitempty"`
|
||||
|
||||
Items []ContainerManifest `json:"items" yaml:"items,omitempty"`
|
||||
Items []ContainerManifest `json:"items"`
|
||||
}
|
||||
|
||||
// BoundPod is a collection of containers that should be run on a host. A BoundPod
|
||||
// defines how a Pod may change after a Binding is created. A Pod is a request to
|
||||
// execute a pod, whereas a BoundPod is the specification that would be run on a server.
|
||||
type BoundPod struct {
|
||||
TypeMeta `json:",inline" yaml:",inline"`
|
||||
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
|
||||
TypeMeta `json:",inline"`
|
||||
ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
// Spec defines the behavior of a pod.
|
||||
Spec PodSpec `json:"spec,omitempty" yaml:"spec,omitempty"`
|
||||
Spec PodSpec `json:"spec,omitempty"`
|
||||
}
|
||||
|
||||
// BoundPods is a list of Pods bound to a common server. The resource version of
|
||||
// the pod list is guaranteed to only change when the list of bound pods changes.
|
||||
type BoundPods struct {
|
||||
TypeMeta `json:",inline" yaml:",inline"`
|
||||
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
|
||||
TypeMeta `json:",inline"`
|
||||
ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
// Host is the name of a node that these pods were bound to.
|
||||
Host string `json:"host" yaml:"host"`
|
||||
Host string `json:"host"`
|
||||
|
||||
// Items is the list of all pods bound to a given host.
|
||||
Items []BoundPod `json:"items" yaml:"items"`
|
||||
Items []BoundPod `json:"items"`
|
||||
}
|
||||
|
Reference in New Issue
Block a user