Kind
Talosupgrade
Group
tuppr.home-operations.com
Version
v1alpha1
apiVersion: tuppr.home-operations.com/v1alpha1 kind: Talosupgrade metadata: name: example
View raw schema
apiVersion string
APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
kind string
Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
metadata object
spec object
TalosUpgradeSpec defines the desired state of TalosUpgrade
drain object
Drain configuration for the node prior to upgrade
deleteLocalData boolean
DeleteLocalData causes the drain to continue even if there are pods using emptyDir (local data that will be deleted when the node is drained).
disableEviction boolean
DisableEviction forces drain to use delete, even if eviction is supported.
force boolean
Force continues even if there are pods that do not declare a controller.
ignoreDaemonSets boolean
IgnoreDaemonSets ignores DaemonSet-managed pods.
skipWaitForDeleteTimeout integer
SkipWaitForDeleteTimeout specifies that if a pod DeletionTimestamp is older than N seconds, skip waiting for the pod. Seconds must be greater than 0 to skip.
healthChecks []object
HealthChecks defines a list of CEL-based health checks to perform before each node upgrade
apiVersion string required
APIVersion of the resource to check
description string
Description of what this check validates (for status/logging)
expr string required
CEL expression that must evaluate to true for the check to pass The resource object is available as 'object' and status as 'status'
kind string required
Kind of the resource to check
name string
Name of the specific resource (optional, if empty checks all resources of this kind)
namespace string
Namespace of the resource (optional, for namespaced resources)
timeout string
Timeout for this health check
pattern: ^([0-9]+[smh])+$
minLength: 2
maintenance object
Maintenance configuration behavior for upgrade operations
windows []object
minItems: 1
duration string required
How long the window stays open (e.g., "4h", "2h30m")
pattern: ^([0-9]+[smh])+$
start string required
Cron expression (5-field): minute hour day-of-month month day-of-week
minLength: 9
timezone string
IANA timezone (e.g., "UTC", "Europe/Paris")
nodeSelector object
NodeSelector defines which nodes should be included in this upgrade.
matchExpressions []object
matchExpressions is a list of label selector requirements. The requirements are ANDed.
key string required
key is the label key that the selector applies to.
operator string required
operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
values []string
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
matchLabels object
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
policy object
Policy configures upgrade behavior
debug boolean
Debug enables debug mode for the upgrade
force boolean
Force the upgrade (skip checks on etcd health and members)
placement string
Placement controls how strictly upgrade jobs avoid the target node hard: required avoidance (job will fail if can't avoid target node) soft: preferred avoidance (job prefers to avoid but can run on target node)
enum: hard, soft
rebootMode string
RebootMode select the reboot mode during upgrade
enum: default, powercycle
stage boolean
Stage the upgrade to perform it after a reboot
timeout string
Timeout for the per-node talosctl upgrade command
pattern: ^([0-9]+[smh])+$
talos object
Talos specifies the talos configuration for upgrade operations
version string required
Version is the target Talos version to upgrade to (e.g., "v1.11.0")
pattern: ^v[0-9]+\.[0-9]+\.[0-9]+(-[a-zA-Z0-9\-\.]+)?$
talosctl object
Talosctl specifies the talosctl configuration for upgrade operations
image object
Image specifies the talosctl container image
pullPolicy string
PullPolicy describes a policy for if/when to pull a container image
enum: Always, Never, IfNotPresent
repository string
Repository is the talosctl container image repository
tag string
Tag is the talosctl container image tag If not specified, defaults to the target version
status object
TalosUpgradeStatus defines the observed state of TalosUpgrade
completedNodes []string
CompletedNodes are nodes that have been successfully upgraded
currentNode string
CurrentNode is the node currently being upgraded
failedNodes []object
FailedNodes are nodes that failed to upgrade
jobName string
JobName is the name of the job handling this node's upgrade
lastError string
LastError contains the last error message
nodeName string required
NodeName is the name of the node
retries integer
Retries is the number of times upgrade was attempted
minimum: 0
lastUpdated string
LastUpdated timestamp of last status update
format: date-time
message string
Message provides details about the current state
nextMaintenanceWindow string
NextMaintenanceWindow reflect the next time a maintenance can happen
format: date-time
observedGeneration integer
ObservedGeneration reflects the generation of the most recently observed spec
format: int64
phase string
Phase represents the current phase of the upgrade
enum: Pending, HealthChecking, Draining, Upgrading, Rebooting, Completed, Failed, MaintenanceWindow
Copied!