Matt Pryor a2d70b146a
Add job for doing etcd defragmentation (#228)
* Add a Helm chart for a cronjob for doing etcd defrag

* Add HelmRelease to deploy etcd defrag cronjob onto clusters

* Use charts from the repository in tests

* Clarify comment in values

* Reinstate pull_request_target
2024-01-25 13:42:53 +00:00

36 lines
1.3 KiB
YAML

{{- if .Values.etcdDefrag.enabled }}
---
apiVersion: v1
kind: Secret
metadata:
name: {{ include "cluster-addons.componentName" (list . "etcd-defrag") }}-config
labels:
{{- include "cluster-addons.componentLabels" (list . "etcd-defrag") | nindent 4 }}
addons.stackhpc.com/watch: ""
stringData:
overrides: |
{{- toYaml .Values.etcdDefrag.release.values | nindent 4 }}
---
apiVersion: addons.stackhpc.com/v1alpha1
kind: HelmRelease
metadata:
name: {{ include "cluster-addons.componentName" (list . "etcd-defrag") }}
labels: {{ include "cluster-addons.componentLabels" (list . "etcd-defrag") | nindent 4 }}
annotations:
# Tell Argo to ignore the non-controller owner references for this object
argocd.argoproj.io/sync-options: "ControllerReferencesOnly=true"
spec:
clusterName: {{ include "cluster-addons.clusterName" . }}
bootstrap: true
chart:
repo: {{ .Values.etcdDefrag.chart.repo }}
name: {{ .Values.etcdDefrag.chart.name }}
version: {{ default .Chart.Version .Values.etcdDefrag.chart.version }}
targetNamespace: {{ .Values.etcdDefrag.release.namespace }}
releaseName: etcd-defrag
valuesSources:
- secret:
name: {{ include "cluster-addons.componentName" (list . "etcd-defrag") }}-config
key: overrides
{{- end }}