Documentation
¶
Overview ¶
Package v1beta1 contains API Schema definitions for the agents v1beta1 API group
+groupName=agents.x-k8s.io
Package v1beta1 contains API Schema definitions for the agents v1beta1 API group. +kubebuilder:object:generate=true +groupName=agents.x-k8s.io
Index ¶
- Constants
- Variables
- func Resource(resource string) schema.GroupResource
- type ConditionType
- type EmbeddedObjectMetadata
- type ForkedSandbox
- type Lifecycle
- type PersistentVolumeClaimTemplate
- type PodMetadata
- type PodTemplate
- type Sandbox
- type SandboxBlueprint
- type SandboxForkOptions
- type SandboxForkResult
- type SandboxList
- type SandboxOperatingMode
- type SandboxPauseOptions
- type SandboxResumeOptions
- type SandboxSnapshotOptions
- type SandboxSnapshotResult
- type SandboxSpec
- type SandboxStatus
- type ShutdownPolicy
Constants ¶
const ( // SandboxConditionSuspended indicates the sandbox is administratively suspended. SandboxConditionSuspended ConditionType = "Suspended" // SandboxReasonSuspendedPodTerminated indicates that the pod has been terminated. SandboxReasonSuspendedPodTerminated = "PodTerminated" // SandboxReasonSuspendedPodNotTerminated indicates the pod has not been terminated yet. SandboxReasonSuspendedPodNotTerminated = "PodNotTerminated" // SandboxConditionReady indicates readiness for Sandbox. SandboxConditionReady ConditionType = "Ready" // SandboxReasonDependenciesReady indicates the sandbox is fully operational. SandboxReasonDependenciesReady = "DependenciesReady" // SandboxReasonDependenciesNotReady indicates the Sandbox is expected to be running // but its underlying dependencies are not fully provisioned or ready yet. SandboxReasonDependenciesNotReady = "DependenciesNotReady" // SandboxReasonSuspended indicates the Sandbox has been administratively suspended // (i.e., intentional action by the user to suspend the Sandbox). SandboxReasonSuspended = "SandboxSuspended" // SandboxConditionFinished indicates the backing Pod reached a terminal phase. SandboxConditionFinished ConditionType = "Finished" // SandboxReasonPodSucceeded indicates the backing Pod completed successfully. SandboxReasonPodSucceeded = "PodSucceeded" // SandboxReasonPodFailed indicates the backing Pod completed unsuccessfully. SandboxReasonPodFailed = "PodFailed" // SandboxReasonExpired indicates expired state for Sandbox. SandboxReasonExpired = "SandboxExpired" // SandboxPodNameAnnotation is the annotation used to track the pod name adopted from a warm pool. SandboxPodNameAnnotation = "agents.x-k8s.io/pod-name" // SandboxTemplateRefAnnotation is the annotation used to track the sandbox template ref. SandboxTemplateRefAnnotation = "agents.x-k8s.io/sandbox-template-ref" // SandboxLaunchTypeLabel is the label used to track whether the Sandbox was cold-created or originated from a warm pool. SandboxLaunchTypeLabel = "agents.x-k8s.io/launch-type" // CreatedByLabel is the label used to track which component created the resource (e.g. client, controller, etc.). CreatedByLabel = "agents.x-k8s.io/created-by" // SandboxLaunchTypeCold indicates the Sandbox was cold-created. SandboxLaunchTypeCold = "cold" // SandboxLaunchTypeWarm indicates the Sandbox was pre-provisioned by or adopted from a SandboxWarmPool. SandboxLaunchTypeWarm = "warm" // SandboxTemplateHashLabel is the label used to track the blueprint hash. SandboxTemplateHashLabel = "agents.x-k8s.io/sandbox-template-hash" // SandboxPropagatedLabelsAnnotation is the annotation used to track the labels explicitly propagated from sandbox spec to pod. SandboxPropagatedLabelsAnnotation = "agents.x-k8s.io/propagated-labels" // SandboxPropagatedAnnotationsAnnotation is the annotation used to track the annotations explicitly propagated from sandbox spec to pod. SandboxPropagatedAnnotationsAnnotation = "agents.x-k8s.io/propagated-annotations" // SandboxAdoptableLabel is the label used to authorize a Sandbox to adopt an existing unowned resource. SandboxAdoptableLabel = "agents.x-k8s.io/adoptable" // SandboxWarmPoolLabel is the label used to track the warm pool that owns the Sandbox. SandboxWarmPoolLabel = "agents.x-k8s.io/warm-pool-sandbox" // SandboxTemplateRefHashLabel identifies which SandboxTemplate a Sandbox originated from. SandboxTemplateRefHashLabel = "agents.x-k8s.io/sandbox-template-ref-hash" // SandboxOperatingModeRunning indicates the sandbox should be actively running. SandboxOperatingModeRunning SandboxOperatingMode = "Running" // SandboxOperatingModeSuspended indicates the sandbox should be suspended. SandboxOperatingModeSuspended SandboxOperatingMode = "Suspended" // ShutdownPolicyDelete deletes the Sandbox when expired. ShutdownPolicyDelete ShutdownPolicy = "Delete" // ShutdownPolicyRetain keeps the Sandbox when expired (Status will show Expired). ShutdownPolicyRetain ShutdownPolicy = "Retain" )
Variables ¶
var ( // GroupVersion is group version used to register these objects. GroupVersion = schema.GroupVersion{Group: "agents.x-k8s.io", Version: "v1beta1"} // SchemeGroupVersion is group version used to register these objects. SchemeGroupVersion = GroupVersion // SchemeBuilder is used to add go types to the GroupVersionKind scheme. SchemeBuilder = runtime.NewSchemeBuilder(func(scheme *runtime.Scheme) error { metav1.AddToGroupVersion(scheme, GroupVersion) return nil }) // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource.
Types ¶
type ConditionType ¶
type ConditionType string
ConditionType is a type of condition for a resource.
func (ConditionType) String ¶
func (c ConditionType) String() string
type EmbeddedObjectMetadata ¶
type EmbeddedObjectMetadata struct {
// name must be unique within a namespace. Is required when creating resources, although
// 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.
// Cannot be updated.
// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#names
// +optional
Name string `json:"name,omitempty"`
// labels defines the map of string keys and values that can be used to organize and categorize
// (scope and select) objects. May match selectors of replication controllers
// and services.
// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels
// +optional
Labels map[string]string `json:"labels,omitempty"`
// annotations is an unstructured key value map stored with a resource that may be
// set by external tools to store and retrieve arbitrary metadata. They are not
// queryable and should be preserved when modifying objects.
// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations
// +optional
Annotations map[string]string `json:"annotations,omitempty"`
}
func (*EmbeddedObjectMetadata) DeepCopy ¶
func (in *EmbeddedObjectMetadata) DeepCopy() *EmbeddedObjectMetadata
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmbeddedObjectMetadata.
func (*EmbeddedObjectMetadata) DeepCopyInto ¶
func (in *EmbeddedObjectMetadata) DeepCopyInto(out *EmbeddedObjectMetadata)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ForkedSandbox ¶
type ForkedSandbox struct {
// sandboxID is the child's node-local claim id.
SandboxID string `json:"sandboxID"`
// nodeName is the node that owns the child. A fork is node-local, so every
// child lands on the source's node.
NodeName string `json:"nodeName"`
// address is the child's connection address, when the node published one.
// +optional
Address string `json:"address,omitempty"`
}
ForkedSandbox identifies one child of a fork.
func (*ForkedSandbox) DeepCopy ¶
func (in *ForkedSandbox) DeepCopy() *ForkedSandbox
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ForkedSandbox.
func (*ForkedSandbox) DeepCopyInto ¶
func (in *ForkedSandbox) DeepCopyInto(out *ForkedSandbox)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Lifecycle ¶
type Lifecycle struct {
// shutdownTime is the absolute time when the sandbox expires.
// +kubebuilder:validation:Format="date-time"
// +optional
ShutdownTime *metav1.Time `json:"shutdownTime,omitempty"`
// shutdownPolicy determines if the Sandbox resource itself should be deleted when it expires.
// Underlying resources(Pods, Services) are always deleted on expiry.
// +kubebuilder:default=Retain
// +optional
ShutdownPolicy *ShutdownPolicy `json:"shutdownPolicy,omitempty"`
}
Lifecycle defines the lifecycle management for the Sandbox.
func (*Lifecycle) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Lifecycle.
func (*Lifecycle) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PersistentVolumeClaimTemplate ¶
type PersistentVolumeClaimTemplate struct {
// metadata is the PVC's metadata.
// +optional
EmbeddedObjectMetadata `json:"metadata"`
// spec is the PVC's spec
// +required
Spec corev1.PersistentVolumeClaimSpec `json:"spec"`
}
func (*PersistentVolumeClaimTemplate) DeepCopy ¶
func (in *PersistentVolumeClaimTemplate) DeepCopy() *PersistentVolumeClaimTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeClaimTemplate.
func (*PersistentVolumeClaimTemplate) DeepCopyInto ¶
func (in *PersistentVolumeClaimTemplate) DeepCopyInto(out *PersistentVolumeClaimTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodMetadata ¶
type PodMetadata struct {
// labels defines the map of string keys and values that can be used to organize and categorize
// (scope and select) objects. May match selectors of replication controllers
// and services.
// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels
// +optional
Labels map[string]string `json:"labels,omitempty"`
// annotations is an unstructured key value map stored with a resource that may be
// set by external tools to store and retrieve arbitrary metadata. They are not
// queryable and should be preserved when modifying objects.
// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations
// +optional
Annotations map[string]string `json:"annotations,omitempty"`
}
func (*PodMetadata) DeepCopy ¶
func (in *PodMetadata) DeepCopy() *PodMetadata
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodMetadata.
func (*PodMetadata) DeepCopyInto ¶
func (in *PodMetadata) DeepCopyInto(out *PodMetadata)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodTemplate ¶
type PodTemplate struct {
// spec is the Pod's spec
// +required
Spec corev1.PodSpec `json:"spec"`
// metadata is the Pod's metadata. Only labels and annotations are used.
// +optional
ObjectMeta PodMetadata `json:"metadata"`
}
func (*PodTemplate) DeepCopy ¶
func (in *PodTemplate) DeepCopy() *PodTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodTemplate.
func (*PodTemplate) DeepCopyInto ¶
func (in *PodTemplate) DeepCopyInto(out *PodTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Sandbox ¶
type Sandbox struct {
metav1.TypeMeta `json:",inline"`
// metadata is a standard object metadata
// +optional
metav1.ObjectMeta `json:"metadata,omitempty,omitzero"`
// spec defines the desired state of Sandbox
// +required
Spec SandboxSpec `json:"spec"`
// status defines the observed state of Sandbox
// +optional
Status SandboxStatus `json:"status,omitempty,omitzero"`
}
+genclient +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:scope=Namespaced,shortName=sandbox +kubebuilder:printcolumn:name="Ready",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="Reason",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].reason" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:storageversion +kubebuilder:conversion:strategy=Webhook Sandbox is the Schema for the sandboxes API.
func (*Sandbox) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Sandbox.
func (*Sandbox) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Sandbox) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SandboxBlueprint ¶
type SandboxBlueprint struct {
// podTemplate describes the pod that will be created in the sandbox.
// Note: When provisioned via a SandboxTemplate (such as by a SandboxClaim or SandboxWarmPool),
// if AutomountServiceAccountToken is not specified in the PodSpec, the controller defaults it
// to false to ensure a secure-by-default environment.
// +required
PodTemplate PodTemplate `json:"podTemplate"`
// volumeClaimTemplates is a list of claims that the sandbox pod is allowed to reference.
// When creating a sandbox, PVCs will be created from these templates.
// Every claim in this list must have at least one matching access mode with a provisioner volume.
// NOTE: This list is atomic. Updates to this field will replace the entire list rather than merging with existing entries.
// +optional
// +listType=atomic
VolumeClaimTemplates []PersistentVolumeClaimTemplate `json:"volumeClaimTemplates,omitempty"`
// service controls whether the controller should automatically create a
// headless Service for the Sandbox workload.
// When unset, the controller preserves existing Services for backward
// compatibility but does not create new ones. Set to true to enable or false
// to explicitly disable and remove the Service.
//nolint:kubeapilinter // Enum not used to avoid duplicating the Service API; field is not expected to extend (issue #746).
// +optional
Service *bool `json:"service,omitempty"`
}
SandboxBlueprint defines the configuration shared between Sandbox and SandboxTemplate. It deliberately excludes runtime-only fields (operatingMode, lifecycle).
func (*SandboxBlueprint) DeepCopy ¶
func (in *SandboxBlueprint) DeepCopy() *SandboxBlueprint
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SandboxBlueprint.
func (*SandboxBlueprint) DeepCopyInto ¶
func (in *SandboxBlueprint) DeepCopyInto(out *SandboxBlueprint)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SandboxForkOptions ¶
type SandboxForkOptions struct {
metav1.TypeMeta `json:",inline"`
// count is how many children to branch. Defaults to 1, and is bounded by
// the owning node's configured fork limit.
// +optional
Count int32 `json:"count,omitempty"`
// ttlSeconds is each child's lease. Children never inherit the parent's
// remaining lease — a lease is a per-sandbox resource bound. Zero takes the
// node's default.
// +optional
TTLSeconds int32 `json:"ttlSeconds,omitempty"`
}
SandboxForkOptions is the body of POST sandboxes/{name}/fork. The source is checkpointed in place and keeps running; each child is a brand-new sandbox with its own id and lease, not a replica of the source's identity.
func (*SandboxForkOptions) DeepCopy ¶
func (in *SandboxForkOptions) DeepCopy() *SandboxForkOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SandboxForkOptions.
func (*SandboxForkOptions) DeepCopyInto ¶
func (in *SandboxForkOptions) DeepCopyInto(out *SandboxForkOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SandboxForkOptions) DeepCopyObject ¶
func (in *SandboxForkOptions) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SandboxForkResult ¶
type SandboxForkResult struct {
metav1.TypeMeta `json:",inline"`
// children are the branched sandboxes.
Children []ForkedSandbox `json:"children"`
}
SandboxForkResult is the reply to a fork: one entry per child, in request order.
func (*SandboxForkResult) DeepCopy ¶
func (in *SandboxForkResult) DeepCopy() *SandboxForkResult
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SandboxForkResult.
func (*SandboxForkResult) DeepCopyInto ¶
func (in *SandboxForkResult) DeepCopyInto(out *SandboxForkResult)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SandboxForkResult) DeepCopyObject ¶
func (in *SandboxForkResult) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SandboxList ¶
type SandboxList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Sandbox `json:"items"`
}
SandboxList contains a list of Sandbox.
func (*SandboxList) DeepCopy ¶
func (in *SandboxList) DeepCopy() *SandboxList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SandboxList.
func (*SandboxList) DeepCopyInto ¶
func (in *SandboxList) DeepCopyInto(out *SandboxList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SandboxList) DeepCopyObject ¶
func (in *SandboxList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SandboxOperatingMode ¶
type SandboxOperatingMode string
SandboxOperatingMode defines the desired operational state of the Sandbox.
type SandboxPauseOptions ¶
SandboxPauseOptions is the body of POST sandboxes/{name}/pause. Pausing snapshots the guest's memory and stops its VM, so it costs time proportional to that memory — unlike resume, which takes the mmap restore fast path.
func (*SandboxPauseOptions) DeepCopy ¶
func (in *SandboxPauseOptions) DeepCopy() *SandboxPauseOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SandboxPauseOptions.
func (*SandboxPauseOptions) DeepCopyInto ¶
func (in *SandboxPauseOptions) DeepCopyInto(out *SandboxPauseOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SandboxPauseOptions) DeepCopyObject ¶
func (in *SandboxPauseOptions) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SandboxResumeOptions ¶
SandboxResumeOptions is the body of POST sandboxes/{name}/resume. Resuming a paused sandbox restores it through cocoon's mmap fast path and is idempotent on one that is already running.
func (*SandboxResumeOptions) DeepCopy ¶
func (in *SandboxResumeOptions) DeepCopy() *SandboxResumeOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SandboxResumeOptions.
func (*SandboxResumeOptions) DeepCopyInto ¶
func (in *SandboxResumeOptions) DeepCopyInto(out *SandboxResumeOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SandboxResumeOptions) DeepCopyObject ¶
func (in *SandboxResumeOptions) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SandboxSnapshotOptions ¶
type SandboxSnapshotOptions struct {
metav1.TypeMeta `json:",inline"`
// name labels the checkpoint. Optional; the node assigns an id regardless.
// +optional
Name string `json:"name,omitempty"`
}
SandboxSnapshotOptions is the body of POST sandboxes/{name}/snapshot. The source keeps running; the checkpoint is an immutable state later sandboxes can branch from.
func (*SandboxSnapshotOptions) DeepCopy ¶
func (in *SandboxSnapshotOptions) DeepCopy() *SandboxSnapshotOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SandboxSnapshotOptions.
func (*SandboxSnapshotOptions) DeepCopyInto ¶
func (in *SandboxSnapshotOptions) DeepCopyInto(out *SandboxSnapshotOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SandboxSnapshotOptions) DeepCopyObject ¶
func (in *SandboxSnapshotOptions) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SandboxSnapshotResult ¶
type SandboxSnapshotResult struct {
metav1.TypeMeta `json:",inline"`
// snapshotID is the checkpoint's node-local id.
SnapshotID string `json:"snapshotID"`
// name echoes the requested label, when one was given.
// +optional
Name string `json:"name,omitempty"`
// nodeName is the node holding the checkpoint. Checkpoints are node-local,
// so branching from or deleting one requires knowing its node.
NodeName string `json:"nodeName"`
// creationTimestamp is when the node captured the checkpoint.
// +optional
CreationTimestamp metav1.Time `json:"creationTimestamp,omitempty"`
}
SandboxSnapshotResult is the reply to a snapshot.
func (*SandboxSnapshotResult) DeepCopy ¶
func (in *SandboxSnapshotResult) DeepCopy() *SandboxSnapshotResult
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SandboxSnapshotResult.
func (*SandboxSnapshotResult) DeepCopyInto ¶
func (in *SandboxSnapshotResult) DeepCopyInto(out *SandboxSnapshotResult)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SandboxSnapshotResult) DeepCopyObject ¶
func (in *SandboxSnapshotResult) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SandboxSpec ¶
type SandboxSpec struct {
// SandboxBlueprint defines the workload configuration shared with SandboxTemplate.
// NOTE: Once a field is added here, it is promoted to both Sandbox and SandboxTemplate.
// Since moving fields out is breaking, if unsure whether a new field should be shared,
// define it in SandboxSpec (or SandboxTemplateSpec) first and promote it here later.
SandboxBlueprint `json:",inline"`
// Lifecycle defines when and how the sandbox should be shut down.
// +optional
Lifecycle `json:",inline"`
// operatingMode specifies the desired operational state of the Sandbox.
// Defaults to Running if not specified.
// +kubebuilder:default=Running
// +kubebuilder:validation:Enum=Running;Suspended
// +optional
OperatingMode SandboxOperatingMode `json:"operatingMode,omitempty"`
}
SandboxSpec defines the desired state of Sandbox.
func (*SandboxSpec) DeepCopy ¶
func (in *SandboxSpec) DeepCopy() *SandboxSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SandboxSpec.
func (*SandboxSpec) DeepCopyInto ¶
func (in *SandboxSpec) DeepCopyInto(out *SandboxSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SandboxStatus ¶
type SandboxStatus struct {
// serviceFQDN that is valid for default cluster settings
// The domain defaults to cluster.local but is configurable via the controller's --cluster-domain flag.
// +optional
ServiceFQDN string `json:"serviceFQDN,omitempty"`
// service is a sandbox-example
// +optional
Service string `json:"service,omitempty"`
// conditions defines the status conditions array
// +optional
Conditions []metav1.Condition `json:"conditions,omitempty"`
// selector is the label selector for pods.
// +optional
LabelSelector string `json:"selector,omitempty"`
// podIPs are the IP addresses of the underlying pod.
// A pod may have multiple IPs in dual-stack clusters.
// +optional
PodIPs []string `json:"podIPs,omitempty"`
// nodeName is the name of the node where the underlying pod is scheduled.
// +optional
NodeName string `json:"nodeName,omitempty"`
}
SandboxStatus defines the observed state of Sandbox.
func (*SandboxStatus) DeepCopy ¶
func (in *SandboxStatus) DeepCopy() *SandboxStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SandboxStatus.
func (*SandboxStatus) DeepCopyInto ¶
func (in *SandboxStatus) DeepCopyInto(out *SandboxStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ShutdownPolicy ¶
type ShutdownPolicy string
ShutdownPolicy describes the policy for deleting the Sandbox when it expires. +kubebuilder:validation:Enum=Delete;Retain