* feat: distribution is a dict and nodes and cluster are top level Signed-off-by: Devin Buhl <devin@buhl.casa> * chore: housekeeping Signed-off-by: Devin Buhl <devin@buhl.casa> --------- Signed-off-by: Devin Buhl <devin@buhl.casa>
94 lines
2.2 KiB
YAML
94 lines
2.2 KiB
YAML
---
|
|
apiVersion: upgrade.cattle.io/v1
|
|
kind: Plan
|
|
metadata:
|
|
name: kubernetes
|
|
spec:
|
|
version: "${KUBE_VERSION}"
|
|
serviceAccountName: system-upgrade
|
|
secrets:
|
|
- name: talos
|
|
path: /var/run/secrets/talos.dev
|
|
ignoreUpdates: true
|
|
concurrency: 1
|
|
exclusive: true
|
|
nodeSelector:
|
|
matchExpressions:
|
|
- key: node-role.kubernetes.io/control-plane
|
|
operator: Exists
|
|
prepare: &prepare
|
|
image: "ghcr.io/siderolabs/talosctl:${SYSTEM_VERSION}"
|
|
envs:
|
|
- name: NODE_IP
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: status.hostIP
|
|
args:
|
|
- --nodes=$(NODE_IP)
|
|
- health
|
|
- --server=false
|
|
upgrade:
|
|
<<: *prepare
|
|
args:
|
|
- --nodes=$(NODE_IP)
|
|
- upgrade-k8s
|
|
- --to=$(SYSTEM_UPGRADE_PLAN_LATEST_VERSION)
|
|
---
|
|
apiVersion: upgrade.cattle.io/v1
|
|
kind: Plan
|
|
metadata:
|
|
name: talos
|
|
spec:
|
|
version: "${SYSTEM_VERSION}"
|
|
serviceAccountName: system-upgrade
|
|
secrets:
|
|
- name: talos
|
|
path: /var/run/secrets/talos.dev
|
|
ignoreUpdates: true
|
|
concurrency: 1
|
|
cordon: true
|
|
drain:
|
|
deleteLocalData: true
|
|
disableEviction: false
|
|
ignoreDaemonSets: true
|
|
exclusive: true
|
|
nodeSelector:
|
|
matchExpressions:
|
|
- key: kubernetes.io/os
|
|
operator: In
|
|
values: ["linux"]
|
|
tolerations:
|
|
- key: CriticalAddonsOnly
|
|
operator: Exists
|
|
- key: node-role.kubernetes.io/master
|
|
operator: Exists
|
|
effect: NoSchedule
|
|
- key: node-role.kubernetes.io/controlplane
|
|
operator: Exists
|
|
effect: NoSchedule
|
|
- key: node-role.kubernetes.io/control-plane
|
|
operator: Exists
|
|
effect: NoSchedule
|
|
- key: node-role.kubernetes.io/etcd
|
|
operator: Exists
|
|
effect: NoSchedule
|
|
prepare: &prepare
|
|
image: ghcr.io/siderolabs/talosctl
|
|
envs:
|
|
- name: NODE_IP
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: status.hostIP
|
|
args:
|
|
- --nodes=$(NODE_IP)
|
|
- health
|
|
- --server=false
|
|
upgrade:
|
|
<<: *prepare
|
|
args:
|
|
- --nodes=$(NODE_IP)
|
|
- upgrade
|
|
- --image=factory.talos.dev/installer/{{ nodes.talos.schematics.id }}:$(SYSTEM_UPGRADE_PLAN_LATEST_VERSION)
|
|
- --preserve=true
|
|
- --wait=false
|