v1beta2

package
v1.32.1-rc.0.0...-a7cfdcd Latest Latest
Warning

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

Go to latest
Published: Jan 24, 2025 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Overview

Package v1beta2 is the v1beta2 version of the API.

Index

Constants

View Source
const (
	UpdateStrategyTypeCron     = "cron"
	UpdateStrategyTypePeriodic = "periodic"
)
View Source
const GroupName = "autopilot.k0sproject.io"

GroupName specifies the group name used to register the objects.

View Source
const UpdateConfigFinalizer = "updateconfig.autopilot.k0sproject.io"

Variables

View Source
var (
	// localSchemeBuilder and AddToScheme will stay in k8s.io/kubernetes.
	SchemeBuilder runtime.SchemeBuilder

	// Deprecated: use Install instead
	AddToScheme = localSchemeBuilder.AddToScheme
	Install     = localSchemeBuilder.AddToScheme
)
View Source
var GroupVersion = v1.GroupVersion{Group: GroupName, Version: "v1beta2"}

GroupVersion specifies the group and the version used to register the objects.

View Source
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1beta2"}

SchemeGroupVersion is group version used to register these objects Deprecated: use GroupVersion instead.

Functions

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type AutopilotPlanCommand

type AutopilotPlanCommand struct {
	// K0sUpdate is the `K0sUpdate` command which is responsible for updating a k0s node (controller/worker)
	K0sUpdate *AutopilotPlanCommandK0sUpdate `json:"k0supdate,omitempty"`

	// AirgapUpdate is the `AirgapUpdate` command which is responsible for updating a k0s airgap bundle.
	AirgapUpdate *AutopilotPlanCommandAirgapUpdate `json:"airgapupdate,omitempty"`
}

AutopilotPlanCommand is a command that can be run within a `Plan`

func (*AutopilotPlanCommand) DeepCopy

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

func (*AutopilotPlanCommand) DeepCopyInto

func (in *AutopilotPlanCommand) DeepCopyInto(out *AutopilotPlanCommand)

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

type AutopilotPlanCommandAirgapUpdate

type AutopilotPlanCommandAirgapUpdate struct {
	// Workers defines how the k0s workers will be discovered and airgap updated.
	Workers PlanCommandTarget `json:"workers"`
}

AutopilotPlanCommandAirgapUpdate provides all of the information to for a `AirgapUpdate` command to update a set of target signal nodes

func (*AutopilotPlanCommandAirgapUpdate) DeepCopy

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

func (*AutopilotPlanCommandAirgapUpdate) DeepCopyInto

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

type AutopilotPlanCommandK0sUpdate

type AutopilotPlanCommandK0sUpdate struct {
	// ForceUpdate ensures that version checking is ignored and that all updates are applied.
	ForceUpdate bool `json:"forceupdate,omitempty"`

	// Targets defines how the controllers/workers should be discovered and upgraded.
	Targets PlanCommandTargets `json:"targets"`
}

AutopilotPlanCommandK0sUpdate provides all of the information to for a `K0sUpdate` command to update a set of target signal nodes.

func (*AutopilotPlanCommandK0sUpdate) DeepCopy

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

func (*AutopilotPlanCommandK0sUpdate) DeepCopyInto

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

type AutopilotPlanSpec

type AutopilotPlanSpec struct {
	// Commands are a collection of all of the commands that need to be executed
	// in order for this plan to transition to Completed.
	Commands []AutopilotPlanCommand `json:"commands"`
}

AutopilotPlanSpec describes the behavior of the autopilot generated `Plan`

func (*AutopilotPlanSpec) DeepCopy

func (in *AutopilotPlanSpec) DeepCopy() *AutopilotPlanSpec

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

func (*AutopilotPlanSpec) DeepCopyInto

func (in *AutopilotPlanSpec) DeepCopyInto(out *AutopilotPlanSpec)

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

type ControlNode

type ControlNode struct {
	metav1.ObjectMeta `json:"metadata,omitempty"`
	metav1.TypeMeta   `json:",omitempty,inline"`
	Status            ControlNodeStatus `json:"status,omitempty"`
}

ControlNode is a node which behaves as a controller, able to receive autopilot signaling updates.

+kubebuilder:object:root=true +kubebuilder:resource:scope=Cluster +kubebuilder:subresource:status +genclient +genclient:onlyVerbs=create,delete,list,get,watch,update,updateStatus +genclient:nonNamespaced

func (*ControlNode) DeepCopy

func (in *ControlNode) DeepCopy() *ControlNode

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

func (*ControlNode) DeepCopyInto

func (in *ControlNode) DeepCopyInto(out *ControlNode)

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

func (*ControlNode) DeepCopyObject

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

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

type ControlNodeList

type ControlNodeList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []ControlNode `json:"items"`
}

ControlNodeList is a list of ControlNode instances.

+kubebuilder:object:root=true +kubebuilder:resource:scope=Cluster

func (*ControlNodeList) DeepCopy

func (in *ControlNodeList) DeepCopy() *ControlNodeList

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

func (*ControlNodeList) DeepCopyInto

func (in *ControlNodeList) DeepCopyInto(out *ControlNodeList)

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

func (*ControlNodeList) DeepCopyObject

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

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

type ControlNodeStatus

type ControlNodeStatus struct {
	Addresses []corev1.NodeAddress `json:"addresses,omitempty"`
}

ControlNodeStatus has the runtime status info of the controller such as address etc.

func (*ControlNodeStatus) DeepCopy

func (in *ControlNodeStatus) DeepCopy() *ControlNodeStatus

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

func (*ControlNodeStatus) DeepCopyInto

func (in *ControlNodeStatus) DeepCopyInto(out *ControlNodeStatus)

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

func (*ControlNodeStatus) GetInternalIP

func (c *ControlNodeStatus) GetInternalIP() string

GetInternalIP returns the internal IP address for the object. Returns empty string if the object does not have InternalIP set.

type PeriodicUpgradeStrategy

type PeriodicUpgradeStrategy struct {
	Days      []string `json:"days,omitempty"`
	StartTime string   `json:"startTime,omitempty"`
	Length    string   `json:"length,omitempty"`
}

func (*PeriodicUpgradeStrategy) DeepCopy

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

func (*PeriodicUpgradeStrategy) DeepCopyInto

func (in *PeriodicUpgradeStrategy) DeepCopyInto(out *PeriodicUpgradeStrategy)

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

func (*PeriodicUpgradeStrategy) IsWithinPeriod

func (p *PeriodicUpgradeStrategy) IsWithinPeriod(t time.Time) bool

type Plan

type Plan struct {
	metav1.TypeMeta `json:",omitempty,inline"`
	// Standard object's metadata.
	metav1.ObjectMeta `json:"metadata,omitempty"`

	// Spec defines how the plan behaves.
	Spec PlanSpec `json:"spec"`

	// Status is the most recently observed status of the plan.
	Status PlanStatus `json:"status,omitempty"`
}

Plan provides all details of what to execute as a part of the plan, and the current status of its execution.

+kubebuilder:object:root=true +kubebuilder:resource:scope=Cluster +kubebuilder:subresource:status +kubebuilder:printcolumn:name="State",type="string",JSONPath=".status.state" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +genclient +genclient:onlyVerbs=create,delete,list,get,watch,update +genclient:nonNamespaced

func (*Plan) DeepCopy

func (in *Plan) DeepCopy() *Plan

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

func (*Plan) DeepCopyInto

func (in *Plan) DeepCopyInto(out *Plan)

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

func (*Plan) DeepCopyObject

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

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

type PlanCommand

type PlanCommand struct {
	// K0sUpdate is the `K0sUpdate` command which is responsible for updating a k0s node (controller/worker)
	K0sUpdate *PlanCommandK0sUpdate `json:"k0supdate,omitempty"`

	// AirgapUpdate is the `AirgapUpdate` command which is responsible for updating a k0s airgap bundle.
	AirgapUpdate *PlanCommandAirgapUpdate `json:"airgapupdate,omitempty"`
}

PlanCommand is a command that can be run within a `Plan`

func (*PlanCommand) DeepCopy

func (in *PlanCommand) DeepCopy() *PlanCommand

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

func (*PlanCommand) DeepCopyInto

func (in *PlanCommand) DeepCopyInto(out *PlanCommand)

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

type PlanCommandAirgapUpdate

type PlanCommandAirgapUpdate struct {
	// Version is the version that `AirgapUpdate` will be upgrading to.
	Version string `json:"version"`

	// Platforms is a map of PlanResourceUrls to platform identifiers, allowing a single k0s airgap
	// version to have multiple Url resources based on platform.
	Platforms PlanPlatformResourceURLMap `json:"platforms"`

	// Workers defines how the k0s workers will be discovered and airgap updated.
	Workers PlanCommandTarget `json:"workers"`
}

PlanCommandAirgapUpdate provides all of the information to for a `AirgapUpdate` command to update a set of target signal nodes

func (*PlanCommandAirgapUpdate) DeepCopy

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

func (*PlanCommandAirgapUpdate) DeepCopyInto

func (in *PlanCommandAirgapUpdate) DeepCopyInto(out *PlanCommandAirgapUpdate)

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

type PlanCommandAirgapUpdateStatus

type PlanCommandAirgapUpdateStatus struct {
	// Workers are a collection of status for resolved k0s worker targets.
	Workers []PlanCommandTargetStatus `json:"workers,omitempty"`
}

PlanCommandAirgapUpdateStatus is the status of a `AirgapUpdate` command for k0s worker nodes.

func (*PlanCommandAirgapUpdateStatus) DeepCopy

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

func (*PlanCommandAirgapUpdateStatus) DeepCopyInto

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

type PlanCommandK0sUpdate

type PlanCommandK0sUpdate struct {
	// Version is the version that `K0sUpdate` will be upgrading to.
	Version string `json:"version"`

	// ForceUpdate ensures that version checking is ignored and that all updates are applied.
	ForceUpdate bool `json:"forceupdate,omitempty"`

	// Platforms is a map of PlanResourceUrls to platform identifiers, allowing a single k0s version
	// to have multiple URL resources based on platform.
	Platforms PlanPlatformResourceURLMap `json:"platforms"`

	// Targets defines how the controllers/workers should be discovered and upgraded.
	Targets PlanCommandTargets `json:"targets"`
}

PlanCommandK0sUpdate provides all of the information to for a `K0sUpdate` command to update a set of target signal nodes.

func (*PlanCommandK0sUpdate) DeepCopy

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

func (*PlanCommandK0sUpdate) DeepCopyInto

func (in *PlanCommandK0sUpdate) DeepCopyInto(out *PlanCommandK0sUpdate)

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

type PlanCommandK0sUpdateStatus

type PlanCommandK0sUpdateStatus struct {
	// Controllers are a collection of status for resolved k0s controller targets.
	Controllers []PlanCommandTargetStatus `json:"controllers,omitempty"`

	// Workers are a collection of status for resolved k0s worker targets.
	Workers []PlanCommandTargetStatus `json:"workers,omitempty"`
}

PlanCommandK0sUpdateStatus is the status of a `K0sUpdate` command for a collection of both controllers and workers.

func (*PlanCommandK0sUpdateStatus) DeepCopy

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

func (*PlanCommandK0sUpdateStatus) DeepCopyInto

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

type PlanCommandStatus

type PlanCommandStatus struct {
	// ID is a unique identifier for this command in a Plan
	ID int `json:"id"`

	// State is the current state of the plan command.
	State PlanStateType `json:"state"`

	// Description is the additional information about the plan command state.
	Description string `json:"description,omitempty"`

	// K0sUpdate is the status of the `K0sUpdate` command.
	K0sUpdate *PlanCommandK0sUpdateStatus `json:"k0supdate,omitempty"`

	// AirgapUpdate is the status of the `AirgapUpdate` command.
	AirgapUpdate *PlanCommandAirgapUpdateStatus `json:"airgapupdate,omitempty"`
}

PlanCommandStatus is the status of a known command.

func (*PlanCommandStatus) DeepCopy

func (in *PlanCommandStatus) DeepCopy() *PlanCommandStatus

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

func (*PlanCommandStatus) DeepCopyInto

func (in *PlanCommandStatus) DeepCopyInto(out *PlanCommandStatus)

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

type PlanCommandTarget

type PlanCommandTarget struct {
	// Discovery details how nodes for this target should be discovered.
	Discovery PlanCommandTargetDiscovery `json:"discovery"`

	// Limits impose various limits and restrictions on how discovery and execution should behave.
	//
	// +kubebuilder:default={concurrent:1}
	Limits PlanCommandTargetLimits `json:"limits,omitempty"`
}

PlanCommandTarget defines how a plan should discover signal nodes that should be considered grouped into this target, along with any limitations that should be imposed.

func (*PlanCommandTarget) DeepCopy

func (in *PlanCommandTarget) DeepCopy() *PlanCommandTarget

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

func (*PlanCommandTarget) DeepCopyInto

func (in *PlanCommandTarget) DeepCopyInto(out *PlanCommandTarget)

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

type PlanCommandTargetDiscovery

type PlanCommandTargetDiscovery struct {
	// Static provides a static means of identifying target signal nodes.
	Static *PlanCommandTargetDiscoveryStatic `json:"static,omitempty"`

	// Selector provides a kubernetes 'selector' means of identifying target signal nodes.
	Selector *PlanCommandTargetDiscoverySelector `json:"selector,omitempty"`
}

PlanCommandTargetDiscovery contains the type of discovery mechanism that should be used for resolving signal nodes.

func (*PlanCommandTargetDiscovery) DeepCopy

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

func (*PlanCommandTargetDiscovery) DeepCopyInto

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

type PlanCommandTargetDiscoverySelector

type PlanCommandTargetDiscoverySelector struct {
	// Labels is a standard kubernetes label selector (key=value,key=value,...)
	Labels string `json:"labels,omitempty"`

	// Fields is a standard kubernetes field selector (key=value,key=value,...)
	Fields string `json:"fields,omitempty"`
}

PlanCommandTargetDiscoverySelector is a discovery mechanism for resolving signal nodes using standard Kubernetes 'Field' and 'Label' selectors.

func (*PlanCommandTargetDiscoverySelector) DeepCopy

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

func (*PlanCommandTargetDiscoverySelector) DeepCopyInto

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

type PlanCommandTargetDiscoveryStatic

type PlanCommandTargetDiscoveryStatic struct {
	// Nodes provides a static set of target signal nodes.
	Nodes []string `json:"nodes,omitempty"`
}

PlanCommandTargetDiscoveryStatic is a discovery mechanism for resolving signal nodes using a predefined static set of nodes.

func (*PlanCommandTargetDiscoveryStatic) DeepCopy

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

func (*PlanCommandTargetDiscoveryStatic) DeepCopyInto

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

type PlanCommandTargetLimits

type PlanCommandTargetLimits struct {
	// Concurrent specifies the number of concurrent target executions that can be performed
	// within this target. (ie. '2' == at most have 2 execute at the same time)
	//
	// +kubebuilder:default=1
	Concurrent int `json:"concurrent,omitempty"`
}

PlanCommandTargetLimits are limits that can be imposed on a target of a command.

func (*PlanCommandTargetLimits) DeepCopy

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

func (*PlanCommandTargetLimits) DeepCopyInto

func (in *PlanCommandTargetLimits) DeepCopyInto(out *PlanCommandTargetLimits)

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

type PlanCommandTargetStateType

type PlanCommandTargetStateType PlanStateType

PlanCommandTargetStateType is the state of a PlanCommandTarget

func (PlanCommandTargetStateType) String

String provides string representation for PlanCommandTargetStateType

type PlanCommandTargetStatus

type PlanCommandTargetStatus struct {
	// Name the name of the target signal node.
	Name string `json:"name"`

	// State is the current state of the target signal nodes operation.
	State PlanCommandTargetStateType `json:"state"`

	// LastUpdatedTimestamp is a timestamp of the last time the status has changed.
	LastUpdatedTimestamp metav1.Time `json:"lastUpdatedTimestamp"`
}

PlanCommandTargetStatus is the status of a resolved node (controller/worker).

func NewPlanCommandTargetStatus

func NewPlanCommandTargetStatus(name string, status PlanCommandTargetStateType) PlanCommandTargetStatus

NewPlanCommandTargetStatus creates a new `PlanCommandTargetStatus` with all required defaults populated.

func (*PlanCommandTargetStatus) DeepCopy

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

func (*PlanCommandTargetStatus) DeepCopyInto

func (in *PlanCommandTargetStatus) DeepCopyInto(out *PlanCommandTargetStatus)

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

type PlanCommandTargets

type PlanCommandTargets struct {
	// Controllers defines how k0s controllers will be discovered and executed.
	Controllers PlanCommandTarget `json:"controllers,omitempty"`

	// Workers defines how k0s workers will be discovered and executed.
	Workers PlanCommandTarget `json:"workers,omitempty"`
}

PlanCommandTargets contains the target definitions for both controllers and workers.

func (*PlanCommandTargets) DeepCopy

func (in *PlanCommandTargets) DeepCopy() *PlanCommandTargets

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

func (*PlanCommandTargets) DeepCopyInto

func (in *PlanCommandTargets) DeepCopyInto(out *PlanCommandTargets)

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

type PlanList

type PlanList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []Plan `json:"items"`
}

PlanList is a list of Plan instances.

+kubebuilder:object:root=true +kubebuilder:resource:scope=Cluster

func (*PlanList) DeepCopy

func (in *PlanList) DeepCopy() *PlanList

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

func (*PlanList) DeepCopyInto

func (in *PlanList) DeepCopyInto(out *PlanList)

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

func (*PlanList) DeepCopyObject

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

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

type PlanPlatformResourceURLMap

type PlanPlatformResourceURLMap map[string]PlanResourceURL

PlanPlatformResourceURLMap is a mapping of `PlanResourceURL` instances mapped to platform identifiers.

func (PlanPlatformResourceURLMap) DeepCopy

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

func (PlanPlatformResourceURLMap) DeepCopyInto

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

type PlanResourceURL

type PlanResourceURL struct {
	// URL is the URL of a downloadable resource.
	URL string `json:"url"`

	// Sha256 provides an optional SHA256 hash of the URL's content for verification.
	Sha256 string `json:"sha256,omitempty"`
}

PlanResourceURL is a remote URL resource.

func (*PlanResourceURL) DeepCopy

func (in *PlanResourceURL) DeepCopy() *PlanResourceURL

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

func (*PlanResourceURL) DeepCopyInto

func (in *PlanResourceURL) DeepCopyInto(out *PlanResourceURL)

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

type PlanSpec

type PlanSpec struct {
	// ID is a user-provided identifier for this plan.
	ID string `json:"id"`

	// Timestamp is a user-provided time that the plan was created.
	Timestamp string `json:"timestamp"`

	// Commands are a collection of all of the commands that need to be executed
	// in order for this plan to transition to Completed.
	Commands []PlanCommand `json:"commands"`
}

PlanSpec describes the behavior of the `Plan`

func (*PlanSpec) DeepCopy

func (in *PlanSpec) DeepCopy() *PlanSpec

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

func (*PlanSpec) DeepCopyInto

func (in *PlanSpec) DeepCopyInto(out *PlanSpec)

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

type PlanStateType

type PlanStateType string

PlanStateType is the state of a Plan

func (PlanStateType) String

func (t PlanStateType) String() string

String provides string representation for PlanStateType

type PlanStatus

type PlanStatus struct {
	// State is the current state of the plan. This value typically mirrors the status
	// of the current command execution to allow for querying a single field to determine
	// the plan status.
	State PlanStateType `json:"state"`

	// Commands are a collection of status's for each of the commands defined in the plan,
	// maintained in their index order.
	Commands []PlanCommandStatus `json:"commands"`
}

PlanStatus contains the status and state of the entire plan operation.

func (*PlanStatus) DeepCopy

func (in *PlanStatus) DeepCopy() *PlanStatus

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

func (*PlanStatus) DeepCopyInto

func (in *PlanStatus) DeepCopyInto(out *PlanStatus)

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

type UpdateConfig

type UpdateConfig struct {
	metav1.ObjectMeta `json:"metadata,omitempty"`
	metav1.TypeMeta   `json:",omitempty,inline"`

	Spec UpdateSpec `json:"spec"`
}

+kubebuilder:object:root=true +kubebuilder:resource:scope=Cluster +genclient +genclient:onlyVerbs=create,delete,list,get,watch,update +genclient:nonNamespaced

func (*UpdateConfig) DeepCopy

func (in *UpdateConfig) DeepCopy() *UpdateConfig

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

func (*UpdateConfig) DeepCopyInto

func (in *UpdateConfig) DeepCopyInto(out *UpdateConfig)

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

func (*UpdateConfig) DeepCopyObject

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

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

func (*UpdateConfig) ToPlan

func (uc *UpdateConfig) ToPlan(nextVersion uc.VersionInfo) Plan

type UpdateConfigList

type UpdateConfigList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []UpdateConfig `json:"items"`
}

+kubebuilder:object:root=true +kubebuilder:resource:scope=Cluster

func (*UpdateConfigList) DeepCopy

func (in *UpdateConfigList) DeepCopy() *UpdateConfigList

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

func (*UpdateConfigList) DeepCopyInto

func (in *UpdateConfigList) DeepCopyInto(out *UpdateConfigList)

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

func (*UpdateConfigList) DeepCopyObject

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

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

type UpdateSpec

type UpdateSpec struct {
	// Channel defines the update channel to use for this update config
	// +kubebuilder:default:=stable
	Channel string `json:"channel,omitempty"`
	// UpdateServer defines the update server to use for this update config
	// +kubebuilder:default:="https://updates.k0sproject.io"
	UpdateServer string `json:"updateServer,omitempty"`
	// UpdateStrategy defines the update strategy to use for this update config
	UpgradeStrategy UpgradeStrategy `json:"upgradeStrategy,omitempty"`
	// PlanSpec defines the plan spec to use for this update config
	PlanSpec AutopilotPlanSpec `json:"planSpec,omitempty"`
}

func (*UpdateSpec) DeepCopy

func (in *UpdateSpec) DeepCopy() *UpdateSpec

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

func (*UpdateSpec) DeepCopyInto

func (in *UpdateSpec) DeepCopyInto(out *UpdateSpec)

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

type UpgradeStrategy

type UpgradeStrategy struct {
	// Type defines the type of upgrade strategy
	// +kubebuilder:validation:Enum=periodic;cron
	Type string `json:"type,omitempty"`
	// Cron defines the cron expression for the cron upgrade strategy
	// Deprecated: Cron is deprecated and will eventually be ignored
	Cron string `json:"cron,omitempty"`
	// Periodic defines the periodic upgrade strategy
	Periodic PeriodicUpgradeStrategy `json:"periodic,omitempty"`
}

func (*UpgradeStrategy) DeepCopy

func (in *UpgradeStrategy) DeepCopy() *UpgradeStrategy

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

func (*UpgradeStrategy) DeepCopyInto

func (in *UpgradeStrategy) DeepCopyInto(out *UpgradeStrategy)

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

Jump to

Keyboard shortcuts

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