From 7d689848d302d77d5660125bbb5ce77bc43b95e0 Mon Sep 17 00:00:00 2001 From: Igor Chentsov Date: Fri, 27 Oct 2023 15:42:36 -0700 Subject: [PATCH 1/6] 1st attempt to add pvct --- charts/sonarqube/templates/sonarqube-sts.yaml | 68 +++++++++++++------ 1 file changed, 47 insertions(+), 21 deletions(-) diff --git a/charts/sonarqube/templates/sonarqube-sts.yaml b/charts/sonarqube/templates/sonarqube-sts.yaml index aab4b0b39..3908af2fc 100644 --- a/charts/sonarqube/templates/sonarqube-sts.yaml +++ b/charts/sonarqube/templates/sonarqube-sts.yaml @@ -30,6 +30,32 @@ spec: matchLabels: app: {{ template "sonarqube.name" . }} release: {{ .Release.Name }} +{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) }} + volumeClaimTemplates: + - metadata: + name: {{ template "sonarqube.fullname" . }} + labels: + release: {{ .Release.Name }} + chart: "{{ .Chart.Name }}" + app: "{{ template "sonarqube.fullname" . }}" + {{- with .Values.persistence.annotations }} + annotations: +{{ toYaml . | indent 8 }} + {{- end }} + spec: + accessModes: + - {{ .Values.persistence.accessMode | quote }} + resources: + requests: + storage: {{ .Values.persistence.size | quote }} + {{- if .Values.persistence.storageClass }} + {{- if (eq "-" .Values.persistence.storageClass) }} + storageClassName: "" + {{- else }} + storageClassName: "{{ .Values.persistence.storageClass }}" + {{- end }} + {{- end }} + {{- end }} template: metadata: labels: @@ -98,7 +124,7 @@ spec: {{ toYaml .Values.initContainers.resources | indent 12 }} volumeMounts: - mountPath: /tmp/certs - name: sonarqube + name: "{{ template "sonarqube.fullname" . }}" subPath: certs - mountPath: /tmp/secrets/ca-certs name: ca-certs @@ -186,7 +212,7 @@ spec: args: ["curl -s '{{ template "prometheusExporter.downloadURL" . }}' {{ if $.Values.prometheusExporter.noCheckCertificate }}--insecure{{ end }} --output /data/jmx_prometheus_javaagent.jar -v"] volumeMounts: - mountPath: /data - name: sonarqube + name: "{{ template "sonarqube.fullname" . }}" subPath: data env: - name: http_proxy @@ -220,26 +246,26 @@ spec: {{- end }} {{- if .Values.caCerts.enabled }} - mountPath: {{ .Values.sonarqubeFolder }}/certs - name: sonarqube + name: "{{ template "sonarqube.fullname" . }}" subPath: certs {{- end }} - mountPath: {{ .Values.sonarqubeFolder }}/data - name: sonarqube + name: "{{ template "sonarqube.fullname" . }}" subPath: data - {{- if .Values.persistence.enabled }} - - mountPath: {{ .Values.sonarqubeFolder }}/extensions - name: sonarqube - subPath: extensions - {{- else if .Values.plugins.install }} - - mountPath: {{ .Values.sonarqubeFolder }}/extensions/plugins - name: sonarqube - subPath: extensions/plugins - {{- end }} +# {{- if .Values.persistence.enabled }} +# - mountPath: {{ .Values.sonarqubeFolder }}/extensions +# name: sonarqube +# subPath: extensions +# {{- else if .Values.plugins.install }} +# - mountPath: {{ .Values.sonarqubeFolder }}/extensions/plugins +# name: sonarqube +# subPath: extensions/plugins +# {{- end }} - mountPath: {{ .Values.sonarqubeFolder }}/temp - name: sonarqube + name: "{{ template "sonarqube.fullname" . }}" subPath: temp - mountPath: {{ .Values.sonarqubeFolder }}/logs - name: sonarqube + name: "{{ template "sonarqube.fullname" . }}" subPath: logs - mountPath: /tmp name: tmp-dir @@ -253,7 +279,7 @@ spec: "/tmp/scripts/install_plugins.sh"] volumeMounts: - mountPath: {{ .Values.sonarqubeFolder }}/extensions/plugins - name: sonarqube + name: "{{ template "sonarqube.fullname" . }}" subPath: extensions/plugins - name: install-plugins mountPath: /tmp/scripts/ @@ -397,7 +423,7 @@ spec: {{- end }} {{- if .Values.caCerts.enabled }} - mountPath: {{ .Values.sonarqubeFolder }}/certs - name: sonarqube + name: "{{ template "sonarqube.fullname" . }}" subPath: certs {{- end }} - mountPath: {{ .Values.sonarqubeFolder }}/data @@ -405,18 +431,18 @@ spec: subPath: data {{- if .Values.persistence.enabled }} - mountPath: {{ .Values.sonarqubeFolder }}/extensions - name: sonarqube + name: "{{ template "sonarqube.fullname" . }}" subPath: extensions {{- else if .Values.plugins.install }} - mountPath: {{ .Values.sonarqubeFolder }}/extensions/plugins - name: sonarqube + name: "{{ template "sonarqube.fullname" . }}" subPath: extensions/plugins {{- end }} - mountPath: {{ .Values.sonarqubeFolder }}/temp - name: sonarqube + name: "{{ template "sonarqube.fullname" . }}" subPath: temp - mountPath: {{ .Values.sonarqubeFolder }}/logs - name: sonarqube + name: "{{ template "sonarqube.fullname" . }}" subPath: logs - mountPath: /tmp name: tmp-dir From c60a602854dfbc9616187030d68067edd15703dd Mon Sep 17 00:00:00 2001 From: Igor Chentsov Date: Tue, 31 Oct 2023 14:05:48 -0700 Subject: [PATCH 2/6] one more --- charts/sonarqube/templates/sonarqube-sts.yaml | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/charts/sonarqube/templates/sonarqube-sts.yaml b/charts/sonarqube/templates/sonarqube-sts.yaml index 3908af2fc..62021d30d 100644 --- a/charts/sonarqube/templates/sonarqube-sts.yaml +++ b/charts/sonarqube/templates/sonarqube-sts.yaml @@ -550,14 +550,10 @@ spec: - key: prometheus-ce-config.yaml path: prometheus-ce-config.yaml {{- end }} - - name: sonarqube - {{- if .Values.persistence.enabled }} - persistentVolumeClaim: - claimName: {{ if .Values.persistence.existingClaim }}{{ .Values.persistence.existingClaim }}{{- else }}{{ template "sonarqube.fullname" . }}{{- end }} - {{- else }} - emptyDir: {{- toYaml .Values.emptyDir | nindent 10 }} - {{- end }} - - name : tmp-dir + {{- if .Values.searchNodes.persistence.enabled }} + - name: "{{ template "sonarqube.fullname" . }}" + {{- end }} + - name : tmp-dir emptyDir: {{- toYaml .Values.emptyDir | nindent 10 }} {{- if or .Values.sonarProperties .Values.sonarSecretProperties .Values.sonarSecretKey ( not .Values.elasticsearch.bootstrapChecks) }} - name : concat-dir From 78f15163b83f58fd0d96cf2b2db897f75f815501 Mon Sep 17 00:00:00 2001 From: Igor Chentsov Date: Wed, 1 Nov 2023 11:17:14 -0700 Subject: [PATCH 3/6] removing SearchNode variable --- charts/sonarqube/Chart.yaml | 2 +- charts/sonarqube/templates/sonarqube-sts.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/charts/sonarqube/Chart.yaml b/charts/sonarqube/Chart.yaml index 470b1f696..f8f58ee3d 100644 --- a/charts/sonarqube/Chart.yaml +++ b/charts/sonarqube/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 name: sonarqube description: SonarQube is a self-managed, automatic code review tool that systematically helps you deliver clean code. As a core element of our Sonar solution, SonarQube integrates into your existing workflow and detects issues in your code to help you perform continuous code inspections of your projects. The tool analyses 30+ different programming languages and integrates into your CI pipeline and DevOps platform to ensure that your code meets high-quality standards. type: application -version: 10.2.3 +version: 10.2.4 appVersion: 10.1.0 keywords: - coverage diff --git a/charts/sonarqube/templates/sonarqube-sts.yaml b/charts/sonarqube/templates/sonarqube-sts.yaml index 62021d30d..4ac6816ff 100644 --- a/charts/sonarqube/templates/sonarqube-sts.yaml +++ b/charts/sonarqube/templates/sonarqube-sts.yaml @@ -550,7 +550,7 @@ spec: - key: prometheus-ce-config.yaml path: prometheus-ce-config.yaml {{- end }} - {{- if .Values.searchNodes.persistence.enabled }} + {{- if .Values.persistence.enabled }} - name: "{{ template "sonarqube.fullname" . }}" {{- end }} - name : tmp-dir From ef6416debe9befad13c4d9e061bfb1beb0f205fd Mon Sep 17 00:00:00 2001 From: Igor Chentsov Date: Wed, 1 Nov 2023 13:30:30 -0700 Subject: [PATCH 4/6] minor change --- charts/sonarqube/templates/sonarqube-sts.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/charts/sonarqube/templates/sonarqube-sts.yaml b/charts/sonarqube/templates/sonarqube-sts.yaml index 4ac6816ff..cd1c7fe02 100644 --- a/charts/sonarqube/templates/sonarqube-sts.yaml +++ b/charts/sonarqube/templates/sonarqube-sts.yaml @@ -165,7 +165,7 @@ spec: - | #!/bin/sh if [ -f /tmp/props/sonar.properties ]; then - cat /tmp/props/sonar.properties > /tmp/result/sonar.properties + cat /tmp/props/sonar.properties > /tmp/result/sonar.properties fi if [ -f /tmp/props/secret.properties ]; then cat /tmp/props/secret.properties > /tmp/result/sonar.properties @@ -386,7 +386,7 @@ spec: # status about migration are added to prevent the node to be kill while sonarqube is upgrading the database. host="$(hostname -i || echo '127.0.0.1')" if wget --no-proxy -qO- http://${host}:{{ .Values.service.internalPort }}{{ .Values.readinessProbe.sonarWebContext | default (include "sonarqube.webcontext" .) }}api/system/status | grep -q -e '"status":"UP"' -e '"status":"DB_MIGRATION_NEEDED"' -e '"status":"DB_MIGRATION_RUNNING"'; then - exit 0 + exit 0 fi exit 1 initialDelaySeconds: {{ .Values.readinessProbe.initialDelaySeconds }} @@ -427,7 +427,7 @@ spec: subPath: certs {{- end }} - mountPath: {{ .Values.sonarqubeFolder }}/data - name: sonarqube + name: "{{ template "sonarqube.fullname" . }}" subPath: data {{- if .Values.persistence.enabled }} - mountPath: {{ .Values.sonarqubeFolder }}/extensions @@ -553,7 +553,7 @@ spec: {{- if .Values.persistence.enabled }} - name: "{{ template "sonarqube.fullname" . }}" {{- end }} - - name : tmp-dir + - name : tmp-dir emptyDir: {{- toYaml .Values.emptyDir | nindent 10 }} {{- if or .Values.sonarProperties .Values.sonarSecretProperties .Values.sonarSecretKey ( not .Values.elasticsearch.bootstrapChecks) }} - name : concat-dir From a29350000a01d0fc724a036ebcd7197babedf7ca Mon Sep 17 00:00:00 2001 From: Igor Chentsov Date: Thu, 2 Nov 2023 14:32:09 -0700 Subject: [PATCH 5/6] removing pvc --- charts/sonarqube/templates/pvc.yaml | 30 ------------------- charts/sonarqube/templates/sonarqube-sts.yaml | 6 ++-- 2 files changed, 3 insertions(+), 33 deletions(-) delete mode 100644 charts/sonarqube/templates/pvc.yaml diff --git a/charts/sonarqube/templates/pvc.yaml b/charts/sonarqube/templates/pvc.yaml deleted file mode 100644 index 554df9385..000000000 --- a/charts/sonarqube/templates/pvc.yaml +++ /dev/null @@ -1,30 +0,0 @@ -{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) }} -kind: PersistentVolumeClaim -apiVersion: v1 -metadata: - name: {{ template "sonarqube.fullname" . }} - labels: - app: {{ template "sonarqube.name" . }} - chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}" - release: "{{ .Release.Name }}" - heritage: "{{ .Release.Service }}" -{{ if .Values.persistence.annotations}} - annotations: - {{- range $key, $value := .Values.persistence.annotations }} - {{ $key }}: {{ $value | quote }} - {{- end }} -{{- end }} -spec: - accessModes: - - {{ .Values.persistence.accessMode | quote }} - resources: - requests: - storage: {{ .Values.persistence.size | quote }} -{{- if .Values.persistence.storageClass }} -{{- if (eq "-" .Values.persistence.storageClass) }} - storageClassName: "" -{{- else }} - storageClassName: "{{ .Values.persistence.storageClass }}" -{{- end }} -{{- end }} -{{- end }} diff --git a/charts/sonarqube/templates/sonarqube-sts.yaml b/charts/sonarqube/templates/sonarqube-sts.yaml index cd1c7fe02..272cd959a 100644 --- a/charts/sonarqube/templates/sonarqube-sts.yaml +++ b/charts/sonarqube/templates/sonarqube-sts.yaml @@ -550,9 +550,9 @@ spec: - key: prometheus-ce-config.yaml path: prometheus-ce-config.yaml {{- end }} - {{- if .Values.persistence.enabled }} - - name: "{{ template "sonarqube.fullname" . }}" - {{- end }} +# {{- if .Values.persistence.enabled }} +# - name: "{{ template "sonarqube.fullname" . }}" +# {{- end }} - name : tmp-dir emptyDir: {{- toYaml .Values.emptyDir | nindent 10 }} {{- if or .Values.sonarProperties .Values.sonarSecretProperties .Values.sonarSecretKey ( not .Values.elasticsearch.bootstrapChecks) }} From f8a03756c9a82e417be8cfa7ad9276961ff6d616 Mon Sep 17 00:00:00 2001 From: Igor Chentsov Date: Thu, 2 Nov 2023 14:36:00 -0700 Subject: [PATCH 6/6] uncommenting --- charts/sonarqube/templates/sonarqube-sts.yaml | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/charts/sonarqube/templates/sonarqube-sts.yaml b/charts/sonarqube/templates/sonarqube-sts.yaml index 272cd959a..47b04f65d 100644 --- a/charts/sonarqube/templates/sonarqube-sts.yaml +++ b/charts/sonarqube/templates/sonarqube-sts.yaml @@ -252,15 +252,15 @@ spec: - mountPath: {{ .Values.sonarqubeFolder }}/data name: "{{ template "sonarqube.fullname" . }}" subPath: data -# {{- if .Values.persistence.enabled }} -# - mountPath: {{ .Values.sonarqubeFolder }}/extensions -# name: sonarqube -# subPath: extensions -# {{- else if .Values.plugins.install }} -# - mountPath: {{ .Values.sonarqubeFolder }}/extensions/plugins -# name: sonarqube -# subPath: extensions/plugins -# {{- end }} + {{- if .Values.persistence.enabled }} + - mountPath: {{ .Values.sonarqubeFolder }}/extensions + name: sonarqube + subPath: extensions + {{- else if .Values.plugins.install }} + - mountPath: {{ .Values.sonarqubeFolder }}/extensions/plugins + name: sonarqube + subPath: extensions/plugins + {{- end }} - mountPath: {{ .Values.sonarqubeFolder }}/temp name: "{{ template "sonarqube.fullname" . }}" subPath: temp @@ -550,9 +550,9 @@ spec: - key: prometheus-ce-config.yaml path: prometheus-ce-config.yaml {{- end }} -# {{- if .Values.persistence.enabled }} -# - name: "{{ template "sonarqube.fullname" . }}" -# {{- end }} + {{- if .Values.persistence.enabled }} + - name: "{{ template "sonarqube.fullname" . }}" + {{- end }} - name : tmp-dir emptyDir: {{- toYaml .Values.emptyDir | nindent 10 }} {{- if or .Values.sonarProperties .Values.sonarSecretProperties .Values.sonarSecretKey ( not .Values.elasticsearch.bootstrapChecks) }}