Documentation ¶
Overview ¶
Package v1beta2 is the v1beta2 version of the API.
Index ¶
- Constants
- Variables
- func Resource(resource string) schema.GroupResource
- type AutopilotPlanCommand
- type AutopilotPlanCommandAirgapUpdate
- type AutopilotPlanCommandK0sUpdate
- type AutopilotPlanSpec
- type ControlNode
- type ControlNodeList
- type ControlNodeStatus
- type PeriodicUpgradeStrategy
- type Plan
- type PlanCommand
- type PlanCommandAirgapUpdate
- type PlanCommandAirgapUpdateStatus
- type PlanCommandK0sUpdate
- type PlanCommandK0sUpdateStatus
- type PlanCommandStatus
- type PlanCommandTarget
- type PlanCommandTargetDiscovery
- type PlanCommandTargetDiscoverySelector
- type PlanCommandTargetDiscoveryStatic
- type PlanCommandTargetLimits
- type PlanCommandTargetStateType
- type PlanCommandTargetStatus
- type PlanCommandTargets
- type PlanList
- type PlanPlatformResourceURLMap
- type PlanResourceURL
- type PlanSpec
- type PlanStateType
- type PlanStatus
- type UpdateConfig
- type UpdateConfigList
- type UpdateSpec
- type UpgradeStrategy
Constants ¶
const ( UpdateStrategyTypeCron = "cron" UpdateStrategyTypePeriodic = "periodic" )
const GroupName = "autopilot.k0sproject.io"
GroupName specifies the group name used to register the objects.
const UpdateConfigFinalizer = "updateconfig.autopilot.k0sproject.io"
Variables ¶
var ( // localSchemeBuilder and AddToScheme will stay in k8s.io/kubernetes. SchemeBuilder runtime.SchemeBuilder // Deprecated: use Install instead AddToScheme = localSchemeBuilder.AddToScheme Install = localSchemeBuilder.AddToScheme )
var GroupVersion = v1.GroupVersion{Group: GroupName, Version: "v1beta2"}
GroupVersion specifies the group and the version used to register the objects.
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 ¶
func (in *AutopilotPlanCommand) DeepCopy() *AutopilotPlanCommand
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 ¶
func (in *AutopilotPlanCommandAirgapUpdate) DeepCopy() *AutopilotPlanCommandAirgapUpdate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutopilotPlanCommandAirgapUpdate.
func (*AutopilotPlanCommandAirgapUpdate) DeepCopyInto ¶
func (in *AutopilotPlanCommandAirgapUpdate) DeepCopyInto(out *AutopilotPlanCommandAirgapUpdate)
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 ¶
func (in *AutopilotPlanCommandK0sUpdate) DeepCopy() *AutopilotPlanCommandK0sUpdate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutopilotPlanCommandK0sUpdate.
func (*AutopilotPlanCommandK0sUpdate) DeepCopyInto ¶
func (in *AutopilotPlanCommandK0sUpdate) DeepCopyInto(out *AutopilotPlanCommandK0sUpdate)
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 ¶
func (in *PeriodicUpgradeStrategy) DeepCopy() *PeriodicUpgradeStrategy
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Plan.
func (*Plan) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Plan) DeepCopyObject ¶
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 ¶
func (in *PlanCommandAirgapUpdate) DeepCopy() *PlanCommandAirgapUpdate
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 ¶
func (in *PlanCommandAirgapUpdateStatus) DeepCopy() *PlanCommandAirgapUpdateStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlanCommandAirgapUpdateStatus.
func (*PlanCommandAirgapUpdateStatus) DeepCopyInto ¶
func (in *PlanCommandAirgapUpdateStatus) DeepCopyInto(out *PlanCommandAirgapUpdateStatus)
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 ¶
func (in *PlanCommandK0sUpdate) DeepCopy() *PlanCommandK0sUpdate
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 ¶
func (in *PlanCommandK0sUpdateStatus) DeepCopy() *PlanCommandK0sUpdateStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlanCommandK0sUpdateStatus.
func (*PlanCommandK0sUpdateStatus) DeepCopyInto ¶
func (in *PlanCommandK0sUpdateStatus) DeepCopyInto(out *PlanCommandK0sUpdateStatus)
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 ¶
func (in *PlanCommandTargetDiscovery) DeepCopy() *PlanCommandTargetDiscovery
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlanCommandTargetDiscovery.
func (*PlanCommandTargetDiscovery) DeepCopyInto ¶
func (in *PlanCommandTargetDiscovery) DeepCopyInto(out *PlanCommandTargetDiscovery)
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 ¶
func (in *PlanCommandTargetDiscoverySelector) DeepCopy() *PlanCommandTargetDiscoverySelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlanCommandTargetDiscoverySelector.
func (*PlanCommandTargetDiscoverySelector) DeepCopyInto ¶
func (in *PlanCommandTargetDiscoverySelector) DeepCopyInto(out *PlanCommandTargetDiscoverySelector)
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 ¶
func (in *PlanCommandTargetDiscoveryStatic) DeepCopy() *PlanCommandTargetDiscoveryStatic
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlanCommandTargetDiscoveryStatic.
func (*PlanCommandTargetDiscoveryStatic) DeepCopyInto ¶
func (in *PlanCommandTargetDiscoveryStatic) DeepCopyInto(out *PlanCommandTargetDiscoveryStatic)
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 ¶
func (in *PlanCommandTargetLimits) DeepCopy() *PlanCommandTargetLimits
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 ¶
func (t PlanCommandTargetStateType) String() 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 ¶
func (in *PlanCommandTargetStatus) DeepCopy() *PlanCommandTargetStatus
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlanList.
func (*PlanList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PlanList) DeepCopyObject ¶
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 ¶
func (in PlanPlatformResourceURLMap) DeepCopy() PlanPlatformResourceURLMap
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlanPlatformResourceURLMap.
func (PlanPlatformResourceURLMap) DeepCopyInto ¶
func (in PlanPlatformResourceURLMap) DeepCopyInto(out *PlanPlatformResourceURLMap)
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlanSpec.
func (*PlanSpec) DeepCopyInto ¶
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.