From e71943e58698bef8dbd966e2fdd32f3fbb68edb5 Mon Sep 17 00:00:00 2001
From: Sheogorath <sheogorath@shivering-isles.com>
Date: Wed, 5 Oct 2022 17:07:49 +0200
Subject: [PATCH] feat(system-upgrades): Upgrade Fedora to version 36

---
 .../fedora-system-upgrade.yaml                | 46 +++++++++++++++++++
 .../system-upgrades/kustomization.yaml        |  1 +
 2 files changed, 47 insertions(+)
 create mode 100644 infrastructure/system-upgrades/fedora-system-upgrade.yaml

diff --git a/infrastructure/system-upgrades/fedora-system-upgrade.yaml b/infrastructure/system-upgrades/fedora-system-upgrade.yaml
new file mode 100644
index 000000000..8d1ac5fca
--- /dev/null
+++ b/infrastructure/system-upgrades/fedora-system-upgrade.yaml
@@ -0,0 +1,46 @@
+---
+apiVersion: v1
+kind: Secret
+metadata:
+  name: fedora-35-to-36-system-upgrade
+  namespace: system-upgrade
+type: Opaque
+stringData:
+  upgrade.sh: |
+    #!/bin/sh
+    set -e
+    set -x
+    systemd-run --same-dir --wait --collect --service-type=exec dnf install -y dnf-plugin-system-upgrade
+    systemd-run --same-dir --wait --collect --service-type=exec dnf system-upgrade download -y --best --releasever=36 --exclude="kubernetes*"
+    systemd-run --same-dir --wait --collect --service-type=exec dnf system-upgrade --exclude="kubernetes*" -y reboot
+---
+apiVersion: upgrade.cattle.io/v1
+kind: Plan
+metadata:
+  name: fedora-35-to-36-system-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: fedora-35-to-36-system-upgrade
+      path: /host/run/system-upgrade/secrets/fedora
+  drain:
+    deleteLocalData: true
+    ignoreDaemonSets: true
+    force: false
+  version: 36
+  upgrade:
+    image: registry.fedoraproject.org/fedora:35
+    command: ["chroot", "/host"]
+    args: ["sh", "/run/system-upgrade/secrets/fedora/upgrade.sh"]
diff --git a/infrastructure/system-upgrades/kustomization.yaml b/infrastructure/system-upgrades/kustomization.yaml
index b90f5b2d8..f6d7e9e52 100644
--- a/infrastructure/system-upgrades/kustomization.yaml
+++ b/infrastructure/system-upgrades/kustomization.yaml
@@ -11,3 +11,4 @@ resources:
   - longhorn-setup.yaml
   - logrotate.yaml
   - fedora-temperature-management.yaml
+  - fedora-system-upgrade.yaml
-- 
GitLab