Skip to content
Snippets Groups Projects
Verified Commit 5c7b2dfe authored by Sheogorath's avatar Sheogorath :european_castle:
Browse files

feature(system-upgrade): Setup automated kubernetes upgrades

This patch enables kubernetes upgrades for all clusters, this might
needs some adjustments in the future to allow different clusters in
different versions.

In order to ensure updates, there is currently a copr fork of the
upstream kubernetes.

References:
https://git.shivering-isles.com/sheogorath/kubernetes-fedora
parent fe3727eb
Branches
Tags
No related merge requests found
---
apiVersion: v1
kind: Secret
metadata:
name: kubernetes-upgrade
namespace: system-upgrade
type: Opaque
stringData:
kubernetes-version: "1.21"
setup-copr.sh: |
#!/bin/bash
set -e
set -x
secrets="$(dirname "$0")"
systemd-run --same-dir --wait --collect --service-type=exec dnf install -y dnf-plugins-core
systemd-run --same-dir --wait --collect --service-type=exec dnf copr enable -y "sheogorath/kubernetes-$(cat $secrets/kubernetes-version)"
kubernetes-upgrade.sh: |
#!/bin/bash
set -e
set -x
secrets="$(dirname "$0")"
systemd-run --same-dir --wait --collect --service-type=exec dnf upgrade -y kubernetes kubernetes-kubeadm
kubeadm upgrade apply --yes
upgrade.sh: |
#!/bin/bash
set -e
set -x
secrets="$(dirname "$0")"
$secrets/setup-copr.sh
$secrets/kubernetes-upgrade.sh
---
apiVersion: upgrade.cattle.io/v1
kind: Plan
metadata:
name: kubernetes-upgrade
namespace: system-upgrade
spec:
concurrency: 1
nodeSelector:
matchExpressions:
- key: feature.node.kubernetes.io/system-os_release.ID
operator: In
values:
- fedora
- key: feature.node.kubernetes.io/system-os_release.VERSION_ID.major
operator: In
values:
- "35"
serviceAccountName: system-upgrade
secrets:
- name: kubernetes-upgrade
path: /host/run/system-upgrade/secrets/kubernetes-upgrade
drain:
deleteLocalData: true
ignoreDaemonSets: true
force: false
version: "1.21"
upgrade:
image: docker.io/library/fedora:35
command: ["chroot", "/host"]
args: ["sh", "/run/system-upgrade/secrets/kubernetes-upgrade/upgrade.sh"]
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment