diff --git a/charts/apps/Chart.yaml b/charts/apps/Chart.yaml index c602709d2..1c84f9a2e 100644 --- a/charts/apps/Chart.yaml +++ b/charts/apps/Chart.yaml @@ -2,4 +2,4 @@ apiVersion: v2 name: apps description: An argocd app to deploy apps inside the virtual cluster type: application -version: 0.5.13 +version: 0.5.14 diff --git a/charts/apps/dev-values.yaml b/charts/apps/dev-values.yaml index 4840640d1..f10a5cde8 100644 --- a/charts/apps/dev-values.yaml +++ b/charts/apps/dev-values.yaml @@ -71,6 +71,9 @@ dashboard: extraValueFiles: - dev-values.yaml +monitoring: + enabled: false + identityMapper: enabled: false targetRevision: HEAD diff --git a/charts/apps/staging-values.yaml b/charts/apps/staging-values.yaml index c335f7629..d36ad3164 100644 --- a/charts/apps/staging-values.yaml +++ b/charts/apps/staging-values.yaml @@ -83,6 +83,13 @@ otel: extraValuesFiles: [] valuesObject: {} +monitoring: + enabled: true + targetRevision: HEAD + extraValueFiles: + - staging-values.yaml + valuesObject: {} + kueue: enabled: true targetRevision: HEAD diff --git a/charts/apps/templates/monitoring-application.yaml b/charts/apps/templates/monitoring-application.yaml new file mode 100644 index 000000000..327659452 --- /dev/null +++ b/charts/apps/templates/monitoring-application.yaml @@ -0,0 +1,32 @@ +{{- if .Values.monitoring.enabled }} +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: monitoring + namespace: argocd + annotations: + argocd.argoproj.io/sync-wave: "0" +spec: + destination: + namespace: monitoring + server: {{ .Values.destination.server }} + project: default + source: + repoURL: https://github.com/DiamondLightSource/workflows.git + path: charts/monitoring + targetRevision: {{ .Values.monitoring.targetRevision }} + helm: + valueFiles: + - values.yaml + {{- if .Values.monitoring.extraValueFiles }} + {{- .Values.monitoring.extraValueFiles | toYaml | nindent 8 }} + {{- end }} + {{- if .Values.monitoring.valuesObject }} + valuesObject: + {{- .Values.monitoring.valuesObject | toYaml | nindent 8 }} + {{- end }} + syncPolicy: + automated: + prune: true + selfHeal: true +{{- end }} diff --git a/charts/apps/values.yaml b/charts/apps/values.yaml index 55052b213..f6cdfc4f7 100644 --- a/charts/apps/values.yaml +++ b/charts/apps/values.yaml @@ -148,6 +148,12 @@ otel: extraValuesFiles: [] valuesObject: {} +monitoring: + enabled: true + targetRevision: HEAD + extraValuesFiles: [] + valuesObject: {} + kueue: enabled: true targetRevision: HEAD diff --git a/charts/monitoring/Chart.yaml b/charts/monitoring/Chart.yaml index 561ca6bcb..ed017bc39 100644 --- a/charts/monitoring/Chart.yaml +++ b/charts/monitoring/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 name: monitoring description: A monitoring stack for the workflows deployment type: application -version: 0.1.25 +version: 0.1.26 dependencies: - name: grafana repository: https://grafana.github.io/helm-charts diff --git a/charts/monitoring/staging-values.yaml b/charts/monitoring/staging-values.yaml index 0aef4d906..ba6914d48 100644 --- a/charts/monitoring/staging-values.yaml +++ b/charts/monitoring/staging-values.yaml @@ -9,7 +9,7 @@ grafana: tls: - hosts: - grafana.staging.workflows.diamond.ac.uk - secretName: letsencrypt-grafana-staging-workflows-diamond-ac-uk + secretName: grafana-tls-cert grafana.ini: server: domain: grafana.staging.workflows.diamond.ac.uk @@ -28,7 +28,8 @@ thanos: enabled: false query: ingress: - enabled: false + http: + enabled: false queryFrontend: enabled: false ingress: diff --git a/charts/monitoring/templates/grafana-dashboards.yaml b/charts/monitoring/templates/grafana-dashboards.yaml index ee14b76fa..2caaddd3f 100644 --- a/charts/monitoring/templates/grafana-dashboards.yaml +++ b/charts/monitoring/templates/grafana-dashboards.yaml @@ -3,5 +3,7 @@ kind: ConfigMap metadata: name: grafana-dashboards namespace: {{ .Release.Namespace }} + annotations: + argocd.argoproj.io/sync-options: ServerSideApply=true data: {{ (.Files.Glob "grafana-dashboards/*.json").AsConfig | nindent 2 }} diff --git a/charts/monitoring/values.yaml b/charts/monitoring/values.yaml index 9c101c080..0f5e0ab49 100644 --- a/charts/monitoring/values.yaml +++ b/charts/monitoring/values.yaml @@ -1,6 +1,8 @@ cluster: argus grafana: + testFramework: + enabled: false rbac: create: false pspEnabled: false @@ -143,12 +145,10 @@ thanos: replicaCount: 1 persistence: enabled: false - extraArgs: - - --retention.resolution-raw=30d - - --retention.resolution-5m=30d - - --retention.resolution-1h=1y - - --consistency-delay=30m - - --wait + retentionResolutionRaw: 30d + retentionResolution5m: 30d + retentionResolution1h: 1y + consistencyDelay: 30m resources: requests: cpu: "1" diff --git a/charts/workflows-cluster/Chart.lock b/charts/workflows-cluster/Chart.lock index 1b32d8bd5..e1b61e97a 100644 --- a/charts/workflows-cluster/Chart.lock +++ b/charts/workflows-cluster/Chart.lock @@ -7,6 +7,6 @@ dependencies: version: 0.28.0 - name: secrets repository: file://./charts/secrets - version: 0.0.17 -digest: sha256:b598a84612c28fe34f0900d89602790c2b2e630b9a3d549f16ff202dc0ea0e90 -generated: "2026-07-17T11:25:55.182284912+01:00" + version: 0.0.18 +digest: sha256:b33147fb1c7b15ffeb219185d1b7eeab1c97bdf0a2cd93d49a1b948bd3ca15b3 +generated: "2026-08-07T10:36:31.823636509+01:00" diff --git a/charts/workflows-cluster/Chart.yaml b/charts/workflows-cluster/Chart.yaml index 8b7e68bae..0b4236642 100644 --- a/charts/workflows-cluster/Chart.yaml +++ b/charts/workflows-cluster/Chart.yaml @@ -3,7 +3,7 @@ name: workflows-cluster description: A virtual cluster for Data Analysis workflows type: application -version: 0.13.20 +version: 0.13.21 dependencies: - name: common version: 2.23.0 @@ -13,5 +13,5 @@ dependencies: version: 0.28.0 - name: secrets repository: file://./charts/secrets - version: 0.0.17 + version: 0.0.18 condition: secrets.enabled diff --git a/charts/workflows-cluster/charts/secrets/Chart.yaml b/charts/workflows-cluster/charts/secrets/Chart.yaml index def006b12..1e723be3f 100644 --- a/charts/workflows-cluster/charts/secrets/Chart.yaml +++ b/charts/workflows-cluster/charts/secrets/Chart.yaml @@ -3,7 +3,7 @@ name: secrets description: Sealed secrets for the workflows platform type: application -version: 0.0.17 +version: 0.0.18 dependencies: - name: common diff --git a/charts/monitoring/templates/grafana-oauth-secret.yaml b/charts/workflows-cluster/charts/secrets/templates/grafana-oauth.yaml similarity index 97% rename from charts/monitoring/templates/grafana-oauth-secret.yaml rename to charts/workflows-cluster/charts/secrets/templates/grafana-oauth.yaml index c991f6262..cd24396c5 100644 --- a/charts/monitoring/templates/grafana-oauth-secret.yaml +++ b/charts/workflows-cluster/charts/secrets/templates/grafana-oauth.yaml @@ -18,7 +18,7 @@ apiVersion: bitnami.com/v1alpha1 kind: SealedSecret metadata: name: grafana-oauth - namespace: {{ .Release.Namespace }} + namespace: workflows spec: encryptedData: client-id: AgA5Kv8S3fX2JYAR2Li7wPFmoE0nykOBKyjYtHhXaMD/0+ZwLkX/1Uw+XIwCtPGElYxYVonSdaH7Zq8E9+9f9qbviFdx/eGdMM/UNANcWMnvdSOw+vtmQNvgBw5vPXZt2f/J9YgVYvgMhFx/YFI/Sm3zNMrDKm6UAskr/XAfaMiySnYp0pQ9Y2S7kwPTYFKwg8NEDD2C2aC+kLhRmFlsVeKuHRl9N6Cozjurwe26jIX7j/9//4BeYZvNXDq+yzNwPAyv8LDypkMK4pVU1Tt5K6ltEJkwPMr1px+msS/+GMLTjBKyTJwjhArCarpXF0u8b3o3t1Ls5M/BhVlucfE7r2zKZPVb2B7MsPL7WKX5rp5tREauYPqGvUSGFCF31lKwR2MU/yBf6GLjzUtJCskHZYj38gQRXSGCFl3kYgvm2uCFOnl/yU1AqK1aDmL2SzRloShlPBBd/pLr04zNAy9z40yZNpIDiyMtJezJaRyUtqsTc3hQ3e6Qe4ONdFqEP3PWoOM1bRDvtwH5Biqb7iSVZgFYVlJd/WNrAJK/g4Tv3B8GMaA3HZFm3wYDvpedC/ROiOCmvndtbr8dRcjo7wYazlT/JhP5ze1QIND1KDlCPliErBaSoVYTHRLZI6R7B5tQ2m7K0e87aNRNiXhr7kGni0JRO6vYk4TW2UESSDEbGwIQNLp59JVvOc0JiQ4IOL5klj21JKSzfTZyW5Cc3TmdVhkEFOAj+kfyV/Cx @@ -26,5 +26,6 @@ spec: template: metadata: name: grafana-oauth - namespace: {{ .Release.Namespace }} + namespace: workflows + type: Opaque {{- end }} diff --git a/charts/monitoring/templates/prometheus-s3-sealedsecret.yaml b/charts/workflows-cluster/charts/secrets/templates/monitoring-thanos-s3.yaml similarity index 82% rename from charts/monitoring/templates/prometheus-s3-sealedsecret.yaml rename to charts/workflows-cluster/charts/secrets/templates/monitoring-thanos-s3.yaml index 47b83836b..271b1d3ff 100644 --- a/charts/monitoring/templates/prometheus-s3-sealedsecret.yaml +++ b/charts/workflows-cluster/charts/secrets/templates/monitoring-thanos-s3.yaml @@ -4,8 +4,8 @@ kind: SealedSecret metadata: annotations: sealedsecrets.bitnami.com/namespace-wide: "true" - name: {{ include "common.names.fullname" . }}-thanos-s3 - namespace: {{ .Release.Namespace }} + name: monitoring-thanos-s3 + namespace: workflows spec: encryptedData: objstore.yml: AgANzoxM2DcAtAMIc3MhaeTfAvuJ3zaD7JC6Ca7BjeuLfLc6pUa/YdcvE2vpL5iFQxawqhH+rcy7omFbrn9bz1dd6RFdoazobtIDlsTuWm64jMk4kB8icScJe3l7koD1RD7pyEhiPNzpk4hzhv6I90/h/l5yWClzVfhLY+Pn4ovAceVkH8N7X185vbIdISvouFqkMa+BuZ/8j9FsFA4l1gvq1tQL8M8LwQm3vOhUOKk5z84j7UQ8uyk0n+AG9kdeebUSUlPpubiY8LcM2R0P3dp/Z7HOpcwMvCGc5isWQzXd/a6/w75oGBlasZUTf9s5x0W16jrSCgNaQcJ2Pf4SycBO5H3NZDCLPh3EyKyVeQ1suhhaphDzzbfUqUVipNRoaX99vMwlzFg2st5jjNmK17YTqhRcBR9uXbS3uIJcjDzaQzMpA2sSbVAFZlqDkdK7qsleOA+IWjuoIGmqmSMKeldyStkNgOlKCqIBiydMh/kk6u8h6iXkn7WZphrzS2GuZ6dxxUBtN/TaEJ53slgvSrHMXMEmtyX3UI7P2S+exL3rdZtEMSqDSswWHudBxXOP/qsLw9VlBhWIk6jZGmo32I2t1GkKLJFFHJSGWejbycE/+Qh/UOCX0vr3qmZytyAzOXzgxT1T9gd/n7BX5aak5O/M5uO+x76s5umb9Vdzc8r62UtQU9nw7KpzG9idBRvgEHI5bA2qZlpWiQIPEFGxdnKJO1yl8zmMwN8/SfoRxK/YAbkQsKYuV3BXPJUkI/+l1PpQbl87pnVpBvYli88dfjpJZtmEs8uHpj5n2qpnHp3q+cDC9hQv7JsA8ydq1kj6EkXee24yy9bk4RWzcYZQNtiwpo/CqfeUVx2CsH0ggnL6oilUMjb+vpE278+cTHyOutDkPbtdQutHMHE18ct/pHCb0Y5QBqX+TnN6J7AF+37utwRUW3+9yw== @@ -13,14 +13,14 @@ spec: metadata: annotations: sealedsecrets.bitnami.com/namespace-wide: "true" - name: {{ include "common.names.fullname" . }}-thanos-s3 - namespace: {{ .Release.Namespace }} -{{- else }} + name: monitoring-thanos-s3 + namespace: workflows +{{- else if eq .Values.cluster "pollux" }} apiVersion: v1 kind: Secret metadata: - name: {{ include "common.names.fullname" . }}-thanos-s3 - namespace: {{ .Release.Namespace }} + name: monitoring-thanos-s3 + namespace: workflows stringData: objstore.yml: | type: FILESYSTEM diff --git a/charts/workflows-cluster/staging-values.yaml b/charts/workflows-cluster/staging-values.yaml index a279141ae..3b621e825 100644 --- a/charts/workflows-cluster/staging-values.yaml +++ b/charts/workflows-cluster/staging-values.yaml @@ -78,6 +78,9 @@ vcluster: "/letsencrypt-argo-cd-staging-workflows-diamond-ac-uk": "argocd/argo-cd-tls-cert" "/letsencrypt-argo-workflows-staging-workflows-diamond-ac-uk": "workflows/workflows-tls-cert" "/letsencrypt-staging-workflows-diamond-ac-uk": "workflows/dashboard-tls-cert" + "/letsencrypt-grafana-staging-workflows-diamond-ac-uk": "monitoring/grafana-tls-cert" + "/grafana-oauth": "monitoring/grafana-oauth" + "/monitoring-thanos-s3": "monitoring/monitoring-thanos-s3" "/argo-server-sso": "workflows/argo-server-sso" "/sessionspaces-ispyb": "kube-system/sessionspaces-ispyb" "/artifact-s3-secret": "graph-proxy/artifact-s3-secret" diff --git a/charts/workflows-cluster/values.yaml b/charts/workflows-cluster/values.yaml index bf11cff0e..0e10be02a 100644 --- a/charts/workflows-cluster/values.yaml +++ b/charts/workflows-cluster/values.yaml @@ -146,6 +146,8 @@ vcluster: "/letsencrypt-thanos-query-workflows-diamond-ac-uk": "monitoring/letsencrypt-thanos-query-workflows-diamond-ac-uk" "/letsencrypt-alertmanager-workflows-diamond-ac-uk": "monitoring/letsencrypt-alertmanager-workflows-diamond-ac-uk" "/letsencrypt-prometheus-workflows-diamond-ac-uk": "monitoring/letsencrypt-prometheus-workflows-diamond-ac-uk" + "/grafana-oauth": "monitoring/grafana-oauth" + "/monitoring-thanos-s3": "monitoring/monitoring-thanos-s3" "/argocd-oauth": "argocd/argocd-oauth" "/argo-server-sso": "workflows/argo-server-sso" "/sessionspaces-ispyb": "kube-system/sessionspaces-ispyb"