From 68cb5e99a4d60797fe0d358104d160eb66849acb Mon Sep 17 00:00:00 2001 From: Michael Thomson Date: Wed, 29 May 2024 16:27:14 -0400 Subject: [PATCH] snapshot-controller --- .../helmrepository-piraeus-charts.yaml | 8 ++++++ .../kustomization-snapshot-controller.yaml | 18 +++++++++++++ .../namespace-snapshot-controller.yaml | 4 +++ .../helmrelease-snapshot-controller.yaml | 26 +++++++++++++++++++ 4 files changed, 56 insertions(+) create mode 100644 bootstrap/helmrepositories/helmrepository-piraeus-charts.yaml create mode 100644 bootstrap/kustomizations/kustomization-snapshot-controller.yaml create mode 100644 bootstrap/namespaces/namespace-snapshot-controller.yaml create mode 100644 snapshot-controller/helmrelease-snapshot-controller.yaml diff --git a/bootstrap/helmrepositories/helmrepository-piraeus-charts.yaml b/bootstrap/helmrepositories/helmrepository-piraeus-charts.yaml new file mode 100644 index 0000000..2902cf0 --- /dev/null +++ b/bootstrap/helmrepositories/helmrepository-piraeus-charts.yaml @@ -0,0 +1,8 @@ +apiVersion: source.toolkit.fluxcd.io/v1beta2 +kind: HelmRepository +metadata: + name: piraeus-charts + namespace: flux-system +spec: + interval: 15m + url: https://piraeus.io/helm-charts/ diff --git a/bootstrap/kustomizations/kustomization-snapshot-controller.yaml b/bootstrap/kustomizations/kustomization-snapshot-controller.yaml new file mode 100644 index 0000000..b3c945d --- /dev/null +++ b/bootstrap/kustomizations/kustomization-snapshot-controller.yaml @@ -0,0 +1,18 @@ +apiVersion: kustomize.toolkit.fluxcd.io/v1 +kind: Kustomization +metadata: + name: snapshot-controller + namespace: flux-system +spec: + interval: 15m + path: ./snapshot-controller + prune: true # remove any elements later removed from the above path + timeout: 2m # if not set, this defaults to interval duration, which is 1h + sourceRef: + kind: GitRepository + name: flux-system + healthChecks: + - apiVersion: helm.toolkit.fluxcd.io/v2beta1 + kind: HelmRelease + name: snapshot-controller + namespace: snapshot-controller diff --git a/bootstrap/namespaces/namespace-snapshot-controller.yaml b/bootstrap/namespaces/namespace-snapshot-controller.yaml new file mode 100644 index 0000000..360a34a --- /dev/null +++ b/bootstrap/namespaces/namespace-snapshot-controller.yaml @@ -0,0 +1,4 @@ +apiVersion: v1 +kind: Namespace +metadata: + name: snapshot-controller diff --git a/snapshot-controller/helmrelease-snapshot-controller.yaml b/snapshot-controller/helmrelease-snapshot-controller.yaml new file mode 100644 index 0000000..b584b50 --- /dev/null +++ b/snapshot-controller/helmrelease-snapshot-controller.yaml @@ -0,0 +1,26 @@ +apiVersion: helm.toolkit.fluxcd.io/v2beta1 +kind: HelmRelease +metadata: + name: snapshot-controller + namespace: snapshot-controller +spec: + chart: + spec: + chart: snapshot-controller + version: 2.2.x + sourceRef: + kind: HelmRepository + name: piraeus-charts + namespace: flux-system + interval: 15m + timeout: 5m + releaseName: snapshot-controller + values: + controller: + volumeSnapshotClasses: + - name: longhorn-snapshot-vsc + driver: driver.longhorn.io + labels: + velero.io/csi-volumesnapshot-class: "true" + snapshot.storage.kubernetes.io/is-default-class: "true" + deletionPolicy: Delete