diff --git a/clusters/k8s01/infrastructure.yaml b/clusters/k8s01/infrastructure.yaml
index b213f4b91f4efd6138748aab013e546b27364afa..651a4694a79bac7fa187529feedbe0742a0339be 100644
--- a/clusters/k8s01/infrastructure.yaml
+++ b/clusters/k8s01/infrastructure.yaml
@@ -10,5 +10,5 @@ spec:
   sourceRef:
     kind: GitRepository
     name: flux-system
-  path: ./infrastructure
-  prune: true
+  path: ./infrastructure/k8s01
+  prune: false
diff --git a/infrastructure/calico/README.md b/infrastructure/base/calico/README.md
similarity index 100%
rename from infrastructure/calico/README.md
rename to infrastructure/base/calico/README.md
diff --git a/infrastructure/calico/felix-configuration.yaml b/infrastructure/base/calico/felix-configuration.yaml
similarity index 100%
rename from infrastructure/calico/felix-configuration.yaml
rename to infrastructure/base/calico/felix-configuration.yaml
diff --git a/infrastructure/calico/kustomization.yaml b/infrastructure/base/calico/kustomization.yaml
similarity index 100%
rename from infrastructure/calico/kustomization.yaml
rename to infrastructure/base/calico/kustomization.yaml
diff --git a/infrastructure/cert-manager/README.md b/infrastructure/base/cert-manager/README.md
similarity index 100%
rename from infrastructure/cert-manager/README.md
rename to infrastructure/base/cert-manager/README.md
diff --git a/infrastructure/cert-manager/alerts.yaml b/infrastructure/base/cert-manager/alerts.yaml
similarity index 100%
rename from infrastructure/cert-manager/alerts.yaml
rename to infrastructure/base/cert-manager/alerts.yaml
diff --git a/infrastructure/cert-manager/dashboards/cert-manager.json b/infrastructure/base/cert-manager/dashboards/cert-manager.json
similarity index 100%
rename from infrastructure/cert-manager/dashboards/cert-manager.json
rename to infrastructure/base/cert-manager/dashboards/cert-manager.json
diff --git a/infrastructure/cert-manager/kustomization.yaml b/infrastructure/base/cert-manager/kustomization.yaml
similarity index 100%
rename from infrastructure/cert-manager/kustomization.yaml
rename to infrastructure/base/cert-manager/kustomization.yaml
diff --git a/infrastructure/cert-manager/namespace.yaml b/infrastructure/base/cert-manager/namespace.yaml
similarity index 100%
rename from infrastructure/cert-manager/namespace.yaml
rename to infrastructure/base/cert-manager/namespace.yaml
diff --git a/infrastructure/cert-manager/networkpolicy-patch.yaml b/infrastructure/base/cert-manager/networkpolicy-patch.yaml
similarity index 100%
rename from infrastructure/cert-manager/networkpolicy-patch.yaml
rename to infrastructure/base/cert-manager/networkpolicy-patch.yaml
diff --git a/infrastructure/cert-manager/networkpolicy.yaml b/infrastructure/base/cert-manager/networkpolicy.yaml
similarity index 100%
rename from infrastructure/cert-manager/networkpolicy.yaml
rename to infrastructure/base/cert-manager/networkpolicy.yaml
diff --git a/infrastructure/cert-manager/release.yaml b/infrastructure/base/cert-manager/release.yaml
similarity index 100%
rename from infrastructure/cert-manager/release.yaml
rename to infrastructure/base/cert-manager/release.yaml
diff --git a/infrastructure/cert-manager/repository.yaml b/infrastructure/base/cert-manager/repository.yaml
similarity index 100%
rename from infrastructure/cert-manager/repository.yaml
rename to infrastructure/base/cert-manager/repository.yaml
diff --git a/infrastructure/cert-manager/self-signed.yaml b/infrastructure/base/cert-manager/self-signed.yaml
similarity index 100%
rename from infrastructure/cert-manager/self-signed.yaml
rename to infrastructure/base/cert-manager/self-signed.yaml
diff --git a/infrastructure/dashboard/kubernetes-dashboard.yaml b/infrastructure/base/dashboard/kubernetes-dashboard.yaml
similarity index 100%
rename from infrastructure/dashboard/kubernetes-dashboard.yaml
rename to infrastructure/base/dashboard/kubernetes-dashboard.yaml
diff --git a/infrastructure/dashboard/kustomization.yaml b/infrastructure/base/dashboard/kustomization.yaml
similarity index 100%
rename from infrastructure/dashboard/kustomization.yaml
rename to infrastructure/base/dashboard/kustomization.yaml
diff --git a/infrastructure/dashboard/namespace.yaml b/infrastructure/base/dashboard/namespace.yaml
similarity index 100%
rename from infrastructure/dashboard/namespace.yaml
rename to infrastructure/base/dashboard/namespace.yaml
diff --git a/infrastructure/drivers/amd-gpu.yaml b/infrastructure/base/drivers/amd-gpu.yaml
similarity index 100%
rename from infrastructure/drivers/amd-gpu.yaml
rename to infrastructure/base/drivers/amd-gpu.yaml
diff --git a/infrastructure/drivers/kustomization.yaml b/infrastructure/base/drivers/kustomization.yaml
similarity index 100%
rename from infrastructure/drivers/kustomization.yaml
rename to infrastructure/base/drivers/kustomization.yaml
diff --git a/infrastructure/drivers/namespace.yaml b/infrastructure/base/drivers/namespace.yaml
similarity index 100%
rename from infrastructure/drivers/namespace.yaml
rename to infrastructure/base/drivers/namespace.yaml
diff --git a/infrastructure/firewall/controller-config.yaml b/infrastructure/base/firewall/controller-config.yaml
similarity index 100%
rename from infrastructure/firewall/controller-config.yaml
rename to infrastructure/base/firewall/controller-config.yaml
diff --git a/infrastructure/firewall/ingress-base.yaml b/infrastructure/base/firewall/ingress-base.yaml
similarity index 100%
rename from infrastructure/firewall/ingress-base.yaml
rename to infrastructure/base/firewall/ingress-base.yaml
diff --git a/infrastructure/firewall/ingress-control-plane.yaml b/infrastructure/base/firewall/ingress-control-plane.yaml
similarity index 100%
rename from infrastructure/firewall/ingress-control-plane.yaml
rename to infrastructure/base/firewall/ingress-control-plane.yaml
diff --git a/infrastructure/firewall/ingress-metallb.yaml b/infrastructure/base/firewall/ingress-metallb.yaml
similarity index 100%
rename from infrastructure/firewall/ingress-metallb.yaml
rename to infrastructure/base/firewall/ingress-metallb.yaml
diff --git a/infrastructure/firewall/ingress-monitoring.yaml b/infrastructure/base/firewall/ingress-monitoring.yaml
similarity index 100%
rename from infrastructure/firewall/ingress-monitoring.yaml
rename to infrastructure/base/firewall/ingress-monitoring.yaml
diff --git a/infrastructure/firewall/ingress-worker.yaml b/infrastructure/base/firewall/ingress-worker.yaml
similarity index 100%
rename from infrastructure/firewall/ingress-worker.yaml
rename to infrastructure/base/firewall/ingress-worker.yaml
diff --git a/infrastructure/firewall/kustomization.yaml b/infrastructure/base/firewall/kustomization.yaml
similarity index 100%
rename from infrastructure/firewall/kustomization.yaml
rename to infrastructure/base/firewall/kustomization.yaml
diff --git a/infrastructure/flux-system/alerts.yaml b/infrastructure/base/flux-system/alerts.yaml
similarity index 100%
rename from infrastructure/flux-system/alerts.yaml
rename to infrastructure/base/flux-system/alerts.yaml
diff --git a/infrastructure/flux-system/kustomization.yaml b/infrastructure/base/flux-system/kustomization.yaml
similarity index 100%
rename from infrastructure/flux-system/kustomization.yaml
rename to infrastructure/base/flux-system/kustomization.yaml
diff --git a/infrastructure/flux-system/monitoring/dashboards/cluster.json b/infrastructure/base/flux-system/monitoring/dashboards/cluster.json
similarity index 100%
rename from infrastructure/flux-system/monitoring/dashboards/cluster.json
rename to infrastructure/base/flux-system/monitoring/dashboards/cluster.json
diff --git a/infrastructure/flux-system/monitoring/dashboards/control-plane.json b/infrastructure/base/flux-system/monitoring/dashboards/control-plane.json
similarity index 100%
rename from infrastructure/flux-system/monitoring/dashboards/control-plane.json
rename to infrastructure/base/flux-system/monitoring/dashboards/control-plane.json
diff --git a/infrastructure/flux-system/monitoring/dashboards/logs.json b/infrastructure/base/flux-system/monitoring/dashboards/logs.json
similarity index 100%
rename from infrastructure/flux-system/monitoring/dashboards/logs.json
rename to infrastructure/base/flux-system/monitoring/dashboards/logs.json
diff --git a/infrastructure/flux-system/monitoring/kustomization.yaml b/infrastructure/base/flux-system/monitoring/kustomization.yaml
similarity index 100%
rename from infrastructure/flux-system/monitoring/kustomization.yaml
rename to infrastructure/base/flux-system/monitoring/kustomization.yaml
diff --git a/infrastructure/flux-system/monitoring/networkpolicy.yaml b/infrastructure/base/flux-system/monitoring/networkpolicy.yaml
similarity index 100%
rename from infrastructure/flux-system/monitoring/networkpolicy.yaml
rename to infrastructure/base/flux-system/monitoring/networkpolicy.yaml
diff --git a/infrastructure/flux-system/monitoring/podmonitor.yaml b/infrastructure/base/flux-system/monitoring/podmonitor.yaml
similarity index 100%
rename from infrastructure/flux-system/monitoring/podmonitor.yaml
rename to infrastructure/base/flux-system/monitoring/podmonitor.yaml
diff --git a/infrastructure/flux-system/tf-controller.yaml b/infrastructure/base/flux-system/tf-controller.yaml
similarity index 100%
rename from infrastructure/flux-system/tf-controller.yaml
rename to infrastructure/base/flux-system/tf-controller.yaml
diff --git a/infrastructure/kube-system/README.md b/infrastructure/base/kube-system/README.md
similarity index 100%
rename from infrastructure/kube-system/README.md
rename to infrastructure/base/kube-system/README.md
diff --git a/infrastructure/kube-system/descheduler.yaml b/infrastructure/base/kube-system/descheduler.yaml
similarity index 100%
rename from infrastructure/kube-system/descheduler.yaml
rename to infrastructure/base/kube-system/descheduler.yaml
diff --git a/infrastructure/kube-system/kustomization.yaml b/infrastructure/base/kube-system/kustomization.yaml
similarity index 100%
rename from infrastructure/kube-system/kustomization.yaml
rename to infrastructure/base/kube-system/kustomization.yaml
diff --git a/infrastructure/kube-system/metrics-server.yaml b/infrastructure/base/kube-system/metrics-server.yaml
similarity index 100%
rename from infrastructure/kube-system/metrics-server.yaml
rename to infrastructure/base/kube-system/metrics-server.yaml
diff --git a/infrastructure/kube-system/poddisruptionbudget.yaml b/infrastructure/base/kube-system/poddisruptionbudget.yaml
similarity index 100%
rename from infrastructure/kube-system/poddisruptionbudget.yaml
rename to infrastructure/base/kube-system/poddisruptionbudget.yaml
diff --git a/infrastructure/kube-system/quorum.yaml b/infrastructure/base/kube-system/quorum.yaml
similarity index 100%
rename from infrastructure/kube-system/quorum.yaml
rename to infrastructure/base/kube-system/quorum.yaml
diff --git a/infrastructure/kube-system/snapshot-controller.yaml b/infrastructure/base/kube-system/snapshot-controller.yaml
similarity index 100%
rename from infrastructure/kube-system/snapshot-controller.yaml
rename to infrastructure/base/kube-system/snapshot-controller.yaml
diff --git a/infrastructure/longhorn/README.md b/infrastructure/base/longhorn/README.md
similarity index 100%
rename from infrastructure/longhorn/README.md
rename to infrastructure/base/longhorn/README.md
diff --git a/infrastructure/longhorn/dashboards/longhorn.json b/infrastructure/base/longhorn/dashboards/longhorn.json
similarity index 100%
rename from infrastructure/longhorn/dashboards/longhorn.json
rename to infrastructure/base/longhorn/dashboards/longhorn.json
diff --git a/infrastructure/longhorn/hotfix-7183.yaml b/infrastructure/base/longhorn/hotfix-7183.yaml
similarity index 100%
rename from infrastructure/longhorn/hotfix-7183.yaml
rename to infrastructure/base/longhorn/hotfix-7183.yaml
diff --git a/infrastructure/longhorn/kustomization.yaml b/infrastructure/base/longhorn/kustomization.yaml
similarity index 100%
rename from infrastructure/longhorn/kustomization.yaml
rename to infrastructure/base/longhorn/kustomization.yaml
diff --git a/infrastructure/longhorn/monitoring.yaml b/infrastructure/base/longhorn/monitoring.yaml
similarity index 100%
rename from infrastructure/longhorn/monitoring.yaml
rename to infrastructure/base/longhorn/monitoring.yaml
diff --git a/infrastructure/longhorn/namespace.yaml b/infrastructure/base/longhorn/namespace.yaml
similarity index 100%
rename from infrastructure/longhorn/namespace.yaml
rename to infrastructure/base/longhorn/namespace.yaml
diff --git a/infrastructure/longhorn/networkpolicy.yaml b/infrastructure/base/longhorn/networkpolicy.yaml
similarity index 100%
rename from infrastructure/longhorn/networkpolicy.yaml
rename to infrastructure/base/longhorn/networkpolicy.yaml
diff --git a/infrastructure/longhorn/release.yaml b/infrastructure/base/longhorn/release.yaml
similarity index 100%
rename from infrastructure/longhorn/release.yaml
rename to infrastructure/base/longhorn/release.yaml
diff --git a/infrastructure/longhorn/repository.yaml b/infrastructure/base/longhorn/repository.yaml
similarity index 100%
rename from infrastructure/longhorn/repository.yaml
rename to infrastructure/base/longhorn/repository.yaml
diff --git a/infrastructure/longhorn/snapshot.yaml b/infrastructure/base/longhorn/snapshot.yaml
similarity index 100%
rename from infrastructure/longhorn/snapshot.yaml
rename to infrastructure/base/longhorn/snapshot.yaml
diff --git a/infrastructure/metallb/README.md b/infrastructure/base/metallb/README.md
similarity index 100%
rename from infrastructure/metallb/README.md
rename to infrastructure/base/metallb/README.md
diff --git a/infrastructure/metallb/dashboards/metallb.json b/infrastructure/base/metallb/dashboards/metallb.json
similarity index 100%
rename from infrastructure/metallb/dashboards/metallb.json
rename to infrastructure/base/metallb/dashboards/metallb.json
diff --git a/infrastructure/metallb/kustomization.yaml b/infrastructure/base/metallb/kustomization.yaml
similarity index 100%
rename from infrastructure/metallb/kustomization.yaml
rename to infrastructure/base/metallb/kustomization.yaml
diff --git a/infrastructure/metallb/namespace.yaml b/infrastructure/base/metallb/namespace.yaml
similarity index 100%
rename from infrastructure/metallb/namespace.yaml
rename to infrastructure/base/metallb/namespace.yaml
diff --git a/infrastructure/metallb/networkpolicy.yaml b/infrastructure/base/metallb/networkpolicy.yaml
similarity index 100%
rename from infrastructure/metallb/networkpolicy.yaml
rename to infrastructure/base/metallb/networkpolicy.yaml
diff --git a/infrastructure/metallb/release.yaml b/infrastructure/base/metallb/release.yaml
similarity index 100%
rename from infrastructure/metallb/release.yaml
rename to infrastructure/base/metallb/release.yaml
diff --git a/infrastructure/metallb/repository.yaml b/infrastructure/base/metallb/repository.yaml
similarity index 100%
rename from infrastructure/metallb/repository.yaml
rename to infrastructure/base/metallb/repository.yaml
diff --git a/infrastructure/monitoring/README.md b/infrastructure/base/monitoring/README.md
similarity index 100%
rename from infrastructure/monitoring/README.md
rename to infrastructure/base/monitoring/README.md
diff --git a/infrastructure/monitoring/calico-networkpolicy.yaml b/infrastructure/base/monitoring/calico-networkpolicy.yaml
similarity index 100%
rename from infrastructure/monitoring/calico-networkpolicy.yaml
rename to infrastructure/base/monitoring/calico-networkpolicy.yaml
diff --git a/infrastructure/monitoring/dashboards/cluster-cpu-check.json b/infrastructure/base/monitoring/dashboards/cluster-cpu-check.json
similarity index 100%
rename from infrastructure/monitoring/dashboards/cluster-cpu-check.json
rename to infrastructure/base/monitoring/dashboards/cluster-cpu-check.json
diff --git a/infrastructure/monitoring/dashboards/kubernetes-persistent-volumes-cluster.json b/infrastructure/base/monitoring/dashboards/kubernetes-persistent-volumes-cluster.json
similarity index 100%
rename from infrastructure/monitoring/dashboards/kubernetes-persistent-volumes-cluster.json
rename to infrastructure/base/monitoring/dashboards/kubernetes-persistent-volumes-cluster.json
diff --git a/infrastructure/monitoring/dashboards/sloth-details.json b/infrastructure/base/monitoring/dashboards/sloth-details.json
similarity index 100%
rename from infrastructure/monitoring/dashboards/sloth-details.json
rename to infrastructure/base/monitoring/dashboards/sloth-details.json
diff --git a/infrastructure/monitoring/dashboards/sloth-high-level.json b/infrastructure/base/monitoring/dashboards/sloth-high-level.json
similarity index 100%
rename from infrastructure/monitoring/dashboards/sloth-high-level.json
rename to infrastructure/base/monitoring/dashboards/sloth-high-level.json
diff --git a/infrastructure/monitoring/json-exporter-monitor.yaml b/infrastructure/base/monitoring/json-exporter-monitor.yaml
similarity index 100%
rename from infrastructure/monitoring/json-exporter-monitor.yaml
rename to infrastructure/base/monitoring/json-exporter-monitor.yaml
diff --git a/infrastructure/monitoring/kustomization.yaml b/infrastructure/base/monitoring/kustomization.yaml
similarity index 100%
rename from infrastructure/monitoring/kustomization.yaml
rename to infrastructure/base/monitoring/kustomization.yaml
diff --git a/infrastructure/monitoring/namespace.yaml b/infrastructure/base/monitoring/namespace.yaml
similarity index 100%
rename from infrastructure/monitoring/namespace.yaml
rename to infrastructure/base/monitoring/namespace.yaml
diff --git a/infrastructure/monitoring/networkpolicy.yaml b/infrastructure/base/monitoring/networkpolicy.yaml
similarity index 100%
rename from infrastructure/monitoring/networkpolicy.yaml
rename to infrastructure/base/monitoring/networkpolicy.yaml
diff --git a/infrastructure/monitoring/release.yaml b/infrastructure/base/monitoring/release.yaml
similarity index 100%
rename from infrastructure/monitoring/release.yaml
rename to infrastructure/base/monitoring/release.yaml
diff --git a/infrastructure/monitoring/repository.yaml b/infrastructure/base/monitoring/repository.yaml
similarity index 100%
rename from infrastructure/monitoring/repository.yaml
rename to infrastructure/base/monitoring/repository.yaml
diff --git a/infrastructure/monitoring/sloth.yaml b/infrastructure/base/monitoring/sloth.yaml
similarity index 100%
rename from infrastructure/monitoring/sloth.yaml
rename to infrastructure/base/monitoring/sloth.yaml
diff --git a/infrastructure/nginx-system/README.md b/infrastructure/base/nginx-system/README.md
similarity index 100%
rename from infrastructure/nginx-system/README.md
rename to infrastructure/base/nginx-system/README.md
diff --git a/infrastructure/nginx-system/base-config.yaml b/infrastructure/base/nginx-system/base-config.yaml
similarity index 100%
rename from infrastructure/nginx-system/base-config.yaml
rename to infrastructure/base/nginx-system/base-config.yaml
diff --git a/infrastructure/nginx-system/dashboards/nginx.json b/infrastructure/base/nginx-system/dashboards/nginx.json
similarity index 100%
rename from infrastructure/nginx-system/dashboards/nginx.json
rename to infrastructure/base/nginx-system/dashboards/nginx.json
diff --git a/infrastructure/nginx-system/external.yaml b/infrastructure/base/nginx-system/external.yaml
similarity index 100%
rename from infrastructure/nginx-system/external.yaml
rename to infrastructure/base/nginx-system/external.yaml
diff --git a/infrastructure/nginx-system/internal.yaml b/infrastructure/base/nginx-system/internal.yaml
similarity index 100%
rename from infrastructure/nginx-system/internal.yaml
rename to infrastructure/base/nginx-system/internal.yaml
diff --git a/infrastructure/nginx-system/kustomization.yaml b/infrastructure/base/nginx-system/kustomization.yaml
similarity index 100%
rename from infrastructure/nginx-system/kustomization.yaml
rename to infrastructure/base/nginx-system/kustomization.yaml
diff --git a/infrastructure/nginx-system/namespace.yaml b/infrastructure/base/nginx-system/namespace.yaml
similarity index 100%
rename from infrastructure/nginx-system/namespace.yaml
rename to infrastructure/base/nginx-system/namespace.yaml
diff --git a/infrastructure/nginx-system/repository.yaml b/infrastructure/base/nginx-system/repository.yaml
similarity index 100%
rename from infrastructure/nginx-system/repository.yaml
rename to infrastructure/base/nginx-system/repository.yaml
diff --git a/infrastructure/node-features/README.md b/infrastructure/base/node-features/README.md
similarity index 100%
rename from infrastructure/node-features/README.md
rename to infrastructure/base/node-features/README.md
diff --git a/infrastructure/node-features/kustomization.yaml b/infrastructure/base/node-features/kustomization.yaml
similarity index 100%
rename from infrastructure/node-features/kustomization.yaml
rename to infrastructure/base/node-features/kustomization.yaml
diff --git a/infrastructure/node-features/namespace.yaml b/infrastructure/base/node-features/namespace.yaml
similarity index 100%
rename from infrastructure/node-features/namespace.yaml
rename to infrastructure/base/node-features/namespace.yaml
diff --git a/infrastructure/node-features/release.yaml b/infrastructure/base/node-features/release.yaml
similarity index 100%
rename from infrastructure/node-features/release.yaml
rename to infrastructure/base/node-features/release.yaml
diff --git a/infrastructure/node-features/repository.yaml b/infrastructure/base/node-features/repository.yaml
similarity index 100%
rename from infrastructure/node-features/repository.yaml
rename to infrastructure/base/node-features/repository.yaml
diff --git a/infrastructure/postgres/dashboards/postgresql-database.json b/infrastructure/base/postgres/dashboards/postgresql-database.json
similarity index 100%
rename from infrastructure/postgres/dashboards/postgresql-database.json
rename to infrastructure/base/postgres/dashboards/postgresql-database.json
diff --git a/infrastructure/postgres/kustomization.yaml b/infrastructure/base/postgres/kustomization.yaml
similarity index 100%
rename from infrastructure/postgres/kustomization.yaml
rename to infrastructure/base/postgres/kustomization.yaml
diff --git a/infrastructure/postgres/namespace.yaml b/infrastructure/base/postgres/namespace.yaml
similarity index 100%
rename from infrastructure/postgres/namespace.yaml
rename to infrastructure/base/postgres/namespace.yaml
diff --git a/infrastructure/postgres/podmonitor.yaml b/infrastructure/base/postgres/podmonitor.yaml
similarity index 100%
rename from infrastructure/postgres/podmonitor.yaml
rename to infrastructure/base/postgres/podmonitor.yaml
diff --git a/infrastructure/postgres/prometheusrules.yaml b/infrastructure/base/postgres/prometheusrules.yaml
similarity index 100%
rename from infrastructure/postgres/prometheusrules.yaml
rename to infrastructure/base/postgres/prometheusrules.yaml
diff --git a/infrastructure/postgres/release.yaml b/infrastructure/base/postgres/release.yaml
similarity index 100%
rename from infrastructure/postgres/release.yaml
rename to infrastructure/base/postgres/release.yaml
diff --git a/infrastructure/postgres/repository.yaml b/infrastructure/base/postgres/repository.yaml
similarity index 100%
rename from infrastructure/postgres/repository.yaml
rename to infrastructure/base/postgres/repository.yaml
diff --git a/infrastructure/redis/dashboards/redis-operator.json b/infrastructure/base/redis/dashboards/redis-operator.json
similarity index 100%
rename from infrastructure/redis/dashboards/redis-operator.json
rename to infrastructure/base/redis/dashboards/redis-operator.json
diff --git a/infrastructure/redis/kustomization.yaml b/infrastructure/base/redis/kustomization.yaml
similarity index 100%
rename from infrastructure/redis/kustomization.yaml
rename to infrastructure/base/redis/kustomization.yaml
diff --git a/infrastructure/redis/namespace.yaml b/infrastructure/base/redis/namespace.yaml
similarity index 100%
rename from infrastructure/redis/namespace.yaml
rename to infrastructure/base/redis/namespace.yaml
diff --git a/infrastructure/redis/release.yaml b/infrastructure/base/redis/release.yaml
similarity index 100%
rename from infrastructure/redis/release.yaml
rename to infrastructure/base/redis/release.yaml
diff --git a/infrastructure/redis/repository.yaml b/infrastructure/base/redis/repository.yaml
similarity index 100%
rename from infrastructure/redis/repository.yaml
rename to infrastructure/base/redis/repository.yaml
diff --git a/infrastructure/system-upgrades/README.md b/infrastructure/base/system-upgrades/README.md
similarity index 100%
rename from infrastructure/system-upgrades/README.md
rename to infrastructure/base/system-upgrades/README.md
diff --git a/infrastructure/system-upgrades/calver-server.yaml b/infrastructure/base/system-upgrades/calver-server.yaml
similarity index 100%
rename from infrastructure/system-upgrades/calver-server.yaml
rename to infrastructure/base/system-upgrades/calver-server.yaml
diff --git a/infrastructure/system-upgrades/fedora.yaml b/infrastructure/base/system-upgrades/fedora/fedora-autoupdate.yaml
similarity index 87%
rename from infrastructure/system-upgrades/fedora.yaml
rename to infrastructure/base/system-upgrades/fedora/fedora-autoupdate.yaml
index a608a9eae20b3471b6a8f9768b0df252f058e968..948dc486d77e470f41071081fa9aa0cdeaf46605 100644
--- a/infrastructure/system-upgrades/fedora.yaml
+++ b/infrastructure/base/system-upgrades/fedora/fedora-autoupdate.yaml
@@ -35,12 +35,6 @@ spec:
         operator: In
         values:
           - "true"
-      - key: feature.node.kubernetes.io/system-os_release.VERSION_ID.major
-        operator: In
-        values:
-          - "37"
-          - "38"
-          - "39"
   serviceAccountName: system-upgrade-executer
   secrets:
     - name: fedora-dnf-upgrade
diff --git a/infrastructure/system-upgrades/fedora-system-upgrade.yaml b/infrastructure/base/system-upgrades/fedora/fedora-system-upgrade.yaml
similarity index 100%
rename from infrastructure/system-upgrades/fedora-system-upgrade.yaml
rename to infrastructure/base/system-upgrades/fedora/fedora-system-upgrade.yaml
diff --git a/infrastructure/system-upgrades/fedora-temperature-management.yaml b/infrastructure/base/system-upgrades/fedora/fedora-temperature-management.yaml
similarity index 100%
rename from infrastructure/system-upgrades/fedora-temperature-management.yaml
rename to infrastructure/base/system-upgrades/fedora/fedora-temperature-management.yaml
diff --git a/infrastructure/base/system-upgrades/fedora/kustomization.yaml b/infrastructure/base/system-upgrades/fedora/kustomization.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..d3f32a1a60670e3380d0590f1c66a00ca3e2ac23
--- /dev/null
+++ b/infrastructure/base/system-upgrades/fedora/kustomization.yaml
@@ -0,0 +1,7 @@
+apiVersion: kustomize.config.k8s.io/v1alpha1
+kind: Component
+
+resources:
+  - fedora-autoupdate.yaml
+  - fedora-system-upgrade.yaml
+  - fedora-temperature-management.yaml
\ No newline at end of file
diff --git a/infrastructure/system-upgrades/kubelet.yaml b/infrastructure/base/system-upgrades/kubelet.yaml
similarity index 100%
rename from infrastructure/system-upgrades/kubelet.yaml
rename to infrastructure/base/system-upgrades/kubelet.yaml
diff --git a/infrastructure/system-upgrades/kubernetes.yaml b/infrastructure/base/system-upgrades/kubernetes.yaml
similarity index 100%
rename from infrastructure/system-upgrades/kubernetes.yaml
rename to infrastructure/base/system-upgrades/kubernetes.yaml
diff --git a/infrastructure/system-upgrades/kured.yaml b/infrastructure/base/system-upgrades/kured.yaml
similarity index 100%
rename from infrastructure/system-upgrades/kured.yaml
rename to infrastructure/base/system-upgrades/kured.yaml
diff --git a/infrastructure/system-upgrades/kustomization.yaml b/infrastructure/base/system-upgrades/kustomization.yaml
similarity index 59%
rename from infrastructure/system-upgrades/kustomization.yaml
rename to infrastructure/base/system-upgrades/kustomization.yaml
index 0c1ba4a7facea1ca86220dad74fcc9f9409933a5..e693c8c02bea3a25ee81c16dde8355950546fc07 100644
--- a/infrastructure/system-upgrades/kustomization.yaml
+++ b/infrastructure/base/system-upgrades/kustomization.yaml
@@ -4,11 +4,12 @@ namespace: system-upgrade
 resources:
   - calver-server.yaml
   - kured.yaml
-  - fedora.yaml
+  - fedora-autoupdate.yaml
   - kubernetes.yaml
   - kubelet.yaml
   - longhorn-lvm.yaml
   - longhorn-setup.yaml
-  - fedora-temperature-management.yaml
-  - fedora-system-upgrade.yaml
-  - ../../shared/networkpolicies/allow-from-same-namespace.yaml
\ No newline at end of file
+  - ../../shared/networkpolicies/allow-from-same-namespace.yaml
+
+components:
+  - fedora
\ No newline at end of file
diff --git a/infrastructure/system-upgrades/longhorn-lvm.yaml b/infrastructure/base/system-upgrades/longhorn-lvm.yaml
similarity index 100%
rename from infrastructure/system-upgrades/longhorn-lvm.yaml
rename to infrastructure/base/system-upgrades/longhorn-lvm.yaml
diff --git a/infrastructure/system-upgrades/longhorn-setup.yaml b/infrastructure/base/system-upgrades/longhorn-setup.yaml
similarity index 100%
rename from infrastructure/system-upgrades/longhorn-setup.yaml
rename to infrastructure/base/system-upgrades/longhorn-setup.yaml
diff --git a/infrastructure/vpa/admissioncontroller-patch.yaml b/infrastructure/base/vpa/admissioncontroller-patch.yaml
similarity index 100%
rename from infrastructure/vpa/admissioncontroller-patch.yaml
rename to infrastructure/base/vpa/admissioncontroller-patch.yaml
diff --git a/infrastructure/vpa/certificate.yaml b/infrastructure/base/vpa/certificate.yaml
similarity index 100%
rename from infrastructure/vpa/certificate.yaml
rename to infrastructure/base/vpa/certificate.yaml
diff --git a/infrastructure/vpa/deployment-patch.yaml b/infrastructure/base/vpa/deployment-patch.yaml
similarity index 100%
rename from infrastructure/vpa/deployment-patch.yaml
rename to infrastructure/base/vpa/deployment-patch.yaml
diff --git a/infrastructure/vpa/kustomization.yaml b/infrastructure/base/vpa/kustomization.yaml
similarity index 100%
rename from infrastructure/vpa/kustomization.yaml
rename to infrastructure/base/vpa/kustomization.yaml
diff --git a/infrastructure/vpa/namespace.yaml b/infrastructure/base/vpa/namespace.yaml
similarity index 100%
rename from infrastructure/vpa/namespace.yaml
rename to infrastructure/base/vpa/namespace.yaml
diff --git a/infrastructure/k8s01/kustomization.yaml b/infrastructure/k8s01/kustomization.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..efca821c88367da57b82d1b16cebcd12a8125902
--- /dev/null
+++ b/infrastructure/k8s01/kustomization.yaml
@@ -0,0 +1,18 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+kind: Kustomization
+resources:
+  - ../base/kube-system
+  - ../base/node-features
+  - ../base/drivers
+  - ../base/system-upgrades
+  - ../base/firewall
+  - ../base/metallb
+  - ../base/cert-manager
+  - ../base/nginx-system
+  - ../base/longhorn
+  - ../base/monitoring
+  - ../base/flux-system
+  - ../base/postgres
+  - ../base/redis
+  - ../base/dashboard
+  - ../base/vpa
diff --git a/infrastructure/kustomization.yaml b/infrastructure/kustomization.yaml
deleted file mode 100644
index 90de65edb25964bb4d5890e1906197dfdda5f4ae..0000000000000000000000000000000000000000
--- a/infrastructure/kustomization.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-  - kube-system
-  - node-features
-  - drivers
-  - system-upgrades
-  - firewall
-  - metallb
-  - cert-manager
-  - nginx-system
-  - longhorn
-  - monitoring
-  - flux-system
-  - postgres
-  - redis
-  - dashboard
-  - vpa
diff --git a/infrastructure/system-upgrades/disable-syslog.yaml b/infrastructure/system-upgrades/disable-syslog.yaml
deleted file mode 100644
index 1abfcae8f1f34f48737de39092900f69533cbc53..0000000000000000000000000000000000000000
--- a/infrastructure/system-upgrades/disable-syslog.yaml
+++ /dev/null
@@ -1,43 +0,0 @@
----
-apiVersion: v1
-kind: Secret
-metadata:
-  name: disable-syslog
-  namespace: system-upgrade
-type: Opaque
-stringData:
-  upgrade.sh: |
-    #!/bin/sh
-    set -e
-    set -x
-    secrets="$(dirname $0)"
-    systemctl mask rsyslog.service
-    systemctl stop rsyslog.service
----
-apiVersion: upgrade.cattle.io/v1
-kind: Plan
-metadata:
-  name: disable-syslog
-  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:
-          - "36"
-          - "37"
-  serviceAccountName: system-upgrade-executer
-  secrets:
-    - name: disable-syslog
-      path: /host/run/system-upgrade/secrets/disable-syslog
-  version: "1.0.0"
-  upgrade:
-    image: quay.io/fedora/fedora:39
-    command: ["chroot", "/host"]
-    args: ["sh", "/run/system-upgrade/secrets/disable-syslog/upgrade.sh"]