v1beta1

package
v0.1.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 31, 2026 License: AGPL-3.0 Imports: 4 Imported by: 0

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

View Source
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

View Source
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

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

func (in *Lifecycle) DeepCopy() *Lifecycle

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Lifecycle.

func (*Lifecycle) DeepCopyInto

func (in *Lifecycle) DeepCopyInto(out *Lifecycle)

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

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeClaimTemplate.

func (*PersistentVolumeClaimTemplate) DeepCopyInto

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

func (in *Sandbox) DeepCopy() *Sandbox

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Sandbox.

func (*Sandbox) DeepCopyInto

func (in *Sandbox) DeepCopyInto(out *Sandbox)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Sandbox) DeepCopyObject

func (in *Sandbox) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Sandbox) Hub

func (*Sandbox) Hub()

Hub marks Sandbox as a conversion Hub.

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

type SandboxPauseOptions struct {
	metav1.TypeMeta `json:",inline"`
}

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

type SandboxResumeOptions struct {
	metav1.TypeMeta `json:",inline"`
}

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

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

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

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

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL