Documentation
¶
Overview ¶
Package k8s contains a partial set of Kubernetes-style API types used by Doki to talk to the embedded kubelet and to render pod specs.
Index ¶
- Constants
- type Affinity
- type Capabilities
- type Condition
- type ConfigMap
- type ConfigMapEnvSource
- type ConfigMapKeySelector
- type ConfigMapList
- type ConfigMapProjection
- type ConfigMapVolumeSource
- type Container
- type ContainerImage
- type ContainerPort
- type ContainerState
- type ContainerStateRunning
- type ContainerStateTerminated
- type ContainerStateWaiting
- type ContainerStatus
- type CronJob
- type CronJobList
- type CronJobSpec
- type CronJobStatus
- type DaemonEndpoint
- type DaemonSet
- type DaemonSetList
- type DaemonSetSpec
- type DaemonSetStatus
- type DaemonSetUpdateStrategy
- type Deployment
- type DeploymentCondition
- type DeploymentList
- type DeploymentSpec
- type DeploymentStatus
- type DeploymentStrategy
- type DownwardAPIProjection
- type DownwardAPIVolumeFile
- type DownwardAPIVolumeSource
- type EmptyDirVolumeSource
- type EndpointAddress
- type EndpointPort
- type EndpointSubset
- type Endpoints
- type EnvFromSource
- type EnvVar
- type EnvVarSource
- type Event
- type EventSource
- type ExecAction
- type GRPCAction
- type HTTPGetAction
- type HTTPHeader
- type HostAlias
- type HostIP
- type HostPathVolumeSource
- type IntOrString
- type Job
- type JobList
- type JobSpec
- type JobStatus
- type JobTemplateSpec
- type KeyToPath
- type LabelSelector
- type LabelSelectorRequirement
- type Lifecycle
- type LifecycleHandler
- type ListMeta
- type LoadBalancerIngress
- type LoadBalancerStatus
- type LocalObjectReference
- type NFSVolumeSource
- type Namespace
- type NamespaceList
- type NamespaceSpec
- type NamespaceStatus
- type Node
- type NodeAddress
- type NodeAffinity
- type NodeCondition
- type NodeDaemonEndpoints
- type NodeList
- type NodeSelector
- type NodeSelectorRequirement
- type NodeSelectorTerm
- type NodeSpec
- type NodeStatus
- type NodeSystemInfo
- type ObjectFieldSelector
- type ObjectMeta
- type ObjectReference
- type OwnerReference
- type PersistentVolume
- type PersistentVolumeClaim
- type PersistentVolumeClaimList
- type PersistentVolumeClaimSpec
- type PersistentVolumeClaimStatus
- type PersistentVolumeClaimVolumeSource
- type PersistentVolumeList
- type PersistentVolumeSpec
- type PersistentVolumeStatus
- type Pod
- type PodAffinity
- type PodAffinityTerm
- type PodAntiAffinity
- type PodCondition
- type PodFailurePolicy
- type PodFailurePolicyOnExitCodesRequirement
- type PodFailurePolicyOnPodConditionsPattern
- type PodFailurePolicyRule
- type PodIP
- type PodList
- type PodSecurityContext
- type PodSpec
- type PodStatus
- type PodTemplateSpec
- type PortStatus
- type PreferredSchedulingTerm
- type Probe
- type ProbeHandler
- type ProjectedVolumeSource
- type ReplicaSet
- type ReplicaSetCondition
- type ReplicaSetList
- type ReplicaSetSpec
- type ReplicaSetStatus
- type ResourceFieldSelector
- type ResourceList
- type ResourceRequirements
- type RollingUpdateDaemonSet
- type RollingUpdateDeployment
- type RollingUpdateStatefulSetStrategy
- type SELinuxOptions
- type SeccompProfile
- type Secret
- type SecretEnvSource
- type SecretKeySelector
- type SecretList
- type SecretProjection
- type SecretVolumeSource
- type SecurityContext
- type Service
- type ServiceAccount
- type ServiceAccountList
- type ServiceList
- type ServicePort
- type ServiceSpec
- type ServiceStatus
- type StatefulSet
- type StatefulSetList
- type StatefulSetOrdinals
- type StatefulSetSpec
- type StatefulSetStatus
- type StatefulSetUpdateStrategy
- type Sysctl
- type TCPSocketAction
- type Taint
- type Toleration
- type TopologySpreadConstraint
- type TypeMeta
- type UncountedTerminatedPods
- type Volume
- type VolumeMount
- type VolumeProjection
- type VolumeSource
- type WatchEvent
- type WeightedPodAffinityTerm
Constants ¶
const ( // DeploymentRecreate is the Deployment strategy type that kills all // existing pods before creating new ones. DeploymentRecreate = "Recreate" // DeploymentRollingUpdate is the Deployment strategy type that // replaces pods incrementally. DeploymentRollingUpdate = "RollingUpdate" )
const ( // PodPending indicates the pod has been accepted by the system // but one or more containers have not yet started. PodPending = "Pending" // PodRunning indicates the pod has been bound to a node and all // of its containers have been created. PodRunning = "Running" // PodSucceeded indicates that all containers in the pod have // voluntarily terminated with a zero exit code. PodSucceeded = "Succeeded" // PodFailed indicates that at least one container has terminated // in a non-zero state or been terminated by the system. PodFailed = "Failed" // PodUnknown indicates the state of the pod could not be obtained. PodUnknown = "Unknown" )
const ( ServiceTypeClusterIP = "ClusterIP" ServiceTypeNodePort = "NodePort" ServiceTypeLoadBalancer = "LoadBalancer" ServiceTypeExternalName = "ExternalName" )
ServiceTypeClusterIP is the Service type for cluster-internal IP access only. ServiceTypeNodePort exposes the Service on each node's IP at a static port. ServiceTypeLoadBalancer exposes the Service externally using a cloud provider's load balancer. ServiceTypeExternalName maps the Service to an external DNS name.
const ( SecretTypeOpaque = "Opaque" SecretTypeServiceAccountToken = "kubernetes.io/service-account-token" SecretTypeDockercfg = "kubernetes.io/dockercfg" SecretTypeDockerConfigJSON = "kubernetes.io/dockerconfigjson" SecretTypeBasicAuth = "kubernetes.io/basic-auth" SecretTypeSSHAuth = "kubernetes.io/ssh-auth" SecretTypeTLS = "kubernetes.io/tls" SecretTypeBootstrapToken = "bootstrap.kubernetes.io/token" )
SecretTypeOpaque is the default Secret type for arbitrary user-defined data. SecretTypeServiceAccountToken stores a ServiceAccount token. SecretTypeDockercfg stores a legacy Docker registry credential. SecretTypeDockerConfigJSON stores a Docker registry credential in JSON format. SecretTypeBasicAuth stores credentials for basic authentication. SecretTypeSSHAuth stores credentials for SSH authentication. SecretTypeTLS stores TLS certificates and keys. SecretTypeBootstrapToken stores bootstrap tokens for node registration.
const ( NamespaceActive = "Active" NamespaceTerminating = "Terminating" )
NamespaceActive indicates the Namespace is active. NamespaceTerminating indicates the Namespace is being terminated.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Affinity ¶
type Affinity struct {
NodeAffinity *NodeAffinity `json:"nodeAffinity,omitempty" yaml:"nodeAffinity,omitempty"`
PodAffinity *PodAffinity `json:"podAffinity,omitempty" yaml:"podAffinity,omitempty"`
PodAntiAffinity *PodAntiAffinity `json:"podAntiAffinity,omitempty" yaml:"podAntiAffinity,omitempty"`
}
Affinity represents the scheduling affinity rules for a pod, broken down into node, pod and pod-anti affinity.
type Capabilities ¶
type Capabilities struct {
Add []string `json:"add,omitempty" yaml:"add,omitempty"`
Drop []string `json:"drop,omitempty" yaml:"drop,omitempty"`
}
Capabilities represents the set of Linux capabilities to add or drop for a container.
type Condition ¶
type Condition struct {
Type string `json:"type" yaml:"type"`
Status string `json:"status" yaml:"status"`
LastTransitionTime time.Time `json:"lastTransitionTime,omitempty" yaml:"lastTransitionTime,omitempty"`
Reason string `json:"reason,omitempty" yaml:"reason,omitempty"`
Message string `json:"message,omitempty" yaml:"message,omitempty"`
}
Condition represents a generic status condition attached to a Kubernetes-style resource, capturing the last transition and reason.
type ConfigMap ¶
type ConfigMap struct {
TypeMeta `json:",inline" yaml:",inline"`
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Data map[string]string `json:"data,omitempty" yaml:"data,omitempty"`
BinaryData map[string][]byte `json:"binaryData,omitempty" yaml:"binaryData,omitempty"`
Immutable *bool `json:"immutable,omitempty" yaml:"immutable,omitempty"`
}
ConfigMap represents a Kubernetes ConfigMap resource containing configuration data.
type ConfigMapEnvSource ¶
type ConfigMapEnvSource struct {
LocalObjectReference `json:",inline" yaml:",inline"`
Optional *bool `json:"optional,omitempty" yaml:"optional,omitempty"`
}
ConfigMapEnvSource represents a reference to a ConfigMap whose keys are imported as environment variables.
type ConfigMapKeySelector ¶
type ConfigMapKeySelector struct {
LocalObjectReference `json:",inline" yaml:",inline"`
Key string `json:"key" yaml:"key"`
Optional *bool `json:"optional,omitempty" yaml:"optional,omitempty"`
}
ConfigMapKeySelector represents a reference to a specific key in a ConfigMap whose value populates an env var.
type ConfigMapList ¶
type ConfigMapList struct {
TypeMeta `json:",inline" yaml:",inline"`
ListMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Items []ConfigMap `json:"items" yaml:"items"`
}
ConfigMapList is a list of ConfigMap resources.
type ConfigMapProjection ¶
type ConfigMapProjection struct {
LocalObjectReference `json:",inline" yaml:",inline"`
Items []KeyToPath `json:"items,omitempty" yaml:"items,omitempty"`
Optional *bool `json:"optional,omitempty" yaml:"optional,omitempty"`
}
ConfigMapProjection represents a ConfigMap to project into a projected volume, with optional per-key paths.
type ConfigMapVolumeSource ¶
type ConfigMapVolumeSource struct {
LocalObjectReference `json:",inline" yaml:",inline"`
Items []KeyToPath `json:"items,omitempty" yaml:"items,omitempty"`
DefaultMode *int32 `json:"defaultMode,omitempty" yaml:"defaultMode,omitempty"`
Optional *bool `json:"optional,omitempty" yaml:"optional,omitempty"`
}
ConfigMapVolumeSource represents a ConfigMap projected into a pod as a volume, optionally with per-key paths and file modes.
type Container ¶
type Container struct {
Name string `json:"name" yaml:"name"`
Image string `json:"image" yaml:"image"`
Command []string `json:"command,omitempty" yaml:"command,omitempty"`
Args []string `json:"args,omitempty" yaml:"args,omitempty"`
WorkingDir string `json:"workingDir,omitempty" yaml:"workingDir,omitempty"`
Ports []ContainerPort `json:"ports,omitempty" yaml:"ports,omitempty"`
Env []EnvVar `json:"env,omitempty" yaml:"env,omitempty"`
EnvFrom []EnvFromSource `json:"envFrom,omitempty" yaml:"envFrom,omitempty"`
VolumeMounts []VolumeMount `json:"volumeMounts,omitempty" yaml:"volumeMounts,omitempty"`
Resources ResourceRequirements `json:"resources,omitempty" yaml:"resources,omitempty"`
LivenessProbe *Probe `json:"livenessProbe,omitempty" yaml:"livenessProbe,omitempty"`
ReadinessProbe *Probe `json:"readinessProbe,omitempty" yaml:"readinessProbe,omitempty"`
StartupProbe *Probe `json:"startupProbe,omitempty" yaml:"startupProbe,omitempty"`
Lifecycle *Lifecycle `json:"lifecycle,omitempty" yaml:"lifecycle,omitempty"`
SecurityContext *SecurityContext `json:"securityContext,omitempty" yaml:"securityContext,omitempty"`
ImagePullPolicy string `json:"imagePullPolicy,omitempty" yaml:"imagePullPolicy,omitempty"`
Stdin bool `json:"stdin,omitempty" yaml:"stdin,omitempty"`
StdinOnce bool `json:"stdinOnce,omitempty" yaml:"stdinOnce,omitempty"`
TTY bool `json:"tty,omitempty" yaml:"tty,omitempty"`
}
Container represents a single container running inside a Pod, including its image, command, ports, probes, resource requirements and security context.
type ContainerImage ¶
type ContainerImage struct {
Names []string `json:"names,omitempty" yaml:"names,omitempty"`
SizeBytes int64 `json:"sizeBytes,omitempty" yaml:"sizeBytes,omitempty"`
}
ContainerImage represents a container image available on a Node.
type ContainerPort ¶
type ContainerPort struct {
Name string `json:"name,omitempty" yaml:"name,omitempty"`
ContainerPort int32 `json:"containerPort" yaml:"containerPort"`
HostPort int32 `json:"hostPort,omitempty" yaml:"hostPort,omitempty"`
Protocol string `json:"protocol,omitempty" yaml:"protocol,omitempty"`
HostIP string `json:"hostIP,omitempty" yaml:"hostIP,omitempty"`
}
ContainerPort represents a network port exposed by a container inside a Pod, with optional host binding and protocol.
type ContainerState ¶
type ContainerState struct {
Waiting *ContainerStateWaiting `json:"waiting,omitempty" yaml:"waiting,omitempty"`
Running *ContainerStateRunning `json:"running,omitempty" yaml:"running,omitempty"`
Terminated *ContainerStateTerminated `json:"terminated,omitempty" yaml:"terminated,omitempty"`
}
ContainerState represents the lifecycle state of a container: waiting, running or terminated.
type ContainerStateRunning ¶
type ContainerStateRunning struct {
StartedAt time.Time `json:"startedAt,omitempty" yaml:"startedAt,omitempty"`
}
ContainerStateRunning represents a container that is currently running, exposing its start time.
type ContainerStateTerminated ¶
type ContainerStateTerminated struct {
ExitCode int32 `json:"exitCode" yaml:"exitCode"`
Signal int32 `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"`
ContainerID string `json:"containerID,omitempty" yaml:"containerID,omitempty"`
}
ContainerStateTerminated represents a container that has terminated, including its exit code, signal and timing information.
type ContainerStateWaiting ¶
type ContainerStateWaiting struct {
Reason string `json:"reason,omitempty" yaml:"reason,omitempty"`
Message string `json:"message,omitempty" yaml:"message,omitempty"`
}
ContainerStateWaiting represents a container that is in the waiting state, including the reason and a human-readable message.
type ContainerStatus ¶
type ContainerStatus struct {
Name string `json:"name" yaml:"name"`
State ContainerState `json:"state,omitempty" yaml:"state,omitempty"`
LastTerminationState ContainerState `json:"lastState,omitempty" yaml:"lastState,omitempty"`
Ready bool `json:"ready" yaml:"ready"`
RestartCount int32 `json:"restartCount" yaml:"restartCount"`
Image string `json:"image" yaml:"image"`
ImageID string `json:"imageID" yaml:"imageID"`
ContainerID string `json:"containerID,omitempty" yaml:"containerID,omitempty"`
Started *bool `json:"started,omitempty" yaml:"started,omitempty"`
AllocatedResources ResourceList `json:"allocatedResources,omitempty" yaml:"allocatedResources,omitempty"`
}
ContainerStatus represents the observed state of a single container inside a pod, including its current and last-termination state.
type CronJob ¶
type CronJob struct {
TypeMeta `json:",inline" yaml:",inline"`
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Spec CronJobSpec `json:"spec,omitempty" yaml:"spec,omitempty"`
Status CronJobStatus `json:"status,omitempty" yaml:"status,omitempty"`
}
CronJob represents a Kubernetes-style CronJob resource that runs Jobs on a recurring schedule.
type CronJobList ¶
type CronJobList struct {
TypeMeta `json:",inline" yaml:",inline"`
ListMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Items []CronJob `json:"items" yaml:"items"`
}
CronJobList represents a collection of CronJob resources returned in a list response.
type CronJobSpec ¶
type CronJobSpec struct {
Schedule string `json:"schedule" yaml:"schedule"`
TimeZone *string `json:"timeZone,omitempty" yaml:"timeZone,omitempty"`
StartingDeadlineSeconds *int64 `json:"startingDeadlineSeconds,omitempty" yaml:"startingDeadlineSeconds,omitempty"`
ConcurrencyPolicy string `json:"concurrencyPolicy,omitempty" yaml:"concurrencyPolicy,omitempty"`
Suspend *bool `json:"suspend,omitempty" yaml:"suspend,omitempty"`
JobTemplate JobTemplateSpec `json:"jobTemplate" yaml:"jobTemplate"`
SuccessfulJobsHistoryLimit *int32 `json:"successfulJobsHistoryLimit,omitempty" yaml:"successfulJobsHistoryLimit,omitempty"`
FailedJobsHistoryLimit *int32 `json:"failedJobsHistoryLimit,omitempty" yaml:"failedJobsHistoryLimit,omitempty"`
}
CronJobSpec represents the desired schedule and template for a CronJob, including concurrency policy and history limits.
type CronJobStatus ¶
type CronJobStatus struct {
Active []ObjectReference `json:"active,omitempty" yaml:"active,omitempty"`
LastScheduleTime *time.Time `json:"lastScheduleTime,omitempty" yaml:"lastScheduleTime,omitempty"`
LastSuccessfulTime *time.Time `json:"lastSuccessfulTime,omitempty" yaml:"lastSuccessfulTime,omitempty"`
}
CronJobStatus represents the observed state of a CronJob, including a list of active Jobs and the last successful schedule time.
type DaemonEndpoint ¶
type DaemonEndpoint struct {
Port int32 `json:"port" yaml:"port"`
}
DaemonEndpoint represents a TCP endpoint of a daemon running on a Node.
type DaemonSet ¶
type DaemonSet struct {
TypeMeta `json:",inline" yaml:",inline"`
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Spec DaemonSetSpec `json:"spec,omitempty" yaml:"spec,omitempty"`
Status DaemonSetStatus `json:"status,omitempty" yaml:"status,omitempty"`
}
DaemonSet represents a Kubernetes-style DaemonSet resource that ensures a copy of a pod runs on all (or selected) nodes.
type DaemonSetList ¶
type DaemonSetList struct {
TypeMeta `json:",inline" yaml:",inline"`
ListMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Items []DaemonSet `json:"items" yaml:"items"`
}
DaemonSetList represents a collection of DaemonSet resources returned in a list response.
type DaemonSetSpec ¶
type DaemonSetSpec struct {
Selector *LabelSelector `json:"selector" yaml:"selector"`
Template PodTemplateSpec `json:"template" yaml:"template"`
UpdateStrategy DaemonSetUpdateStrategy `json:"updateStrategy,omitempty" yaml:"updateStrategy,omitempty"`
MinReadySeconds int32 `json:"minReadySeconds,omitempty" yaml:"minReadySeconds,omitempty"`
RevisionHistoryLimit *int32 `json:"revisionHistoryLimit,omitempty" yaml:"revisionHistoryLimit,omitempty"`
}
DaemonSetSpec represents the desired state of a DaemonSet, including the pod template, node selector and update strategy.
type DaemonSetStatus ¶
type DaemonSetStatus struct {
CurrentNumberScheduled int32 `json:"currentNumberScheduled" yaml:"currentNumberScheduled"`
NumberMisscheduled int32 `json:"numberMisscheduled" yaml:"numberMisscheduled"`
DesiredNumberScheduled int32 `json:"desiredNumberScheduled" yaml:"desiredNumberScheduled"`
NumberReady int32 `json:"numberReady" yaml:"numberReady"`
ObservedGeneration int64 `json:"observedGeneration,omitempty" yaml:"observedGeneration,omitempty"`
UpdatedNumberScheduled int32 `json:"updatedNumberScheduled,omitempty" yaml:"updatedNumberScheduled,omitempty"`
NumberAvailable int32 `json:"numberAvailable,omitempty" yaml:"numberAvailable,omitempty"`
CollisionCount *int32 `json:"collisionCount,omitempty" yaml:"collisionCount,omitempty"`
Conditions []Condition `json:"conditions,omitempty" yaml:"conditions,omitempty"`
DaemonSetsAllowed int32 `json:"daemonSetsAllowed,omitempty" yaml:"daemonSetsAllowed,omitempty"`
}
DaemonSetStatus represents the observed state of a DaemonSet, reporting the number of pods scheduled, ready and available on nodes.
type DaemonSetUpdateStrategy ¶
type DaemonSetUpdateStrategy struct {
Type string `json:"type,omitempty" yaml:"type,omitempty"`
RollingUpdate *RollingUpdateDaemonSet `json:"rollingUpdate,omitempty" yaml:"rollingUpdate,omitempty"`
}
DaemonSetUpdateStrategy represents the strategy a DaemonSet uses to replace existing pods (rolling update or on delete).
type Deployment ¶
type Deployment struct {
TypeMeta `json:",inline" yaml:",inline"`
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Spec DeploymentSpec `json:"spec,omitempty" yaml:"spec,omitempty"`
Status DeploymentStatus `json:"status,omitempty" yaml:"status,omitempty"`
}
Deployment represents a Kubernetes-style Deployment resource that manages a replicated set of pods via a pod template.
type DeploymentCondition ¶
type DeploymentCondition struct {
Type string `json:"type" yaml:"type"`
Status string `json:"status" yaml:"status"`
LastUpdateTime time.Time `json:"lastUpdateTime,omitempty" yaml:"lastUpdateTime,omitempty"`
LastTransitionTime time.Time `json:"lastTransitionTime,omitempty" yaml:"lastTransitionTime,omitempty"`
Reason string `json:"reason,omitempty" yaml:"reason,omitempty"`
Message string `json:"message,omitempty" yaml:"message,omitempty"`
}
DeploymentCondition represents a single condition entry in a Deployment's status subresource.
type DeploymentList ¶
type DeploymentList struct {
TypeMeta `json:",inline" yaml:",inline"`
ListMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Items []Deployment `json:"items" yaml:"items"`
}
DeploymentList represents a collection of Deployment resources returned in a list response.
type DeploymentSpec ¶
type DeploymentSpec struct {
Replicas *int32 `json:"replicas,omitempty" yaml:"replicas,omitempty"`
Selector *LabelSelector `json:"selector" yaml:"selector"`
Template PodTemplateSpec `json:"template" yaml:"template"`
Strategy DeploymentStrategy `json:"strategy,omitempty" yaml:"strategy,omitempty"`
MinReadySeconds int32 `json:"minReadySeconds,omitempty" yaml:"minReadySeconds,omitempty"`
RevisionHistoryLimit *int32 `json:"revisionHistoryLimit,omitempty" yaml:"revisionHistoryLimit,omitempty"`
Paused bool `json:"paused,omitempty" yaml:"paused,omitempty"`
ProgressDeadlineSeconds *int32 `json:"progressDeadlineSeconds,omitempty" yaml:"progressDeadlineSeconds,omitempty"`
}
DeploymentSpec represents the desired state of a Deployment: replica count, label selector, pod template and rollout strategy.
type DeploymentStatus ¶
type DeploymentStatus struct {
ObservedGeneration int64 `json:"observedGeneration,omitempty" yaml:"observedGeneration,omitempty"`
Replicas int32 `json:"replicas,omitempty" yaml:"replicas,omitempty"`
UpdatedReplicas int32 `json:"updatedReplicas,omitempty" yaml:"updatedReplicas,omitempty"`
ReadyReplicas int32 `json:"readyReplicas,omitempty" yaml:"readyReplicas,omitempty"`
AvailableReplicas int32 `json:"availableReplicas,omitempty" yaml:"availableReplicas,omitempty"`
Conditions []DeploymentCondition `json:"conditions,omitempty" yaml:"conditions,omitempty"`
CollisionCount *int32 `json:"collisionCount,omitempty" yaml:"collisionCount,omitempty"`
}
DeploymentStatus represents the observed state of a Deployment, including the counts of replicas in each lifecycle phase.
type DeploymentStrategy ¶
type DeploymentStrategy struct {
Type string `json:"type,omitempty" yaml:"type,omitempty"`
RollingUpdate *RollingUpdateDeployment `json:"rollingUpdate,omitempty" yaml:"rollingUpdate,omitempty"`
}
DeploymentStrategy represents the strategy used by a Deployment to replace existing pods with new ones (recreate or rolling update).
type DownwardAPIProjection ¶
type DownwardAPIProjection struct {
Items []DownwardAPIVolumeFile `json:"items,omitempty" yaml:"items,omitempty"`
}
DownwardAPIProjection represents a list of pod or container fields to expose in a projected volume via the Downward API.
type DownwardAPIVolumeFile ¶
type DownwardAPIVolumeFile struct {
Path string `json:"path" yaml:"path"`
FieldRef *ObjectFieldSelector `json:"fieldRef,omitempty" yaml:"fieldRef,omitempty"`
ResourceFieldRef *ResourceFieldSelector `json:"resourceFieldRef,omitempty" yaml:"resourceFieldRef,omitempty"`
Mode *int32 `json:"mode,omitempty" yaml:"mode,omitempty"`
}
DownwardAPIVolumeFile represents a single file written into a DownwardAPI volume, sourced from a pod field or a container resource.
type DownwardAPIVolumeSource ¶
type DownwardAPIVolumeSource struct {
Items []DownwardAPIVolumeFile `json:"items,omitempty" yaml:"items,omitempty"`
DefaultMode *int32 `json:"defaultMode,omitempty" yaml:"defaultMode,omitempty"`
}
DownwardAPIVolumeSource represents the source of a volume populated with pod- or container-scoped metadata via the Downward API.
type EmptyDirVolumeSource ¶
type EmptyDirVolumeSource struct {
Medium string `json:"medium,omitempty" yaml:"medium,omitempty"`
SizeLimit string `json:"sizeLimit,omitempty" yaml:"sizeLimit,omitempty"`
}
EmptyDirVolumeSource represents a temporary empty directory that lives for the duration of a pod, optionally backed by a medium.
type EndpointAddress ¶
type EndpointAddress struct {
IP string `json:"ip" yaml:"ip"`
Hostname string `json:"hostname,omitempty" yaml:"hostname,omitempty"`
NodeName *string `json:"nodeName,omitempty" yaml:"nodeName,omitempty"`
TargetRef *ObjectReference `json:"targetRef,omitempty" yaml:"targetRef,omitempty"`
}
EndpointAddress represents a single address in an EndpointSubset.
type EndpointPort ¶
type EndpointPort struct {
Name string `json:"name,omitempty" yaml:"name,omitempty"`
Port int32 `json:"port" yaml:"port"`
Protocol string `json:"protocol,omitempty" yaml:"protocol,omitempty"`
AppProtocol *string `json:"appProtocol,omitempty" yaml:"appProtocol,omitempty"`
}
EndpointPort represents a port in an EndpointSubset.
type EndpointSubset ¶
type EndpointSubset struct {
Addresses []EndpointAddress `json:"addresses,omitempty" yaml:"addresses,omitempty"`
NotReadyAddresses []EndpointAddress `json:"notReadyAddresses,omitempty" yaml:"notReadyAddresses,omitempty"`
Ports []EndpointPort `json:"ports,omitempty" yaml:"ports,omitempty"`
}
EndpointSubset represents a group of addresses with a common set of ports.
type Endpoints ¶
type Endpoints struct {
TypeMeta `json:",inline" yaml:",inline"`
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Subsets []EndpointSubset `json:"subsets,omitempty" yaml:"subsets,omitempty"`
}
Endpoints represents a Kubernetes Endpoints resource.
type EnvFromSource ¶
type EnvFromSource struct {
Prefix string `json:"prefix,omitempty" yaml:"prefix,omitempty"`
ConfigMapRef *ConfigMapEnvSource `json:"configMapRef,omitempty" yaml:"configMapRef,omitempty"`
SecretRef *SecretEnvSource `json:"secretRef,omitempty" yaml:"secretRef,omitempty"`
}
EnvFromSource represents a source of environment variables (a ConfigMap or Secret) to import in bulk into a container.
type EnvVar ¶
type EnvVar struct {
Name string `json:"name" yaml:"name"`
Value string `json:"value,omitempty" yaml:"value,omitempty"`
ValueFrom *EnvVarSource `json:"valueFrom,omitempty" yaml:"valueFrom,omitempty"`
}
EnvVar represents a single environment variable injected into a container, either as a literal value or sourced from a referenced object.
type EnvVarSource ¶
type EnvVarSource struct {
FieldRef *ObjectFieldSelector `json:"fieldRef,omitempty" yaml:"fieldRef,omitempty"`
ResourceFieldRef *ResourceFieldSelector `json:"resourceFieldRef,omitempty" yaml:"resourceFieldRef,omitempty"`
ConfigMapKeyRef *ConfigMapKeySelector `json:"configMapKeyRef,omitempty" yaml:"configMapKeyRef,omitempty"`
SecretKeyRef *SecretKeySelector `json:"secretKeyRef,omitempty" yaml:"secretKeyRef,omitempty"`
}
EnvVarSource represents a source for an environment variable value: a pod field, a resource field, or a key in a ConfigMap or Secret.
type Event ¶
type Event struct {
TypeMeta `json:",inline" yaml:",inline"`
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
InvolvedObject ObjectReference `json:"involvedObject" yaml:"involvedObject"`
Reason string `json:"reason,omitempty" yaml:"reason,omitempty"`
Message string `json:"message,omitempty" yaml:"message,omitempty"`
Source EventSource `json:"source,omitempty" yaml:"source,omitempty"`
FirstTimestamp time.Time `json:"firstTimestamp,omitempty" yaml:"firstTimestamp,omitempty"`
LastTimestamp time.Time `json:"lastTimestamp,omitempty" yaml:"lastTimestamp,omitempty"`
Count int32 `json:"count,omitempty" yaml:"count,omitempty"`
Type string `json:"type,omitempty" yaml:"type,omitempty"`
Action string `json:"action,omitempty" yaml:"action,omitempty"`
ReportingController string `json:"reportingController,omitempty" yaml:"reportingController,omitempty"`
ReportingInstance string `json:"reportingInstance,omitempty" yaml:"reportingInstance,omitempty"`
}
Event represents a Kubernetes Event resource.
type EventSource ¶
type EventSource struct {
Component string `json:"component,omitempty" yaml:"component,omitempty"`
Host string `json:"host,omitempty" yaml:"host,omitempty"`
}
EventSource represents the source of a Kubernetes Event.
type ExecAction ¶
type ExecAction struct {
Command []string `json:"command,omitempty" yaml:"command,omitempty"`
}
ExecAction represents a command executed inside a container, used for probes and lifecycle hooks.
type GRPCAction ¶
type GRPCAction struct {
Port int32 `json:"port" yaml:"port"`
Service *string `json:"service,omitempty" yaml:"service,omitempty"`
}
GRPCAction represents a gRPC health-check probe against a service exposed by a container.
type HTTPGetAction ¶
type HTTPGetAction struct {
Path string `json:"path,omitempty" yaml:"path,omitempty"`
Port IntOrString `json:"port" yaml:"port"`
Host string `json:"host,omitempty" yaml:"host,omitempty"`
Scheme string `json:"scheme,omitempty" yaml:"scheme,omitempty"`
HTTPHeaders []HTTPHeader `json:"httpHeaders,omitempty" yaml:"httpHeaders,omitempty"`
}
HTTPGetAction represents an HTTP GET probe or hook against a path and port inside (or outside) the container.
type HTTPHeader ¶
type HTTPHeader struct {
Name string `json:"name" yaml:"name"`
Value string `json:"value" yaml:"value"`
}
HTTPHeader represents a custom header attached to an HTTP probe or lifecycle HTTP request.
type HostAlias ¶
type HostAlias struct {
IP string `json:"ip" yaml:"ip"`
Hostnames []string `json:"hostnames,omitempty" yaml:"hostnames,omitempty"`
}
HostAlias represents an entry added to a pod's /etc/hosts mapping an IP to one or more hostnames.
type HostIP ¶
type HostIP struct {
IP string `json:"ip" yaml:"ip"`
}
HostIP represents the IP address of the host on which a pod is running, as exposed in PodStatus.
type HostPathVolumeSource ¶
type HostPathVolumeSource struct {
Path string `json:"path" yaml:"path"`
Type *string `json:"type,omitempty" yaml:"type,omitempty"`
}
HostPathVolumeSource represents a host filesystem path mounted into a pod, with an optional type qualifier.
type IntOrString ¶
type IntOrString struct {
Type int `json:"type"`
IntVal int32 `json:"intVal,omitempty"`
StrVal string `json:"strVal,omitempty"`
}
IntOrString represents a value that can be encoded either as an integer or a string (for fields like ports or quantities).
type Job ¶
type Job struct {
TypeMeta `json:",inline" yaml:",inline"`
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Spec JobSpec `json:"spec,omitempty" yaml:"spec,omitempty"`
Status JobStatus `json:"status,omitempty" yaml:"status,omitempty"`
}
Job represents a Kubernetes-style Job resource that runs a set of pods to completion as a one-off task.
type JobList ¶
type JobList struct {
TypeMeta `json:",inline" yaml:",inline"`
ListMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Items []Job `json:"items" yaml:"items"`
}
JobList represents a collection of Job resources returned in a list response.
type JobSpec ¶
type JobSpec struct {
Parallelism *int32 `json:"parallelism,omitempty" yaml:"parallelism,omitempty"`
Completions *int32 `json:"completions,omitempty" yaml:"completions,omitempty"`
ActiveDeadlineSeconds *int64 `json:"activeDeadlineSeconds,omitempty" yaml:"activeDeadlineSeconds,omitempty"`
PodFailurePolicy *PodFailurePolicy `json:"podFailurePolicy,omitempty" yaml:"podFailurePolicy,omitempty"`
BackoffLimit *int32 `json:"backoffLimit,omitempty" yaml:"backoffLimit,omitempty"`
Selector *LabelSelector `json:"selector,omitempty" yaml:"selector,omitempty"`
ManualSelector *bool `json:"manualSelector,omitempty" yaml:"manualSelector,omitempty"`
Template PodTemplateSpec `json:"template" yaml:"template"`
TTLSecondsAfterFinished *int32 `json:"ttlSecondsAfterFinished,omitempty" yaml:"ttlSecondsAfterFinished,omitempty"`
CompletionMode *string `json:"completionMode,omitempty" yaml:"completionMode,omitempty"`
Suspend *bool `json:"suspend,omitempty" yaml:"suspend,omitempty"`
}
JobSpec represents the desired state of a Job: parallelism, completion count, backoff limit and pod template.
type JobStatus ¶
type JobStatus struct {
Conditions []Condition `json:"conditions,omitempty" yaml:"conditions,omitempty"`
StartTime *time.Time `json:"startTime,omitempty" yaml:"startTime,omitempty"`
CompletionTime *time.Time `json:"completionTime,omitempty" yaml:"completionTime,omitempty"`
Active int32 `json:"active,omitempty" yaml:"active,omitempty"`
Succeeded int32 `json:"succeeded,omitempty" yaml:"succeeded,omitempty"`
Failed int32 `json:"failed,omitempty" yaml:"failed,omitempty"`
CompletedIndexes string `json:"completedIndexes,omitempty" yaml:"completedIndexes,omitempty"`
UncountedTerminatedPods *UncountedTerminatedPods `json:"uncountedTerminatedPods,omitempty" yaml:"uncountedTerminatedPods,omitempty"`
Ready *int32 `json:"ready,omitempty" yaml:"ready,omitempty"`
}
JobStatus represents the observed state of a Job, tracking active, succeeded and failed pod counts and timing information.
type JobTemplateSpec ¶
type JobTemplateSpec struct {
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Spec JobSpec `json:"spec,omitempty" yaml:"spec,omitempty"`
}
JobTemplateSpec represents the template used by a CronJob to create new Jobs on each scheduled run.
type KeyToPath ¶
type KeyToPath struct {
Key string `json:"key" yaml:"key"`
Path string `json:"path" yaml:"path"`
Mode *int32 `json:"mode,omitempty" yaml:"mode,omitempty"`
}
KeyToPath represents a mapping from a key in a ConfigMap or Secret to a specific file path inside a volume.
type LabelSelector ¶
type LabelSelector struct {
MatchLabels map[string]string `json:"matchLabels,omitempty" yaml:"matchLabels,omitempty"`
MatchExpressions []LabelSelectorRequirement `json:"matchExpressions,omitempty" yaml:"matchExpressions,omitempty"`
}
LabelSelector represents a label-based selection criterion used to match a set of Kubernetes-style resources.
type LabelSelectorRequirement ¶
type LabelSelectorRequirement struct {
Key string `json:"key" yaml:"key"`
Operator string `json:"operator" yaml:"operator"`
Values []string `json:"values,omitempty" yaml:"values,omitempty"`
}
LabelSelectorRequirement represents a single label-key/operator/values expression that composes a LabelSelector.
type Lifecycle ¶
type Lifecycle struct {
PostStart *LifecycleHandler `json:"postStart,omitempty" yaml:"postStart,omitempty"`
PreStop *LifecycleHandler `json:"preStop,omitempty" yaml:"preStop,omitempty"`
}
Lifecycle represents the lifecycle hooks (postStart, preStop) that a container can register with the runtime.
type LifecycleHandler ¶
type LifecycleHandler struct {
Exec *ExecAction `json:"exec,omitempty" yaml:"exec,omitempty"`
HTTPGet *HTTPGetAction `json:"httpGet,omitempty" yaml:"httpGet,omitempty"`
TCPSocket *TCPSocketAction `json:"tcpSocket,omitempty" yaml:"tcpSocket,omitempty"`
}
LifecycleHandler represents a single lifecycle hook action, using one of exec, HTTP GET or TCP socket invocation modes.
type ListMeta ¶
type ListMeta struct {
ResourceVersion string `json:"resourceVersion,omitempty" yaml:"resourceVersion,omitempty"`
Continue string `json:"continue,omitempty" yaml:"continue,omitempty"`
}
ListMeta represents the pagination metadata returned with collection responses (resource version and continuation token).
type LoadBalancerIngress ¶
type LoadBalancerIngress struct {
IP string `json:"ip,omitempty" yaml:"ip,omitempty"`
Hostname string `json:"hostname,omitempty" yaml:"hostname,omitempty"`
IPMode *string `json:"ipMode,omitempty" yaml:"ipMode,omitempty"`
Ports []PortStatus `json:"ports,omitempty" yaml:"ports,omitempty"`
}
LoadBalancerIngress represents an ingress point for a load balancer.
type LoadBalancerStatus ¶
type LoadBalancerStatus struct {
Ingress []LoadBalancerIngress `json:"ingress,omitempty" yaml:"ingress,omitempty"`
}
LoadBalancerStatus represents the status of a load balancer assigned to a Service.
type LocalObjectReference ¶
type LocalObjectReference struct {
Name string `json:"name,omitempty" yaml:"name,omitempty"`
}
LocalObjectReference represents a reference to another object in the same namespace, identified by its name only.
type NFSVolumeSource ¶
type NFSVolumeSource struct {
Server string `json:"server" yaml:"server"`
Path string `json:"path" yaml:"path"`
ReadOnly bool `json:"readOnly,omitempty" yaml:"readOnly,omitempty"`
}
NFSVolumeSource represents an NFS mount that backs a volume.
type Namespace ¶
type Namespace struct {
TypeMeta `json:",inline" yaml:",inline"`
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Spec NamespaceSpec `json:"spec,omitempty" yaml:"spec,omitempty"`
Status NamespaceStatus `json:"status,omitempty" yaml:"status,omitempty"`
}
Namespace represents a Kubernetes Namespace resource.
type NamespaceList ¶
type NamespaceList struct {
TypeMeta `json:",inline" yaml:",inline"`
ListMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Items []Namespace `json:"items" yaml:"items"`
}
NamespaceList is a list of Namespace resources.
type NamespaceSpec ¶
type NamespaceSpec struct {
Finalizers []string `json:"finalizers,omitempty" yaml:"finalizers,omitempty"`
}
NamespaceSpec defines the desired state of a Namespace.
type NamespaceStatus ¶
type NamespaceStatus struct {
Phase string `json:"phase,omitempty" yaml:"phase,omitempty"`
Conditions []Condition `json:"conditions,omitempty" yaml:"conditions,omitempty"`
}
NamespaceStatus represents the observed state of a Namespace.
type Node ¶
type Node struct {
TypeMeta `json:",inline" yaml:",inline"`
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Spec NodeSpec `json:"spec,omitempty" yaml:"spec,omitempty"`
Status NodeStatus `json:"status,omitempty" yaml:"status,omitempty"`
}
Node represents a Kubernetes Node resource.
type NodeAddress ¶
type NodeAddress struct {
Type string `json:"type" yaml:"type"`
Address string `json:"address" yaml:"address"`
}
NodeAddress represents a network address of a Node.
type NodeAffinity ¶
type NodeAffinity struct {
RequiredDuringSchedulingIgnoredDuringExecution *NodeSelector `` /* 127-byte string literal not displayed */
PreferredDuringSchedulingIgnoredDuringExecution []PreferredSchedulingTerm `` /* 129-byte string literal not displayed */
}
NodeAffinity represents the node affinity rules applied to a pod during scheduling.
type NodeCondition ¶
type NodeCondition struct {
Type string `json:"type" yaml:"type"`
Status string `json:"status" yaml:"status"`
LastHeartbeatTime time.Time `json:"lastHeartbeatTime,omitempty" yaml:"lastHeartbeatTime,omitempty"`
LastTransitionTime time.Time `json:"lastTransitionTime,omitempty" yaml:"lastTransitionTime,omitempty"`
Reason string `json:"reason,omitempty" yaml:"reason,omitempty"`
Message string `json:"message,omitempty" yaml:"message,omitempty"`
}
NodeCondition represents a condition observed on a Node.
type NodeDaemonEndpoints ¶
type NodeDaemonEndpoints struct {
KubeletEndpoint DaemonEndpoint `json:"kubeletEndpoint,omitempty" yaml:"kubeletEndpoint,omitempty"`
}
NodeDaemonEndpoints represents the daemon endpoints exposed by a Node.
type NodeList ¶
type NodeList struct {
TypeMeta `json:",inline" yaml:",inline"`
ListMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Items []Node `json:"items" yaml:"items"`
}
NodeList is a list of Node resources.
type NodeSelector ¶
type NodeSelector struct {
NodeSelectorTerms []NodeSelectorTerm `json:"nodeSelectorTerms" yaml:"nodeSelectorTerms"`
}
NodeSelector represents a list of node selector terms, any of which must be satisfied for a pod to be scheduled on a node.
type NodeSelectorRequirement ¶
type NodeSelectorRequirement struct {
Key string `json:"key" yaml:"key"`
Operator string `json:"operator" yaml:"operator"`
Values []string `json:"values,omitempty" yaml:"values,omitempty"`
}
NodeSelectorRequirement represents a single key/operator/values rule used to match a node label or field.
type NodeSelectorTerm ¶
type NodeSelectorTerm struct {
MatchExpressions []NodeSelectorRequirement `json:"matchExpressions,omitempty" yaml:"matchExpressions,omitempty"`
MatchFields []NodeSelectorRequirement `json:"matchFields,omitempty" yaml:"matchFields,omitempty"`
}
NodeSelectorTerm represents a single term in a NodeSelector, with a set of match expressions and field match requirements.
type NodeSpec ¶
type NodeSpec struct {
PodCIDR string `json:"podCIDR,omitempty" yaml:"podCIDR,omitempty"`
PodCIDRs []string `json:"podCIDRs,omitempty" yaml:"podCIDRs,omitempty"`
ProviderID string `json:"providerID,omitempty" yaml:"providerID,omitempty"`
Unschedulable bool `json:"unschedulable,omitempty" yaml:"unschedulable,omitempty"`
Taints []Taint `json:"taints,omitempty" yaml:"taints,omitempty"`
}
NodeSpec defines the desired state of a Node.
type NodeStatus ¶
type NodeStatus struct {
Capacity ResourceList `json:"capacity,omitempty" yaml:"capacity,omitempty"`
Allocatable ResourceList `json:"allocatable,omitempty" yaml:"allocatable,omitempty"`
Phase string `json:"phase,omitempty" yaml:"phase,omitempty"`
Conditions []NodeCondition `json:"conditions,omitempty" yaml:"conditions,omitempty"`
Addresses []NodeAddress `json:"addresses,omitempty" yaml:"addresses,omitempty"`
NodeInfo NodeSystemInfo `json:"nodeInfo,omitempty" yaml:"nodeInfo,omitempty"`
Images []ContainerImage `json:"images,omitempty" yaml:"images,omitempty"`
DaemonEndpoints NodeDaemonEndpoints `json:"daemonEndpoints,omitempty" yaml:"daemonEndpoints,omitempty"`
}
NodeStatus represents the observed state of a Node.
type NodeSystemInfo ¶
type NodeSystemInfo struct {
MachineID string `json:"machineID" yaml:"machineID"`
SystemUUID string `json:"systemUUID" yaml:"systemUUID"`
BootID string `json:"bootID" yaml:"bootID"`
KernelVersion string `json:"kernelVersion" yaml:"kernelVersion"`
OSImage string `json:"osImage" yaml:"osImage"`
ContainerRuntimeVersion string `json:"containerRuntimeVersion" yaml:"containerRuntimeVersion"`
KubeletVersion string `json:"kubeletVersion" yaml:"kubeletVersion"`
KubeProxyVersion string `json:"kubeProxyVersion" yaml:"kubeProxyVersion"`
OperatingSystem string `json:"operatingSystem" yaml:"operatingSystem"`
Architecture string `json:"architecture" yaml:"architecture"`
}
NodeSystemInfo represents system information about a Node.
type ObjectFieldSelector ¶
type ObjectFieldSelector struct {
FieldPath string `json:"fieldPath" yaml:"fieldPath"`
APIVersion string `json:"apiVersion,omitempty" yaml:"apiVersion,omitempty"`
}
ObjectFieldSelector represents a field of a referenced Kubernetes object (typically the pod itself) used to populate an env value.
type ObjectMeta ¶
type ObjectMeta struct {
Name string `json:"name,omitempty" yaml:"name,omitempty"`
Namespace string `json:"namespace,omitempty" yaml:"namespace,omitempty"`
UID string `json:"uid,omitempty" yaml:"uid,omitempty"`
ResourceVersion string `json:"resourceVersion,omitempty" yaml:"resourceVersion,omitempty"`
Generation int64 `json:"generation,omitempty" yaml:"generation,omitempty"`
CreationTimestamp time.Time `json:"creationTimestamp,omitempty" yaml:"creationTimestamp,omitempty"`
DeletionTimestamp *time.Time `json:"deletionTimestamp,omitempty" yaml:"deletionTimestamp,omitempty"`
Labels map[string]string `json:"labels,omitempty" yaml:"labels,omitempty"`
Annotations map[string]string `json:"annotations,omitempty" yaml:"annotations,omitempty"`
OwnerReferences []OwnerReference `json:"ownerReferences,omitempty" yaml:"ownerReferences,omitempty"`
Finalizers []string `json:"finalizers,omitempty" yaml:"finalizers,omitempty"`
}
ObjectMeta represents the standard metadata attached to every Kubernetes-style object: identity, namespace, labels, owner references and lifecycle timestamps.
type ObjectReference ¶
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"`
}
ObjectReference represents a generic reference to any Kubernetes-style object, identified by kind, namespace, name and UID.
type OwnerReference ¶
type OwnerReference struct {
APIVersion string `json:"apiVersion" yaml:"apiVersion"`
Kind string `json:"kind" yaml:"kind"`
Name string `json:"name" yaml:"name"`
UID string `json:"uid" yaml:"uid"`
Controller *bool `json:"controller,omitempty" yaml:"controller,omitempty"`
}
OwnerReference represents a pointer to a parent Kubernetes-style object that owns the current resource.
type PersistentVolume ¶
type PersistentVolume struct {
TypeMeta `json:",inline" yaml:",inline"`
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Spec PersistentVolumeSpec `json:"spec,omitempty" yaml:"spec,omitempty"`
Status PersistentVolumeStatus `json:"status,omitempty" yaml:"status,omitempty"`
}
PersistentVolume represents a Kubernetes PersistentVolume resource.
type PersistentVolumeClaim ¶
type PersistentVolumeClaim struct {
TypeMeta `json:",inline" yaml:",inline"`
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Spec PersistentVolumeClaimSpec `json:"spec,omitempty" yaml:"spec,omitempty"`
Status PersistentVolumeClaimStatus `json:"status,omitempty" yaml:"status,omitempty"`
}
PersistentVolumeClaim represents a Kubernetes PersistentVolumeClaim resource.
type PersistentVolumeClaimList ¶
type PersistentVolumeClaimList struct {
TypeMeta `json:",inline" yaml:",inline"`
ListMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Items []PersistentVolumeClaim `json:"items" yaml:"items"`
}
PersistentVolumeClaimList is a list of PersistentVolumeClaim resources.
type PersistentVolumeClaimSpec ¶
type PersistentVolumeClaimSpec struct {
AccessModes []string `json:"accessModes,omitempty" yaml:"accessModes,omitempty"`
Selector *LabelSelector `json:"selector,omitempty" yaml:"selector,omitempty"`
Resources ResourceRequirements `json:"resources,omitempty" yaml:"resources,omitempty"`
VolumeName string `json:"volumeName,omitempty" yaml:"volumeName,omitempty"`
StorageClassName *string `json:"storageClassName,omitempty" yaml:"storageClassName,omitempty"`
VolumeMode *string `json:"volumeMode,omitempty" yaml:"volumeMode,omitempty"`
}
PersistentVolumeClaimSpec defines the desired state of a PersistentVolumeClaim.
type PersistentVolumeClaimStatus ¶
type PersistentVolumeClaimStatus struct {
Phase string `json:"phase,omitempty" yaml:"phase,omitempty"`
AccessModes []string `json:"accessModes,omitempty" yaml:"accessModes,omitempty"`
Capacity ResourceList `json:"capacity,omitempty" yaml:"capacity,omitempty"`
Conditions []Condition `json:"conditions,omitempty" yaml:"conditions,omitempty"`
}
PersistentVolumeClaimStatus represents the observed state of a PersistentVolumeClaim.
type PersistentVolumeClaimVolumeSource ¶
type PersistentVolumeClaimVolumeSource struct {
ClaimName string `json:"claimName" yaml:"claimName"`
ReadOnly bool `json:"readOnly,omitempty" yaml:"readOnly,omitempty"`
}
PersistentVolumeClaimVolumeSource represents a reference to a PersistentVolumeClaim that is mounted as a volume in a pod.
type PersistentVolumeList ¶
type PersistentVolumeList struct {
TypeMeta `json:",inline" yaml:",inline"`
ListMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Items []PersistentVolume `json:"items" yaml:"items"`
}
PersistentVolumeList is a list of PersistentVolume resources.
type PersistentVolumeSpec ¶
type PersistentVolumeSpec struct {
Capacity ResourceList `json:"capacity,omitempty" yaml:"capacity,omitempty"`
AccessModes []string `json:"accessModes,omitempty" yaml:"accessModes,omitempty"`
PersistentVolumeReclaimPolicy string `json:"persistentVolumeReclaimPolicy,omitempty" yaml:"persistentVolumeReclaimPolicy,omitempty"`
StorageClassName string `json:"storageClassName,omitempty" yaml:"storageClassName,omitempty"`
VolumeMode *string `json:"volumeMode,omitempty" yaml:"volumeMode,omitempty"`
ClaimRef *ObjectReference `json:"claimRef,omitempty" yaml:"claimRef,omitempty"`
HostPath *HostPathVolumeSource `json:"hostPath,omitempty" yaml:"hostPath,omitempty"`
NFS *NFSVolumeSource `json:"nfs,omitempty" yaml:"nfs,omitempty"`
}
PersistentVolumeSpec defines the desired state of a PersistentVolume.
type PersistentVolumeStatus ¶
type PersistentVolumeStatus struct {
Phase string `json:"phase,omitempty" yaml:"phase,omitempty"`
Message string `json:"message,omitempty" yaml:"message,omitempty"`
Reason string `json:"reason,omitempty" yaml:"reason,omitempty"`
}
PersistentVolumeStatus represents the observed state of a PersistentVolume.
type Pod ¶
type Pod struct {
TypeMeta `json:",inline" yaml:",inline"`
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Spec PodSpec `json:"spec,omitempty" yaml:"spec,omitempty"`
Status PodStatus `json:"status,omitempty" yaml:"status,omitempty"`
}
Pod represents a Kubernetes-style Pod resource, the smallest deployable unit that wraps one or more co-scheduled containers.
type PodAffinity ¶
type PodAffinity struct {
RequiredDuringSchedulingIgnoredDuringExecution []PodAffinityTerm `` /* 127-byte string literal not displayed */
PreferredDuringSchedulingIgnoredDuringExecution []WeightedPodAffinityTerm `` /* 129-byte string literal not displayed */
}
PodAffinity represents the pod affinity rules applied to a pod during scheduling, indicating which pods it should be co-located with.
type PodAffinityTerm ¶
type PodAffinityTerm struct {
LabelSelector *LabelSelector `json:"labelSelector,omitempty" yaml:"labelSelector,omitempty"`
TopologyKey string `json:"topologyKey" yaml:"topologyKey"`
Namespaces []string `json:"namespaces,omitempty" yaml:"namespaces,omitempty"`
}
PodAffinityTerm represents a single pod affinity or anti-affinity rule, including its label selector and topology key.
type PodAntiAffinity ¶
type PodAntiAffinity struct {
RequiredDuringSchedulingIgnoredDuringExecution []PodAffinityTerm `` /* 127-byte string literal not displayed */
PreferredDuringSchedulingIgnoredDuringExecution []WeightedPodAffinityTerm `` /* 129-byte string literal not displayed */
}
PodAntiAffinity represents the pod anti-affinity rules applied to a pod during scheduling, indicating which pods it should avoid.
type PodCondition ¶
type PodCondition struct {
Type string `json:"type" yaml:"type"`
Status string `json:"status" yaml:"status"`
LastProbeTime time.Time `json:"lastProbeTime,omitempty" yaml:"lastProbeTime,omitempty"`
LastTransitionTime time.Time `json:"lastTransitionTime,omitempty" yaml:"lastTransitionTime,omitempty"`
Reason string `json:"reason,omitempty" yaml:"reason,omitempty"`
Message string `json:"message,omitempty" yaml:"message,omitempty"`
}
PodCondition represents a single condition attached to a Pod's status, describing a transition the pod has gone through.
type PodFailurePolicy ¶
type PodFailurePolicy struct {
Rules []PodFailurePolicyRule `json:"rules" yaml:"rules"`
}
PodFailurePolicy represents the policy a Job applies to handle pod failures, expressed as a list of PodFailurePolicyRule entries.
type PodFailurePolicyOnExitCodesRequirement ¶
type PodFailurePolicyOnExitCodesRequirement struct {
ContainerName *string `json:"containerName,omitempty" yaml:"containerName,omitempty"`
Operator string `json:"operator" yaml:"operator"`
Values []int32 `json:"values" yaml:"values"`
}
PodFailurePolicyOnExitCodesRequirement represents the requirement on container exit codes that triggers a PodFailurePolicyRule.
type PodFailurePolicyOnPodConditionsPattern ¶
type PodFailurePolicyOnPodConditionsPattern struct {
Type string `json:"type" yaml:"type"`
Status string `json:"status" yaml:"status"`
}
PodFailurePolicyOnPodConditionsPattern represents a pod condition pattern that, when matched, triggers a PodFailurePolicyRule.
type PodFailurePolicyRule ¶
type PodFailurePolicyRule struct {
Action string `json:"action" yaml:"action"`
OnExitCodes *PodFailurePolicyOnExitCodesRequirement `json:"onExitCodes,omitempty" yaml:"onExitCodes,omitempty"`
OnPodConditions []PodFailurePolicyOnPodConditionsPattern `json:"onPodConditions,omitempty" yaml:"onPodConditions,omitempty"`
}
PodFailurePolicyRule represents a single rule that matches pod failures and decides which counter they should be counted against.
type PodIP ¶
type PodIP struct {
IP string `json:"ip" yaml:"ip"`
}
PodIP represents a single IP address assigned to a pod, as exposed in PodStatus (one entry per IP family).
type PodList ¶
type PodList struct {
TypeMeta `json:",inline" yaml:",inline"`
ListMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Items []Pod `json:"items" yaml:"items"`
}
PodList represents a collection of Pod resources returned in a list response.
type PodSecurityContext ¶
type PodSecurityContext struct {
RunAsUser *int64 `json:"runAsUser,omitempty" yaml:"runAsUser,omitempty"`
RunAsGroup *int64 `json:"runAsGroup,omitempty" yaml:"runAsGroup,omitempty"`
RunAsNonRoot *bool `json:"runAsNonRoot,omitempty" yaml:"runAsNonRoot,omitempty"`
FSGroup *int64 `json:"fsGroup,omitempty" yaml:"fsGroup,omitempty"`
SupplementalGroups []int64 `json:"supplementalGroups,omitempty" yaml:"supplementalGroups,omitempty"`
Sysctls []Sysctl `json:"sysctls,omitempty" yaml:"sysctls,omitempty"`
}
PodSecurityContext represents security settings applied at the pod level (UID, GID, fs group, sysctls, etc.).
type PodSpec ¶
type PodSpec struct {
Containers []Container `json:"containers" yaml:"containers"`
InitContainers []Container `json:"initContainers,omitempty" yaml:"initContainers,omitempty"`
Volumes []Volume `json:"volumes,omitempty" yaml:"volumes,omitempty"`
ServiceAccountName string `json:"serviceAccountName,omitempty" yaml:"serviceAccountName,omitempty"`
NodeName string `json:"nodeName,omitempty" yaml:"nodeName,omitempty"`
NodeSelector map[string]string `json:"nodeSelector,omitempty" yaml:"nodeSelector,omitempty"`
HostNetwork bool `json:"hostNetwork,omitempty" yaml:"hostNetwork,omitempty"`
Hostname string `json:"hostname,omitempty" yaml:"hostname,omitempty"`
Subdomain string `json:"subdomain,omitempty" yaml:"subdomain,omitempty"`
DNSPolicy string `json:"dnsPolicy,omitempty" yaml:"dnsPolicy,omitempty"`
RestartPolicy string `json:"restartPolicy,omitempty" yaml:"restartPolicy,omitempty"`
TerminationGracePeriodSeconds *int64 `json:"terminationGracePeriodSeconds,omitempty" yaml:"terminationGracePeriodSeconds,omitempty"`
Tolerations []Toleration `json:"tolerations,omitempty" yaml:"tolerations,omitempty"`
Affinity *Affinity `json:"affinity,omitempty" yaml:"affinity,omitempty"`
SecurityContext *PodSecurityContext `json:"securityContext,omitempty" yaml:"securityContext,omitempty"`
ImagePullSecrets []LocalObjectReference `json:"imagePullSecrets,omitempty" yaml:"imagePullSecrets,omitempty"`
PriorityClassName string `json:"priorityClassName,omitempty" yaml:"priorityClassName,omitempty"`
Priority *int32 `json:"priority,omitempty" yaml:"priority,omitempty"`
RuntimeClassName *string `json:"runtimeClassName,omitempty" yaml:"runtimeClassName,omitempty"`
SchedulerName string `json:"schedulerName,omitempty" yaml:"schedulerName,omitempty"`
ActiveDeadlineSeconds *int64 `json:"activeDeadlineSeconds,omitempty" yaml:"activeDeadlineSeconds,omitempty"`
AutomountServiceAccountToken *bool `json:"automountServiceAccountToken,omitempty" yaml:"automountServiceAccountToken,omitempty"`
EnableServiceLinks *bool `json:"enableServiceLinks,omitempty" yaml:"enableServiceLinks,omitempty"`
HostAliases []HostAlias `json:"hostAliases,omitempty" yaml:"hostAliases,omitempty"`
TopologySpreadConstraints []TopologySpreadConstraint `json:"topologySpreadConstraints,omitempty" yaml:"topologySpreadConstraints,omitempty"`
}
PodSpec represents the desired state of a Pod: the containers to run, volumes, scheduling preferences and security context.
type PodStatus ¶
type PodStatus struct {
Phase string `json:"phase,omitempty" yaml:"phase,omitempty"`
Conditions []PodCondition `json:"conditions,omitempty" yaml:"conditions,omitempty"`
Message string `json:"message,omitempty" yaml:"message,omitempty"`
Reason string `json:"reason,omitempty" yaml:"reason,omitempty"`
HostIP string `json:"hostIP,omitempty" yaml:"hostIP,omitempty"`
HostIPs []HostIP `json:"hostIPs,omitempty" yaml:"hostIPs,omitempty"`
PodIP string `json:"podIP,omitempty" yaml:"podIP,omitempty"`
PodIPs []PodIP `json:"podIPs,omitempty" yaml:"podIPs,omitempty"`
StartTime *time.Time `json:"startTime,omitempty" yaml:"startTime,omitempty"`
InitContainerStatuses []ContainerStatus `json:"initContainerStatuses,omitempty" yaml:"initContainerStatuses,omitempty"`
ContainerStatuses []ContainerStatus `json:"containerStatuses,omitempty" yaml:"containerStatuses,omitempty"`
QOSClass string `json:"qosClass,omitempty" yaml:"qosClass,omitempty"`
NominatedNodeName string `json:"nominatedNodeName,omitempty" yaml:"nominatedNodeName,omitempty"`
}
PodStatus represents the observed state of a Pod: its phase, conditions, IP addresses and per-container statuses.
type PodTemplateSpec ¶
type PodTemplateSpec struct {
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Spec PodSpec `json:"spec,omitempty" yaml:"spec,omitempty"`
}
PodTemplateSpec represents the template used by controllers to create new pods, including the pod metadata and pod spec.
type PortStatus ¶
type PortStatus struct {
Port int32 `json:"port" yaml:"port"`
Protocol string `json:"protocol" yaml:"protocol"`
Error *string `json:"error,omitempty" yaml:"error,omitempty"`
}
PortStatus represents the status of a port exposed by a load balancer.
type PreferredSchedulingTerm ¶
type PreferredSchedulingTerm struct {
Weight int32 `json:"weight" yaml:"weight"`
Preference NodeSelectorTerm `json:"preference" yaml:"preference"`
}
PreferredSchedulingTerm represents a node selection preference with a weight, used by NodeAffinity's preferred-during-scheduling rules.
type Probe ¶
type Probe struct {
ProbeHandler `json:",inline" yaml:",inline"`
InitialDelaySeconds int32 `json:"initialDelaySeconds,omitempty" yaml:"initialDelaySeconds,omitempty"`
TimeoutSeconds int32 `json:"timeoutSeconds,omitempty" yaml:"timeoutSeconds,omitempty"`
PeriodSeconds int32 `json:"periodSeconds,omitempty" yaml:"periodSeconds,omitempty"`
SuccessThreshold int32 `json:"successThreshold,omitempty" yaml:"successThreshold,omitempty"`
FailureThreshold int32 `json:"failureThreshold,omitempty" yaml:"failureThreshold,omitempty"`
}
Probe represents a health check (liveness, readiness or startup) for a container, including its handler and timing parameters.
type ProbeHandler ¶
type ProbeHandler struct {
Exec *ExecAction `json:"exec,omitempty" yaml:"exec,omitempty"`
HTTPGet *HTTPGetAction `json:"httpGet,omitempty" yaml:"httpGet,omitempty"`
TCPSocket *TCPSocketAction `json:"tcpSocket,omitempty" yaml:"tcpSocket,omitempty"`
GRPC *GRPCAction `json:"grpc,omitempty" yaml:"grpc,omitempty"`
}
ProbeHandler represents the action executed by a Probe: exec, HTTP GET, TCP socket, or gRPC health check.
type ProjectedVolumeSource ¶
type ProjectedVolumeSource struct {
Sources []VolumeProjection `json:"sources,omitempty" yaml:"sources,omitempty"`
DefaultMode *int32 `json:"defaultMode,omitempty" yaml:"defaultMode,omitempty"`
}
ProjectedVolumeSource represents a list of volume sources that are projected into the same directory in a pod.
type ReplicaSet ¶
type ReplicaSet struct {
TypeMeta `json:",inline" yaml:",inline"`
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Spec ReplicaSetSpec `json:"spec,omitempty" yaml:"spec,omitempty"`
Status ReplicaSetStatus `json:"status,omitempty" yaml:"status,omitempty"`
}
ReplicaSet represents a Kubernetes-style ReplicaSet resource that maintains a stable set of replica pods at any given time.
type ReplicaSetCondition ¶
type ReplicaSetCondition struct {
Type string `json:"type" yaml:"type"`
Status string `json:"status" yaml:"status"`
LastTransitionTime time.Time `json:"lastTransitionTime,omitempty" yaml:"lastTransitionTime,omitempty"`
Reason string `json:"reason,omitempty" yaml:"reason,omitempty"`
Message string `json:"message,omitempty" yaml:"message,omitempty"`
}
ReplicaSetCondition represents a single condition entry in a ReplicaSet's status subresource.
type ReplicaSetList ¶
type ReplicaSetList struct {
TypeMeta `json:",inline" yaml:",inline"`
ListMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Items []ReplicaSet `json:"items" yaml:"items"`
}
ReplicaSetList represents a collection of ReplicaSet resources returned in a list response.
type ReplicaSetSpec ¶
type ReplicaSetSpec struct {
Replicas *int32 `json:"replicas,omitempty" yaml:"replicas,omitempty"`
MinReadySeconds int32 `json:"minReadySeconds,omitempty" yaml:"minReadySeconds,omitempty"`
Selector *LabelSelector `json:"selector" yaml:"selector"`
Template PodTemplateSpec `json:"template,omitempty" yaml:"template,omitempty"`
}
ReplicaSetSpec represents the desired state of a ReplicaSet: the number of replicas, the label selector and the pod template.
type ReplicaSetStatus ¶
type ReplicaSetStatus struct {
Replicas int32 `json:"replicas" yaml:"replicas"`
FullyLabeledReplicas int32 `json:"fullyLabeledReplicas,omitempty" yaml:"fullyLabeledReplicas,omitempty"`
ReadyReplicas int32 `json:"readyReplicas,omitempty" yaml:"readyReplicas,omitempty"`
AvailableReplicas int32 `json:"availableReplicas,omitempty" yaml:"availableReplicas,omitempty"`
ObservedGeneration int64 `json:"observedGeneration,omitempty" yaml:"observedGeneration,omitempty"`
Conditions []ReplicaSetCondition `json:"conditions,omitempty" yaml:"conditions,omitempty"`
}
ReplicaSetStatus represents the observed state of a ReplicaSet, including the number of ready, fully labeled and available replicas.
type ResourceFieldSelector ¶
type ResourceFieldSelector struct {
Resource string `json:"resource" yaml:"resource"`
ContainerName string `json:"containerName,omitempty" yaml:"containerName,omitempty"`
Divisor string `json:"divisor,omitempty" yaml:"divisor,omitempty"`
}
ResourceFieldSelector represents a container resource (CPU, memory) whose value is exposed as an environment variable.
type ResourceList ¶
ResourceList represents a map of resource names to quantity strings (e.g. "cpu": "100m", "memory": "256Mi").
type ResourceRequirements ¶
type ResourceRequirements struct {
Limits ResourceList `json:"limits,omitempty" yaml:"limits,omitempty"`
Requests ResourceList `json:"requests,omitempty" yaml:"requests,omitempty"`
}
ResourceRequirements represents the compute resource limits and requests (CPU, memory, etc.) requested for a container.
type RollingUpdateDaemonSet ¶
type RollingUpdateDaemonSet struct {
MaxSurge *IntOrString `json:"maxSurge,omitempty" yaml:"maxSurge,omitempty"`
}
RollingUpdateDaemonSet represents the parameters controlling the rolling update of pods in a DaemonSet.
type RollingUpdateDeployment ¶
type RollingUpdateDeployment struct {
MaxSurge *IntOrString `json:"maxSurge,omitempty" yaml:"maxSurge,omitempty"`
}
RollingUpdateDeployment represents the parameters that control the rolling-update strategy of a Deployment (max surge / max unavailable).
type RollingUpdateStatefulSetStrategy ¶
type RollingUpdateStatefulSetStrategy struct {
Partition *int32 `json:"partition,omitempty" yaml:"partition,omitempty"`
}
RollingUpdateStatefulSetStrategy represents the parameters controlling the rolling update of pods in a StatefulSet.
type SELinuxOptions ¶
type SELinuxOptions struct {
User string `json:"user,omitempty" yaml:"user,omitempty"`
Role string `json:"role,omitempty" yaml:"role,omitempty"`
Type string `json:"type,omitempty" yaml:"type,omitempty"`
Level string `json:"level,omitempty" yaml:"level,omitempty"`
}
SELinuxOptions represents the SELinux labels applied to a container.
type SeccompProfile ¶
type SeccompProfile struct {
Type string `json:"type" yaml:"type"`
LocalhostProfile *string `json:"localhostProfile,omitempty" yaml:"localhostProfile,omitempty"`
}
SeccompProfile represents a seccomp profile applied to a container, either a runtime default or a localhost-hosted profile.
type Secret ¶
type Secret struct {
TypeMeta `json:",inline" yaml:",inline"`
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Data map[string][]byte `json:"data,omitempty" yaml:"data,omitempty"`
StringData map[string]string `json:"stringData,omitempty" yaml:"stringData,omitempty"`
Type string `json:"type,omitempty" yaml:"type,omitempty"`
Immutable *bool `json:"immutable,omitempty" yaml:"immutable,omitempty"`
}
Secret represents a Kubernetes Secret resource containing sensitive data.
type SecretEnvSource ¶
type SecretEnvSource struct {
LocalObjectReference `json:",inline" yaml:",inline"`
Optional *bool `json:"optional,omitempty" yaml:"optional,omitempty"`
}
SecretEnvSource represents a reference to a Secret whose keys are imported as environment variables.
type SecretKeySelector ¶
type SecretKeySelector struct {
LocalObjectReference `json:",inline" yaml:",inline"`
Key string `json:"key" yaml:"key"`
Optional *bool `json:"optional,omitempty" yaml:"optional,omitempty"`
}
SecretKeySelector represents a reference to a specific key in a Secret whose value populates an env var.
type SecretList ¶
type SecretList struct {
TypeMeta `json:",inline" yaml:",inline"`
ListMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Items []Secret `json:"items" yaml:"items"`
}
SecretList is a list of Secret resources.
type SecretProjection ¶
type SecretProjection struct {
LocalObjectReference `json:",inline" yaml:",inline"`
Items []KeyToPath `json:"items,omitempty" yaml:"items,omitempty"`
Optional *bool `json:"optional,omitempty" yaml:"optional,omitempty"`
}
SecretProjection represents a Secret to project into a projected volume, with optional per-key paths.
type SecretVolumeSource ¶
type SecretVolumeSource struct {
SecretName string `json:"secretName,omitempty" yaml:"secretName,omitempty"`
Items []KeyToPath `json:"items,omitempty" yaml:"items,omitempty"`
DefaultMode *int32 `json:"defaultMode,omitempty" yaml:"defaultMode,omitempty"`
Optional *bool `json:"optional,omitempty" yaml:"optional,omitempty"`
}
SecretVolumeSource represents a Secret projected into a pod as a volume, optionally with per-key paths and file modes.
type SecurityContext ¶
type SecurityContext struct {
RunAsUser *int64 `json:"runAsUser,omitempty" yaml:"runAsUser,omitempty"`
RunAsGroup *int64 `json:"runAsGroup,omitempty" yaml:"runAsGroup,omitempty"`
RunAsNonRoot *bool `json:"runAsNonRoot,omitempty" yaml:"runAsNonRoot,omitempty"`
ReadOnlyRootFilesystem *bool `json:"readOnlyRootFilesystem,omitempty" yaml:"readOnlyRootFilesystem,omitempty"`
Privileged *bool `json:"privileged,omitempty" yaml:"privileged,omitempty"`
AllowPrivilegeEscalation *bool `json:"allowPrivilegeEscalation,omitempty" yaml:"allowPrivilegeEscalation,omitempty"`
Capabilities *Capabilities `json:"capabilities,omitempty" yaml:"capabilities,omitempty"`
SELinuxOptions *SELinuxOptions `json:"seLinuxOptions,omitempty" yaml:"seLinuxOptions,omitempty"`
SeccompProfile *SeccompProfile `json:"seccompProfile,omitempty" yaml:"seccompProfile,omitempty"`
ProcMount *string `json:"procMount,omitempty" yaml:"procMount,omitempty"`
}
SecurityContext represents security settings applied at the container level (UID, GID, capabilities, seccomp, etc.).
type Service ¶
type Service struct {
TypeMeta `json:",inline" yaml:",inline"`
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Spec ServiceSpec `json:"spec,omitempty" yaml:"spec,omitempty"`
Status ServiceStatus `json:"status,omitempty" yaml:"status,omitempty"`
}
Service represents a Kubernetes Service resource.
type ServiceAccount ¶
type ServiceAccount struct {
TypeMeta `json:",inline" yaml:",inline"`
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Secrets []ObjectReference `json:"secrets,omitempty" yaml:"secrets,omitempty"`
ImagePullSecrets []LocalObjectReference `json:"imagePullSecrets,omitempty" yaml:"imagePullSecrets,omitempty"`
AutomountServiceAccountToken *bool `json:"automountServiceAccountToken,omitempty" yaml:"automountServiceAccountToken,omitempty"`
}
ServiceAccount represents a Kubernetes ServiceAccount resource.
type ServiceAccountList ¶
type ServiceAccountList struct {
TypeMeta `json:",inline" yaml:",inline"`
ListMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Items []ServiceAccount `json:"items" yaml:"items"`
}
ServiceAccountList is a list of ServiceAccount resources.
type ServiceList ¶
type ServiceList struct {
TypeMeta `json:",inline" yaml:",inline"`
ListMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Items []Service `json:"items" yaml:"items"`
}
ServiceList is a list of Service resources.
type ServicePort ¶
type ServicePort struct {
Name string `json:"name,omitempty" yaml:"name,omitempty"`
Protocol string `json:"protocol,omitempty" yaml:"protocol,omitempty"`
AppProtocol *string `json:"appProtocol,omitempty" yaml:"appProtocol,omitempty"`
Port int32 `json:"port" yaml:"port"`
TargetPort IntOrString `json:"targetPort,omitempty" yaml:"targetPort,omitempty"`
NodePort int32 `json:"nodePort,omitempty" yaml:"nodePort,omitempty"`
}
ServicePort defines a network port exposed by a Service.
type ServiceSpec ¶
type ServiceSpec struct {
Type string `json:"type,omitempty" yaml:"type,omitempty"`
Ports []ServicePort `json:"ports,omitempty" yaml:"ports,omitempty"`
Selector map[string]string `json:"selector,omitempty" yaml:"selector,omitempty"`
ClusterIP string `json:"clusterIP,omitempty" yaml:"clusterIP,omitempty"`
ClusterIPs []string `json:"clusterIPs,omitempty" yaml:"clusterIPs,omitempty"`
ExternalIPs []string `json:"externalIPs,omitempty" yaml:"externalIPs,omitempty"`
LoadBalancerIP string `json:"loadBalancerIP,omitempty" yaml:"loadBalancerIP,omitempty"`
LoadBalancerSourceRanges []string `json:"loadBalancerSourceRanges,omitempty" yaml:"loadBalancerSourceRanges,omitempty"`
ExternalName string `json:"externalName,omitempty" yaml:"externalName,omitempty"`
ExternalTrafficPolicy string `json:"externalTrafficPolicy,omitempty" yaml:"externalTrafficPolicy,omitempty"`
InternalTrafficPolicy string `json:"internalTrafficPolicy,omitempty" yaml:"internalTrafficPolicy,omitempty"`
HealthCheckNodePort int32 `json:"healthCheckNodePort,omitempty" yaml:"healthCheckNodePort,omitempty"`
SessionAffinity string `json:"sessionAffinity,omitempty" yaml:"sessionAffinity,omitempty"`
IPFamilies []string `json:"ipFamilies,omitempty" yaml:"ipFamilies,omitempty"`
IPFamilyPolicy string `json:"ipFamilyPolicy,omitempty" yaml:"ipFamilyPolicy,omitempty"`
AllocateLoadBalancerNodePorts *bool `json:"allocateLoadBalancerNodePorts,omitempty" yaml:"allocateLoadBalancerNodePorts,omitempty"`
PublishNotReadyAddresses bool `json:"publishNotReadyAddresses,omitempty" yaml:"publishNotReadyAddresses,omitempty"`
}
ServiceSpec defines the desired state of a Service.
type ServiceStatus ¶
type ServiceStatus struct {
LoadBalancer LoadBalancerStatus `json:"loadBalancer,omitempty" yaml:"loadBalancer,omitempty"`
Conditions []Condition `json:"conditions,omitempty" yaml:"conditions,omitempty"`
}
ServiceStatus represents the observed state of a Service.
type StatefulSet ¶
type StatefulSet struct {
TypeMeta `json:",inline" yaml:",inline"`
ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Spec StatefulSetSpec `json:"spec,omitempty" yaml:"spec,omitempty"`
Status StatefulSetStatus `json:"status,omitempty" yaml:"status,omitempty"`
}
StatefulSet represents a Kubernetes-style StatefulSet resource that manages a set of pods with stable, persistent identity and storage.
type StatefulSetList ¶
type StatefulSetList struct {
TypeMeta `json:",inline" yaml:",inline"`
ListMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"`
Items []StatefulSet `json:"items" yaml:"items"`
}
StatefulSetList represents a collection of StatefulSet resources returned in a list response.
type StatefulSetOrdinals ¶
type StatefulSetOrdinals struct {
Start int32 `json:"start,omitempty" yaml:"start,omitempty"`
}
StatefulSetOrdinals represents the ordinal numbering policy used by a StatefulSet to assign indices to its replicas.
type StatefulSetSpec ¶
type StatefulSetSpec struct {
Replicas *int32 `json:"replicas,omitempty" yaml:"replicas,omitempty"`
Selector *LabelSelector `json:"selector" yaml:"selector"`
Template PodTemplateSpec `json:"template" yaml:"template"`
VolumeClaimTemplates []PersistentVolumeClaim `json:"volumeClaimTemplates,omitempty" yaml:"volumeClaimTemplates,omitempty"`
ServiceName string `json:"serviceName" yaml:"serviceName"`
PodManagementPolicy string `json:"podManagementPolicy,omitempty" yaml:"podManagementPolicy,omitempty"`
UpdateStrategy StatefulSetUpdateStrategy `json:"updateStrategy,omitempty" yaml:"updateStrategy,omitempty"`
RevisionHistoryLimit *int32 `json:"revisionHistoryLimit,omitempty" yaml:"revisionHistoryLimit,omitempty"`
MinReadySeconds int32 `json:"minReadySeconds,omitempty" yaml:"minReadySeconds,omitempty"`
Ordinals StatefulSetOrdinals `json:"ordinals,omitempty" yaml:"ordinals,omitempty"`
}
StatefulSetSpec represents the desired state of a StatefulSet, including its service name, pod management policy and update strategy.
type StatefulSetStatus ¶
type StatefulSetStatus struct {
ObservedGeneration int64 `json:"observedGeneration,omitempty" yaml:"observedGeneration,omitempty"`
Replicas int32 `json:"replicas" yaml:"replicas"`
ReadyReplicas int32 `json:"readyReplicas,omitempty" yaml:"readyReplicas,omitempty"`
CurrentReplicas int32 `json:"currentReplicas,omitempty" yaml:"currentReplicas,omitempty"`
UpdatedReplicas int32 `json:"updatedReplicas,omitempty" yaml:"updatedReplicas,omitempty"`
CurrentRevision string `json:"currentRevision,omitempty" yaml:"currentRevision,omitempty"`
UpdateRevision string `json:"updateRevision,omitempty" yaml:"updateRevision,omitempty"`
CollisionCount *int32 `json:"collisionCount,omitempty" yaml:"collisionCount,omitempty"`
Conditions []Condition `json:"conditions,omitempty" yaml:"conditions,omitempty"`
AvailableReplicas int32 `json:"availableReplicas,omitempty" yaml:"availableReplicas,omitempty"`
}
StatefulSetStatus represents the observed state of a StatefulSet, including replica counts and current/update revisions.
type StatefulSetUpdateStrategy ¶
type StatefulSetUpdateStrategy struct {
Type string `json:"type,omitempty" yaml:"type,omitempty"`
RollingUpdate *RollingUpdateStatefulSetStrategy `json:"rollingUpdate,omitempty" yaml:"rollingUpdate,omitempty"`
}
StatefulSetUpdateStrategy represents the strategy a StatefulSet uses when updating existing pods (rolling update or on delete).
type Sysctl ¶
type Sysctl struct {
Name string `json:"name" yaml:"name"`
Value string `json:"value" yaml:"value"`
}
Sysctl represents a single kernel sysctl setting applied via the pod security context.
type TCPSocketAction ¶
type TCPSocketAction struct {
Port IntOrString `json:"port" yaml:"port"`
Host string `json:"host,omitempty" yaml:"host,omitempty"`
}
TCPSocketAction represents a TCP socket probe or hook against a port inside (or outside) the container.
type Taint ¶
type Taint struct {
Key string `json:"key" yaml:"key"`
Value string `json:"value,omitempty" yaml:"value,omitempty"`
Effect string `json:"effect" yaml:"effect"`
TimeAdded *time.Time `json:"timeAdded,omitempty" yaml:"timeAdded,omitempty"`
}
Taint represents a node taint that repels pods from being scheduled onto a Node.
type Toleration ¶
type Toleration struct {
Key string `json:"key,omitempty" yaml:"key,omitempty"`
Operator string `json:"operator,omitempty" yaml:"operator,omitempty"`
Value string `json:"value,omitempty" yaml:"value,omitempty"`
Effect string `json:"effect,omitempty" yaml:"effect,omitempty"`
TolerationSeconds *int64 `json:"tolerationSeconds,omitempty" yaml:"tolerationSeconds,omitempty"`
}
Toleration represents a pod's tolerance for a node taint, allowing the pod to be scheduled on (or kept running on) tainted nodes.
type TopologySpreadConstraint ¶
type TopologySpreadConstraint struct {
MaxSkew int32 `json:"maxSkew" yaml:"maxSkew"`
TopologyKey string `json:"topologyKey" yaml:"topologyKey"`
WhenUnsatisfiable string `json:"whenUnsatisfiable" yaml:"whenUnsatisfiable"`
LabelSelector *LabelSelector `json:"labelSelector,omitempty" yaml:"labelSelector,omitempty"`
MinDomains *int32 `json:"minDomains,omitempty" yaml:"minDomains,omitempty"`
}
TopologySpreadConstraint represents a constraint that tries to spread pods across failure domains such as nodes, racks or zones.
type TypeMeta ¶
type TypeMeta struct {
Kind string `json:"kind" yaml:"kind"`
APIVersion string `json:"apiVersion" yaml:"apiVersion"`
}
TypeMeta represents the identity metadata carried by every Kubernetes-style object: the resource Kind and its API Version.
type UncountedTerminatedPods ¶
type UncountedTerminatedPods struct {
Succeeded []string `json:"succeeded,omitempty" yaml:"succeeded,omitempty"`
Failed []string `json:"failed,omitempty" yaml:"failed,omitempty"`
}
UncountedTerminatedPods represents pods whose termination is known to the Job controller but not yet counted against the Job's metrics.
type Volume ¶
type Volume struct {
Name string `json:"name" yaml:"name"`
VolumeSource `json:",inline" yaml:",inline"`
}
Volume represents a named volume that is mounted into containers within a pod, sourced from one of the supported volume source types.
type VolumeMount ¶
type VolumeMount struct {
Name string `json:"name" yaml:"name"`
ReadOnly bool `json:"readOnly,omitempty" yaml:"readOnly,omitempty"`
MountPath string `json:"mountPath" yaml:"mountPath"`
SubPath string `json:"subPath,omitempty" yaml:"subPath,omitempty"`
SubPathExpr string `json:"subPathExpr,omitempty" yaml:"subPathExpr,omitempty"`
MountPropagation *string `json:"mountPropagation,omitempty" yaml:"mountPropagation,omitempty"`
}
VolumeMount represents a mount of a pod volume into a container at a specific path, with optional read-only and propagation settings.
type VolumeProjection ¶
type VolumeProjection struct {
Secret *SecretProjection `json:"secret,omitempty" yaml:"secret,omitempty"`
ConfigMap *ConfigMapProjection `json:"configMap,omitempty" yaml:"configMap,omitempty"`
DownwardAPI *DownwardAPIProjection `json:"downwardAPI,omitempty" yaml:"downwardAPI,omitempty"`
}
VolumeProjection represents a single source contributing to a projected volume: a Secret, a ConfigMap or a DownwardAPI entry.
type VolumeSource ¶
type VolumeSource struct {
HostPath *HostPathVolumeSource `json:"hostPath,omitempty" yaml:"hostPath,omitempty"`
EmptyDir *EmptyDirVolumeSource `json:"emptyDir,omitempty" yaml:"emptyDir,omitempty"`
ConfigMap *ConfigMapVolumeSource `json:"configMap,omitempty" yaml:"configMap,omitempty"`
Secret *SecretVolumeSource `json:"secret,omitempty" yaml:"secret,omitempty"`
PersistentVolumeClaim *PersistentVolumeClaimVolumeSource `json:"persistentVolumeClaim,omitempty" yaml:"persistentVolumeClaim,omitempty"`
Projected *ProjectedVolumeSource `json:"projected,omitempty" yaml:"projected,omitempty"`
DownwardAPI *DownwardAPIVolumeSource `json:"downwardAPI,omitempty" yaml:"downwardAPI,omitempty"`
}
VolumeSource represents the kind of backing storage a Volume uses: hostPath, emptyDir, ConfigMap, Secret, PVC, projected or downwardAPI.
type WatchEvent ¶
type WatchEvent struct {
Type string `json:"type"`
Object json.RawMessage `json:"object"`
}
WatchEvent represents a single change event delivered on a Kubernetes-style watch stream, carrying the event type and the affected object payload.
type WeightedPodAffinityTerm ¶
type WeightedPodAffinityTerm struct {
Weight int32 `json:"weight" yaml:"weight"`
PodAffinityTerm PodAffinityTerm `json:"podAffinityTerm" yaml:"podAffinityTerm"`
}
WeightedPodAffinityTerm represents a preferred pod affinity rule with an associated scheduling weight.