From 1b398290a863312b9f02d6244230cb1a37589344 Mon Sep 17 00:00:00 2001 From: Qian Date: Thu, 24 Apr 2025 09:38:44 -0400 Subject: [PATCH 1/7] modified the fdi-dotstatsuite chart --- stable/fdi-dotstatsuite/Chart.yaml | 2 +- .../templates/deploy/transfer.yaml | 39 +++++++++++++++++-- 2 files changed, 37 insertions(+), 4 deletions(-) diff --git a/stable/fdi-dotstatsuite/Chart.yaml b/stable/fdi-dotstatsuite/Chart.yaml index 7771a4a9..b3e115c2 100644 --- a/stable/fdi-dotstatsuite/Chart.yaml +++ b/stable/fdi-dotstatsuite/Chart.yaml @@ -14,4 +14,4 @@ name: fdi-dotstatsuite sources: - https://gitlab.com/sis-cc/.stat-suite/dotstatsuite-kube-core-rp/-/tree/master/staging type: application -version: 0.3.3 +version: 0.3.4 diff --git a/stable/fdi-dotstatsuite/templates/deploy/transfer.yaml b/stable/fdi-dotstatsuite/templates/deploy/transfer.yaml index 85875233..a5329a5f 100644 --- a/stable/fdi-dotstatsuite/templates/deploy/transfer.yaml +++ b/stable/fdi-dotstatsuite/templates/deploy/transfer.yaml @@ -159,6 +159,15 @@ spec: value: "{{ .Values.transfer.autoLog2DB }}" - name: "SpacesInternal__0__AutoLog2DBLogLevel" value: "{{ .Values.transfer.autoLog2DBLogLevel }}" + - name: "SpacesInternal__0__OptimizedForHighPerformanceReads" + value: {{ default false .Values.transfer.OptimizedForHighPerformanceReads }} + - name: "SpacesInternal__0__DefaultPartitioningScheme" + value: {{ default "" .Values.transfer.DefaultPartitioningScheme }} + - name: "SpacesInternal__0__DefaultPartitioningColumn" + value: {{ default "" .Values.transfer.DefaultPartitioningColumn }} + - name: "SpacesInternal__0__MAXDOPForDsdOptimization" + value: {{ default 0 .Values.transfer.MAXDOPForDsdOptimization }} + {{- end }} {{- if index .Values.nsiReset.enabled }} - name: "SpacesInternal__1__Id" @@ -176,7 +185,15 @@ spec: - name: "SpacesInternal__1__AutoLog2DB" value: "{{ .Values.transfer.autoLog2DB }}" - name: "SpacesInternal__1__AutoLog2DBLogLevel" - value: "{{ .Values.transfer.autoLog2DBLogLevel }} " + value: "{{ .Values.transfer.autoLog2DBLogLevel }}" + - name: "SpacesInternal__1__OptimizedForHighPerformanceReads" + value: {{ default false .Values.transfer.OptimizedForHighPerformanceReads }} + - name: "SpacesInternal__1__DefaultPartitioningScheme" + value: {{ default "" .Values.transfer.DefaultPartitioningScheme }} + - name: "SpacesInternal__1__DefaultPartitioningColumn" + value: {{ default "" .Values.transfer.DefaultPartitioningColumn }} + - name: "SpacesInternal__1__MAXDOPForDsdOptimization" + value: {{ default 0 .Values.transfer.MAXDOPForDsdOptimization }} {{- end }} {{- if index .Values.nsiDesign.enabled }} - name: "SpacesInternal__2__Id" @@ -194,7 +211,15 @@ spec: - name: "SpacesInternal__2__AutoLog2DB" value: "{{ .Values.transfer.autoLog2DB }}" - name: "SpacesInternal__2__AutoLog2DBLogLevel" - value: "{{ .Values.transfer.autoLog2DBLogLevel }} " + value: "{{ .Values.transfer.autoLog2DBLogLevel }}" + - name: "SpacesInternal__2__OptimizedForHighPerformanceReads" + value: {{ default false .Values.transfer.OptimizedForHighPerformanceReads }} + - name: "SpacesInternal__2__DefaultPartitioningScheme" + value: {{ default "" .Values.transfer.DefaultPartitioningScheme }} + - name: "SpacesInternal__2__DefaultPartitioningColumn" + value: {{ default "" .Values.transfer.DefaultPartitioningColumn }} + - name: "SpacesInternal__2__MAXDOPForDsdOptimization" + value: {{ default 0 .Values.transfer.MAXDOPForDsdOptimization }} {{- end }} {{- if index .Values.nsiStaging.enabled }} - name: "SpacesInternal__3__Id" @@ -212,7 +237,15 @@ spec: - name: "SpacesInternal__3__AutoLog2DB" value: "{{ .Values.transfer.autoLog2DB }}" - name: "SpacesInternal__3__AutoLog2DBLogLevel" - value: "{{ .Values.transfer.autoLog2DBLogLevel }} " + value: "{{ .Values.transfer.autoLog2DBLogLevel }}" + - name: "SpacesInternal__3__OptimizedForHighPerformanceReads" + value: {{ default false .Values.transfer.OptimizedForHighPerformanceReads }} + - name: "SpacesInternal__3__DefaultPartitioningScheme" + value: {{ default "" .Values.transfer.DefaultPartitioningScheme }} + - name: "SpacesInternal__3__DefaultPartitioningColumn" + value: {{ default "" .Values.transfer.DefaultPartitioningColumn }} + - name: "SpacesInternal__3__MAXDOPForDsdOptimization" + value: {{ default 0 .Values.transfer.MAXDOPForDsdOptimization }} {{- end }} ports: - name: http From bf31384f85754f5e412b23ed5eb1c32e1ab85807 Mon Sep 17 00:00:00 2001 From: Qian Date: Thu, 24 Apr 2025 10:50:56 -0400 Subject: [PATCH 2/7] updated some parameters --- stable/ckan/Chart.yaml | 2 +- stable/ckan/templates/deploy/ckan.yaml | 4 ++++ stable/fdi-dotstatsuite-sfs-solr/Chart.lock | 0 stable/fdi-dotstatsuite-sfs-solr/Chart.yaml | 2 +- stable/fdi-dotstatsuite-sfs-solr/templates/deploy/solr.yaml | 2 +- stable/fdi-dotstatsuite/templates/deploy/transfer.yaml | 2 +- 6 files changed, 8 insertions(+), 4 deletions(-) delete mode 100644 stable/fdi-dotstatsuite-sfs-solr/Chart.lock diff --git a/stable/ckan/Chart.yaml b/stable/ckan/Chart.yaml index e6547a00..ae782b9a 100644 --- a/stable/ckan/Chart.yaml +++ b/stable/ckan/Chart.yaml @@ -1,7 +1,7 @@ name: ckan apiVersion: v2 type: application -version: 0.0.34 +version: 0.0.35 appVersion: 2.9.5 description: CKAN Helm Chart for Kubernetes. keywords: diff --git a/stable/ckan/templates/deploy/ckan.yaml b/stable/ckan/templates/deploy/ckan.yaml index 7739fa18..b41588ba 100644 --- a/stable/ckan/templates/deploy/ckan.yaml +++ b/stable/ckan/templates/deploy/ckan.yaml @@ -283,6 +283,10 @@ spec: env: - name: DEBUG value: {{ .Values.ckan.debug | quote }} + - name: DATASET_PREFIX + value: {{ default "" .Values.ckan.dataset_prefix }} + - name: ORG_PREFIX + value: {{ default "" .Values.ckan.organization_prefix }} - name: MAINTENANCE_MODE value: {{ .Values.ckan.maintenanceMode | quote }} - name: CKAN_DEBUG diff --git a/stable/fdi-dotstatsuite-sfs-solr/Chart.lock b/stable/fdi-dotstatsuite-sfs-solr/Chart.lock deleted file mode 100644 index e69de29b..00000000 diff --git a/stable/fdi-dotstatsuite-sfs-solr/Chart.yaml b/stable/fdi-dotstatsuite-sfs-solr/Chart.yaml index b9ac430d..aed14f8c 100644 --- a/stable/fdi-dotstatsuite-sfs-solr/Chart.yaml +++ b/stable/fdi-dotstatsuite-sfs-solr/Chart.yaml @@ -10,4 +10,4 @@ sources: - https://gitlab.k8s.cloud.statcan.ca/analytics-platform/fdi-idf/metadata - https://gitlab.com/sis-cc/.stat-suite/dotstatsuite-kube-rp/ type: application -version: 1.0.1 +version: 1.0.2 diff --git a/stable/fdi-dotstatsuite-sfs-solr/templates/deploy/solr.yaml b/stable/fdi-dotstatsuite-sfs-solr/templates/deploy/solr.yaml index 89156819..4877dac9 100644 --- a/stable/fdi-dotstatsuite-sfs-solr/templates/deploy/solr.yaml +++ b/stable/fdi-dotstatsuite-sfs-solr/templates/deploy/solr.yaml @@ -50,7 +50,7 @@ spec: - name: OOM value: "exit" - name: SOLR_JAVA_MEM - value: "-Xms4g -Xmx6g -Dsolr.max.booleanClauses=50000" + value: "-Xms4g -Xmx6g -Dsolr.max.booleanClauses=50000 -Dsolr.modules=analysis-extras" volumeMounts: - mountPath: /var/solr name: {{ include "dotstatsuite.fullname" . }}-solr-pv-storage diff --git a/stable/fdi-dotstatsuite/templates/deploy/transfer.yaml b/stable/fdi-dotstatsuite/templates/deploy/transfer.yaml index a5329a5f..c3a5a704 100644 --- a/stable/fdi-dotstatsuite/templates/deploy/transfer.yaml +++ b/stable/fdi-dotstatsuite/templates/deploy/transfer.yaml @@ -120,7 +120,7 @@ spec: {{- end }} - name: "MaxTransferErrorAmount" value: {{ default "10" .Values.transfer.MaxTransferErrorAmount | quote }} - - name: "MaxTextAttributeLength" + - name: "maxLength" value: {{ default "150" .Values.transfer.MaxTextAttributeLength | quote }} - name: "MinPercentageDiskSpace" value: {{ default "10" .Values.transfer.MinPercentageDiskSpace | quote }} From 11a8018d767b677c7a2756f64904f4eab021b073 Mon Sep 17 00:00:00 2001 From: Qian Date: Thu, 24 Apr 2025 10:54:38 -0400 Subject: [PATCH 3/7] updated some parameters --- stable/fdi-dotstatsuite-sfs-solr/Chart.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stable/fdi-dotstatsuite-sfs-solr/Chart.yaml b/stable/fdi-dotstatsuite-sfs-solr/Chart.yaml index aed14f8c..294c5eb0 100644 --- a/stable/fdi-dotstatsuite-sfs-solr/Chart.yaml +++ b/stable/fdi-dotstatsuite-sfs-solr/Chart.yaml @@ -1,6 +1,6 @@ apiVersion: v2 appVersion: v14.0.0 -description: fdi-dotstatsuite helm chart for the Data Explorer and Data Viewer +description: fdi-dotstatsuite helm chart for the search service and solr home: https://statcan.gc.ca maintainers: - email: Jianlong.qian@statcan.gc.ca From 90f7724e7b02f8779627338ced5106ba738ac438 Mon Sep 17 00:00:00 2001 From: Qian Date: Thu, 24 Apr 2025 10:57:42 -0400 Subject: [PATCH 4/7] updated some parameters --- stable/fdi-dotstatsuite-sfs-solr-stateful | 1 - 1 file changed, 1 deletion(-) delete mode 160000 stable/fdi-dotstatsuite-sfs-solr-stateful diff --git a/stable/fdi-dotstatsuite-sfs-solr-stateful b/stable/fdi-dotstatsuite-sfs-solr-stateful deleted file mode 160000 index c1326ecf..00000000 --- a/stable/fdi-dotstatsuite-sfs-solr-stateful +++ /dev/null @@ -1 +0,0 @@ -Subproject commit c1326ecf3462e3ec7246ab661bd7cb7af78a0672 From 6358d6bb27f6ac82864091aca120299e1fc59c87 Mon Sep 17 00:00:00 2001 From: Qian Date: Thu, 24 Apr 2025 10:58:46 -0400 Subject: [PATCH 5/7] added chart for: fdi-dotstatsuite-sfs-solr-stateful --- .../.helmignore | 23 ++ .../Chart.yaml | 33 ++ .../templates/NOTES.txt | 0 .../templates/_helpers.tpl | 109 ++++++ .../templates/deploy/mongo.yaml | 51 +++ .../templates/deploy/sfs.yaml | 69 ++++ .../templates/deploy/solr.yaml | 75 ++++ .../templates/dr/destrule.yaml | 16 + .../templates/hpa/sfs.yaml | 30 ++ .../templates/hpa/solr.yaml | 30 ++ .../templates/ing/sfs.yaml | 47 +++ .../templates/pvc/mongo-pvc.yaml | 31 ++ .../templates/pvc/solr-pvc.yaml | 31 ++ .../templates/sa/mongo.yaml | 14 + .../templates/sa/sfs.yaml | 14 + .../templates/sa/solr.yaml | 14 + .../templates/secret/api-key.yaml | 7 + .../templates/svc/mongo.yaml | 15 + .../templates/svc/sfs.yaml | 17 + .../templates/svc/solr.yaml | 17 + .../values.yaml | 320 ++++++++++++++++++ 21 files changed, 963 insertions(+) create mode 100644 stable/fdi-dotstatsuite-sfs-solr-stateful/.helmignore create mode 100644 stable/fdi-dotstatsuite-sfs-solr-stateful/Chart.yaml create mode 100644 stable/fdi-dotstatsuite-sfs-solr-stateful/templates/NOTES.txt create mode 100644 stable/fdi-dotstatsuite-sfs-solr-stateful/templates/_helpers.tpl create mode 100644 stable/fdi-dotstatsuite-sfs-solr-stateful/templates/deploy/mongo.yaml create mode 100644 stable/fdi-dotstatsuite-sfs-solr-stateful/templates/deploy/sfs.yaml create mode 100644 stable/fdi-dotstatsuite-sfs-solr-stateful/templates/deploy/solr.yaml create mode 100644 stable/fdi-dotstatsuite-sfs-solr-stateful/templates/dr/destrule.yaml create mode 100644 stable/fdi-dotstatsuite-sfs-solr-stateful/templates/hpa/sfs.yaml create mode 100644 stable/fdi-dotstatsuite-sfs-solr-stateful/templates/hpa/solr.yaml create mode 100644 stable/fdi-dotstatsuite-sfs-solr-stateful/templates/ing/sfs.yaml create mode 100644 stable/fdi-dotstatsuite-sfs-solr-stateful/templates/pvc/mongo-pvc.yaml create mode 100644 stable/fdi-dotstatsuite-sfs-solr-stateful/templates/pvc/solr-pvc.yaml create mode 100644 stable/fdi-dotstatsuite-sfs-solr-stateful/templates/sa/mongo.yaml create mode 100644 stable/fdi-dotstatsuite-sfs-solr-stateful/templates/sa/sfs.yaml create mode 100644 stable/fdi-dotstatsuite-sfs-solr-stateful/templates/sa/solr.yaml create mode 100644 stable/fdi-dotstatsuite-sfs-solr-stateful/templates/secret/api-key.yaml create mode 100644 stable/fdi-dotstatsuite-sfs-solr-stateful/templates/svc/mongo.yaml create mode 100644 stable/fdi-dotstatsuite-sfs-solr-stateful/templates/svc/sfs.yaml create mode 100644 stable/fdi-dotstatsuite-sfs-solr-stateful/templates/svc/solr.yaml create mode 100644 stable/fdi-dotstatsuite-sfs-solr-stateful/values.yaml diff --git a/stable/fdi-dotstatsuite-sfs-solr-stateful/.helmignore b/stable/fdi-dotstatsuite-sfs-solr-stateful/.helmignore new file mode 100644 index 00000000..0e8a0eb3 --- /dev/null +++ b/stable/fdi-dotstatsuite-sfs-solr-stateful/.helmignore @@ -0,0 +1,23 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*.orig +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ diff --git a/stable/fdi-dotstatsuite-sfs-solr-stateful/Chart.yaml b/stable/fdi-dotstatsuite-sfs-solr-stateful/Chart.yaml new file mode 100644 index 00000000..61b29ac6 --- /dev/null +++ b/stable/fdi-dotstatsuite-sfs-solr-stateful/Chart.yaml @@ -0,0 +1,33 @@ +apiVersion: v2 +name: fdi-dotstatsuite-sfs-solr-stateful +description: fdi-dotstatsuite helm chart for the search service and solr + + +# A chart can be either an 'application' or a 'library' chart. +# +# Application charts are a collection of templates that can be packaged into versioned archives +# to be deployed. +# +# Library charts provide useful utilities or functions for the chart developer. They're included as +# a dependency of application charts to inject those utilities and functions into the rendering +# pipeline. Library charts do not define any templates and therefore cannot be deployed. +type: application + +# This is the chart version. This version number should be incremented each time you make changes +# to the chart and its templates, including the app version. +# Versions are expected to follow Semantic Versioning (https://semver.org/) +version: 1.0.0 + +# This is the version number of the application being deployed. This version number should be +# incremented each time you make changes to the application. Versions are not expected to +# follow Semantic Versioning. They should reflect the version the application is using. +appVersion: v14.0.0 + +home: https://statcan.gc.ca +sources: +- https://gitlab.k8s.cloud.statcan.ca/analytics-platform/fdi-idf/metadata +- https://gitlab.com/sis-cc/.stat-suite/dotstatsuite-kube-rp/ +maintainers: +- name: Jianlong Qian + email: Jianlong.qian@statcan.gc.ca +engine: gotpl diff --git a/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/NOTES.txt b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/NOTES.txt new file mode 100644 index 00000000..e69de29b diff --git a/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/_helpers.tpl b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/_helpers.tpl new file mode 100644 index 00000000..a453ece3 --- /dev/null +++ b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/_helpers.tpl @@ -0,0 +1,109 @@ +{{/* vim: set filetype=mustache: */}} +{{/* +Expand the name of the chart. +*/}} +{{- define "dotstatsuite.name" -}} +{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Create a default fully qualified app name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +If release name contains chart name it will be used as a full name. +*/}} +{{- define "dotstatsuite.fullname" -}} +{{- if .Values.fullnameOverride }} +{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }} +{{- else }} +{{- $name := default .Chart.Name .Values.nameOverride }} +{{- if contains $name .Release.Name }} +{{- .Release.Name | trunc 63 | trimSuffix "-" }} +{{- else }} +{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }} +{{- end }} +{{- end }} +{{- end }} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "dotstatsuite.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Common labels +*/}} +{{- define "dotstatsuite.labels" -}} +helm.sh/chart: {{ include "dotstatsuite.chart" . }} +{{ include "dotstatsuite.selectorLabels" . }} +{{- if .Chart.AppVersion }} +app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} +{{- end }} +app.kubernetes.io/managed-by: {{ .Release.Service }} +{{- end }} + +{{/* +Selector labels +*/}} +{{- define "dotstatsuite.selectorLabels" -}} +app.kubernetes.io/name: {{ include "dotstatsuite.name" . }} +app.kubernetes.io/instance: {{ .Release.Name }} +{{- end }} + + +{{/* +Create the name of the service account to use +*/}} +{{- define "dotstatsuite.config.serviceAccountName" -}} +{{- if .Values.config.serviceAccount.create }} +{{- default (include "dotstatsuite.fullname" .) .Values.config.serviceAccount.name }} +{{- else }} +{{- default "default" .Values.config.serviceAccount.name }} +{{- end }} +{{- end }} + + +{{/* +Create the name of the service account to use +*/}} +{{- define "dotstatsuite.dlm.serviceAccountName" -}} +{{- if .Values.dlm.serviceAccount.create }} +{{- default (include "dotstatsuite.fullname" .) .Values.dlm.serviceAccount.name }} +{{- else }} +{{- default "default" .Values.dlm.serviceAccount.name }} +{{- end }} +{{- end }} + +{{/* +Create the name of the service account to use +*/}} +{{- define "dotstatsuite.sfs.serviceAccountName" -}} +{{- if .Values.sfs.serviceAccount.create }} +{{- default (include "dotstatsuite.fullname" .) .Values.sfs.serviceAccount.name }} +{{- else }} +{{- default "default" .Values.sfs.serviceAccount.name }} +{{- end }} +{{- end }} + +{{/* +Create the name of the service account to use +*/}} +{{- define "dotstatsuite.solr.serviceAccountName" -}} +{{- if .Values.solr.serviceAccount.create }} +{{- default (include "dotstatsuite.fullname" .) .Values.solr.serviceAccount.name }} +{{- else }} +{{- default "default" .Values.solr.serviceAccount.name }} +{{- end }} +{{- end }} + +{{/* +Create the name of the service account to use +*/}} +{{- define "dotstatsuite.mongo.serviceAccountName" -}} +{{- if .Values.mongo.serviceAccount.create }} +{{- default (include "dotstatsuite.fullname" .) .Values.mongo.serviceAccount.name }} +{{- else }} +{{- default "default" .Values.mongo.serviceAccount.name }} +{{- end }} +{{- end }} diff --git a/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/deploy/mongo.yaml b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/deploy/mongo.yaml new file mode 100644 index 00000000..53eb86e2 --- /dev/null +++ b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/deploy/mongo.yaml @@ -0,0 +1,51 @@ +{{- if .Values.mongo.enabled -}} +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ include "dotstatsuite.fullname" . }}-mongo + labels: + {{- include "dotstatsuite.labels" . | nindent 4 }}-mongo +spec: +{{- if not .Values.mongo.autoscaling.enabled }} + replicas: {{ .Values.mongo.replicaCount }} +{{- end }} + selector: + matchLabels: + {{- include "dotstatsuite.selectorLabels" . | nindent 6 }}-mongo + template: + metadata: + {{- with .Values.mongo.podAnnotations }} + annotations: + {{- toYaml . | nindent 8 }} + {{- end }} + labels: + {{- include "dotstatsuite.selectorLabels" . | nindent 8 }}-mongo + spec: + volumes: + - name: {{ include "dotstatsuite.fullname" . }}-mongo-pv-storage + persistentVolumeClaim: + claimName: {{ include "dotstatsuite.fullname" . }}-mongo-pv-claim + {{- with .Values.mongo.imagePullSecrets }} + imagePullSecrets: + {{- toYaml . | nindent 8 }} + {{- end }} + serviceAccountName: {{ include "dotstatsuite.mongo.serviceAccountName" . }}-mongo + terminationGracePeriodSeconds: 10 + securityContext: + {{- toYaml .Values.mongo.podSecurityContext | nindent 8 }} + containers: + - name: {{ .Chart.Name }}-mongo + securityContext: + {{- toYaml .Values.mongo.securityContext | nindent 12 }} + image: "{{ .Values.mongo.image.repository }}:{{ .Values.mongo.image.tag | default .Chart.AppVersion }}" + imagePullPolicy: {{ .Values.mongo.image.pullPolicy }} + volumeMounts: + - mountPath: /data/db + name: {{ include "dotstatsuite.fullname" . }}-mongo-pv-storage + ports: + - name: mongodb + containerPort: {{ .Values.mongo.service.port }} +{{- end -}} + + + diff --git a/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/deploy/sfs.yaml b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/deploy/sfs.yaml new file mode 100644 index 00000000..fe4dc9b5 --- /dev/null +++ b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/deploy/sfs.yaml @@ -0,0 +1,69 @@ +{{- if .Values.sfs.enabled -}} +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ include "dotstatsuite.fullname" . }}-sfs + labels: + {{- include "dotstatsuite.labels" . | nindent 4 }}-sfs +spec: +{{- if not .Values.sfs.autoscaling.enabled }} + replicas: {{ .Values.sfs.replicaCount }} +{{- end }} + selector: + matchLabels: + {{- include "dotstatsuite.selectorLabels" . | nindent 6 }}-sfs + template: + metadata: + {{- with .Values.sfs.podAnnotations }} + annotations: + {{- toYaml . | nindent 8 }} + {{- end }} + labels: + {{- include "dotstatsuite.selectorLabels" . | nindent 8 }}-sfs + spec: + {{- with .Values.sfs.imagePullSecrets }} + imagePullSecrets: + {{- toYaml . | nindent 8 }} + {{- end }} + serviceAccountName: {{ include "dotstatsuite.sfs.serviceAccountName" . }}-sfs + securityContext: + {{- toYaml .Values.sfs.podSecurityContext | nindent 8 }} + containers: + - name: {{ .Chart.Name }}-sfs + securityContext: + {{- toYaml .Values.sfs.securityContext | nindent 12 }} + image: "{{ .Values.sfs.image.repository }}:{{ .Values.sfs.image.tag | default .Chart.AppVersion }}" + imagePullPolicy: {{ .Values.sfs.image.pullPolicy }} + env: + - name: LOGGING_DRIVER + value: "file" + - name: LOGGING_PROJECT_ID + value: "{{ include "dotstatsuite.fullname" . }}-sfs" + - name: LOGGING_LOGNAME + value: "{{ include "dotstatsuite.fullname" . }}-sfs-app-log" + - name: LOGGING_LEVEL + value: "info" + - name: SOLR_HOST + value: "{{ .Values.sfs.solr.host }}" + - name: SOLR_PORT + value: "{{ .Values.sfs.solr.port }}" + - name: MONGODB_URL + value: "mongodb://{{ include "dotstatsuite.fullname" . }}-mongo:27017" + - name: MONGODB_DATABASE + value: "sfs" + - name: CONFIG_URL + value: "{{ .Values.sfs.config.host }}" + - name: API_KEY + valueFrom: + secretKeyRef: + name: {{ include "dotstatsuite.fullname" . }}-api-key-secret + key: api-key + ports: + - name: readiness-http + containerPort: 80 + protocol: TCP + readinessProbe: + httpGet: + path: /healthcheck + port: readiness-http +{{- end -}} diff --git a/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/deploy/solr.yaml b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/deploy/solr.yaml new file mode 100644 index 00000000..055e1d9e --- /dev/null +++ b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/deploy/solr.yaml @@ -0,0 +1,75 @@ +{{- if .Values.solr.enabled -}} +apiVersion: apps/v1 +kind: StatefulSet +metadata: + name: {{ include "dotstatsuite.fullname" . }}-solr + labels: + {{- include "dotstatsuite.labels" . | nindent 4 }}-solr +spec: +{{- if not .Values.solr.autoscaling.enabled }} + replicas: {{ .Values.solr.replicaCount }} +{{- end }} + selector: + matchLabels: + {{- include "dotstatsuite.selectorLabels" . | nindent 6 }}-solr + updateStrategy: + {{ toYaml .Values.updateStrategy | indent 4}} + template: + metadata: + {{- with .Values.solr.podAnnotations }} + annotations: + {{- toYaml . | nindent 8 }} + {{- end }} + labels: + {{- include "dotstatsuite.selectorLabels" . | nindent 8 }}-solr + spec: + schedulerName: "{{ .Values.schedulerName }}" + securityContext: + fsGroup: 8983 + runAsUser: 8983 + affinity: +{{ tpl (toYaml .Values.affinity) . | indent 8 }} + tolerations: +{{ tpl (toYaml .Values.tolerations) . | indent 8 }} + terminationGracePeriodSeconds: {{ .Values.terminationGracePeriodSeconds }} + volumes: + - name: {{ include "dotstatsuite.fullname" . }}-solr-pv-storage + persistentVolumeClaim: + claimName: {{ include "dotstatsuite.fullname" . }}-solr-pv-claim + initContainers: + - name: init-solr + image: {{ .Values.repository_base }}/alpine + command: ["chown", "-R", "8983:8983", "/var/solr"] + volumeMounts: + - name: {{ include "dotstatsuite.fullname" . }}-solr-pv-storage + mountPath: /var/solr + {{- with .Values.solr.imagePullSecrets }} + imagePullSecrets: + {{- toYaml . | nindent 8 }} + {{- end }} + serviceAccountName: {{ include "dotstatsuite.solr.serviceAccountName" . }}-solr + securityContext: + {{- toYaml .Values.solr.podSecurityContext | nindent 8 }} + containers: + - name: {{ .Chart.Name }}-solr + securityContext: + {{- toYaml .Values.solr.securityContext | nindent 12 }} + image: "{{ .Values.solr.image.repository }}:{{ .Values.solr.image.tag | default .Chart.AppVersion }}" + imagePullPolicy: {{ .Values.solr.image.pullPolicy }} + args: ["-c"] + env: + - name: OOM + value: "exit" + - name: SOLR_JAVA_MEM + value: "-Xms4g -Xmx6g -Dsolr.max.booleanClauses=50000 -Dsolr.modules=analysis-extras" + volumeMounts: + - mountPath: /var/solr + name: {{ include "dotstatsuite.fullname" . }}-solr-pv-storage + ports: + - name: http + containerPort: 8983 + protocol: TCP +{{- end -}} + + + diff --git a/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/dr/destrule.yaml b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/dr/destrule.yaml new file mode 100644 index 00000000..f2881c58 --- /dev/null +++ b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/dr/destrule.yaml @@ -0,0 +1,16 @@ +{{- if .Values.destinationRule.enabled }} +apiVersion: networking.istio.io/v1alpha3 +kind: DestinationRule +metadata: + name: {{ template "dotstatsuite.fullname" . }}-sfs + labels: + app: {{ template "dotstatsuite.name" . }} + chart: {{ template "dotstatsuite.chart" . }} + release: {{ .Release.Name }} + heritage: {{ .Release.Service }} +spec: + host: "*.{{ .Release.Namespace }}.svc.{{ default "cluster.local" .Values.clusterDomain }}" + trafficPolicy: + tls: + mode: "{{ default "DISABLE" .Values.destinationRule.mode }}" +{{- end }} diff --git a/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/hpa/sfs.yaml b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/hpa/sfs.yaml new file mode 100644 index 00000000..d915c9ac --- /dev/null +++ b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/hpa/sfs.yaml @@ -0,0 +1,30 @@ +{{- if .Values.sfs.enabled -}} + {{- if .Values.sfs.autoscaling.enabled }} + apiVersion: autoscaling/v2beta1 + kind: HorizontalPodAutoscaler + metadata: + name: {{ include "dotstatsuite.fullname" . }}-sfs + labels: + {{- include "dotstatsuite.labels" . | nindent 4 }}-sfs + spec: + scaleTargetRef: + apiVersion: apps/v1 + kind: Deployment + name: {{ include "dotstatsuite.fullname" . }}-sfs + minReplicas: {{ .Values.sfs.autoscaling.minReplicas }} + maxReplicas: {{ .Values.sfs.autoscaling.maxReplicas }} + metrics: + {{- if .Values.sfs.autoscaling.targetCPUUtilizationPercentage }} + - type: Resource + resource: + name: cpu + targetAverageUtilization: {{ .Values.sfs.autoscaling.targetCPUUtilizationPercentage }} + {{- end }} + {{- if .Values.sfs.autoscaling.targetMemoryUtilizationPercentage }} + - type: Resource + resource: + name: memory + targetAverageUtilization: {{ .Values.sfs.autoscaling.targetMemoryUtilizationPercentage }} + {{- end }} + {{- end }} +{{- end }} diff --git a/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/hpa/solr.yaml b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/hpa/solr.yaml new file mode 100644 index 00000000..397b864c --- /dev/null +++ b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/hpa/solr.yaml @@ -0,0 +1,30 @@ +{{- if .Values.solr.enabled -}} +{{- if .Values.solr.autoscaling.enabled }} +apiVersion: autoscaling/v2beta1 +kind: HorizontalPodAutoscaler +metadata: + name: {{ include "dotstatsuite.fullname" . }}-solr + labels: + {{- include "dotstatsuite.labels" . | nindent 4 }}-solr +spec: + scaleTargetRef: + apiVersion: apps/v1 + kind: Deployment + name: {{ include "dotstatsuite.fullname" . }}-solr + minReplicas: {{ .Values.solr.autoscaling.minReplicas }} + maxReplicas: {{ .Values.solr.autoscaling.maxReplicas }} + metrics: + {{- if .Values.solr.autoscaling.targetCPUUtilizationPercentage }} + - type: Resource + resource: + name: cpu + targetAverageUtilization: {{ .Values.solr.autoscaling.targetCPUUtilizationPercentage }} + {{- end }} + {{- if .Values.solr.autoscaling.targetMemoryUtilizationPercentage }} + - type: Resource + resource: + name: memory + targetAverageUtilization: {{ .Values.solr.autoscaling.targetMemoryUtilizationPercentage }} + {{- end }} +{{- end }} +{{- end }} diff --git a/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/ing/sfs.yaml b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/ing/sfs.yaml new file mode 100644 index 00000000..582148ee --- /dev/null +++ b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/ing/sfs.yaml @@ -0,0 +1,47 @@ +{{- if .Values.sfs.enabled -}} +{{- if .Values.sfs.ingress.enabled -}} +{{- $fullName := include "dotstatsuite.fullname" . -}} +{{- $svcPort := .Values.sfs.service.port -}} +{{- if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}} +apiVersion: networking.k8s.io/v1 +{{- else -}} +apiVersion: extensions/v1 +{{- end }} +kind: Ingress +metadata: + name: {{ $fullName }}-sfs + labels: + {{- include "dotstatsuite.labels" . | nindent 4 }}-sfs + {{- with .Values.sfs.ingress.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} +spec: + {{- if .Values.sfs.ingress.tls }} + tls: + {{- range .Values.sfs.ingress.tls }} + - hosts: + {{- range .hosts }} + - {{ . | quote }} + {{- end }} + secretName: {{ .secretName }} + {{- end }} + {{- end }} + rules: + {{- range .Values.sfs.ingress.hosts }} + - host: {{ .host | quote }} + http: + paths: + {{- range .paths }} + - path: {{ . }} + pathType: ImplementationSpecific + backend: + service: + name: {{ $fullName }}-sfs + port: + number: {{ $svcPort }} + {{- end }} + {{- end }} + {{- end }} + {{- end }} + diff --git a/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/pvc/mongo-pvc.yaml b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/pvc/mongo-pvc.yaml new file mode 100644 index 00000000..8e85f161 --- /dev/null +++ b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/pvc/mongo-pvc.yaml @@ -0,0 +1,31 @@ +{{- if and .Values.mongo.persistence.enabled (not .Values.mongo.persistence.existingClaim) -}} +kind: PersistentVolumeClaim +apiVersion: v1 +metadata: +{{- if .Values.mongo.persistence.annotations }} + annotations: +{{ toYaml .Values.mongo.persistence.annotations | indent 4 }} +{{- end }} + name: {{ include "dotstatsuite.fullname" . }}-mongo-pv-claim + labels: + app.kubernetes.io/name: {{ include "dotstatsuite.name" . }} + helm.sh/chart: {{ include "dotstatsuite.chart" . }} + app.kubernetes.io/instance: {{ .Release.Name }} + app.kubernetes.io/managed-by: {{ .Release.Service }} +spec: + accessModes: + - {{ .Values.mongo.persistence.accessMode | quote }} + resources: + requests: + storage: {{ .Values.mongo.persistence.size | quote }} + {{- if .Values.mongo.persistence.iops }} + iops: {{ .Values.mongo.persistence.iops | quote }} + {{- end }} +{{- if .Values.mongo.persistence.storageClass }} +{{- if (eq "-" .Values.mongo.persistence.storageClass) }} + storageClassName: "" +{{- else }} + storageClassName: "{{ .Values.mongo.persistence.storageClass }}" +{{- end }} +{{- end }} +{{- end }} diff --git a/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/pvc/solr-pvc.yaml b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/pvc/solr-pvc.yaml new file mode 100644 index 00000000..95c2f60a --- /dev/null +++ b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/pvc/solr-pvc.yaml @@ -0,0 +1,31 @@ +{{- if and .Values.solr.persistence.enabled (not .Values.solr.persistence.existingClaim) -}} +kind: PersistentVolumeClaim +apiVersion: v1 +metadata: +{{- if .Values.solr.persistence.annotations }} + annotations: +{{ toYaml .Values.solr.persistence.annotations | indent 4 }} +{{- end }} + name: {{ include "dotstatsuite.fullname" . }}-solr-pv-claim + labels: + app.kubernetes.io/name: {{ include "dotstatsuite.name" . }} + helm.sh/chart: {{ include "dotstatsuite.chart" . }} + app.kubernetes.io/instance: {{ .Release.Name }} + app.kubernetes.io/managed-by: {{ .Release.Service }} +spec: + accessModes: + - {{ .Values.solr.persistence.accessMode | quote }} + resources: + requests: + storage: {{ .Values.solr.persistence.size | quote }} + {{- if .Values.solr.persistence.iops }} + iops: {{ .Values.solr.persistence.iops | quote }} + {{- end }} +{{- if .Values.solr.persistence.storageClass }} +{{- if (eq "-" .Values.solr.persistence.storageClass) }} + storageClassName: "" +{{- else }} + storageClassName: "{{ .Values.solr.persistence.storageClass }}" +{{- end }} +{{- end }} +{{- end }} diff --git a/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/sa/mongo.yaml b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/sa/mongo.yaml new file mode 100644 index 00000000..b2f5be6f --- /dev/null +++ b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/sa/mongo.yaml @@ -0,0 +1,14 @@ +{{- if .Values.mongo.enabled -}} +{{- if .Values.mongo.serviceAccount.create -}} +apiVersion: v1 +kind: ServiceAccount +metadata: + name: {{ include "dotstatsuite.mongo.serviceAccountName" . }}-mongo + labels: + {{- include "dotstatsuite.labels" . | nindent 4 }}-mongo + {{- with .Values.mongo.serviceAccount.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} +{{- end }} +{{- end }} diff --git a/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/sa/sfs.yaml b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/sa/sfs.yaml new file mode 100644 index 00000000..d3151f9a --- /dev/null +++ b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/sa/sfs.yaml @@ -0,0 +1,14 @@ +{{- if .Values.sfs.enabled -}} +{{- if .Values.sfs.serviceAccount.create -}} +apiVersion: v1 +kind: ServiceAccount +metadata: + name: {{ include "dotstatsuite.sfs.serviceAccountName" . }}-sfs + labels: + {{- include "dotstatsuite.labels" . | nindent 4 }}-sfs + {{- with .Values.sfs.serviceAccount.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} +{{- end }} +{{- end }} diff --git a/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/sa/solr.yaml b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/sa/solr.yaml new file mode 100644 index 00000000..77a83e5e --- /dev/null +++ b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/sa/solr.yaml @@ -0,0 +1,14 @@ +{{- if .Values.solr.enabled -}} +{{- if .Values.solr.serviceAccount.create -}} +apiVersion: v1 +kind: ServiceAccount +metadata: + name: {{ include "dotstatsuite.solr.serviceAccountName" . }}-solr + labels: + {{- include "dotstatsuite.labels" . | nindent 4 }}-solr + {{- with .Values.solr.serviceAccount.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} +{{- end }} +{{- end }} diff --git a/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/secret/api-key.yaml b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/secret/api-key.yaml new file mode 100644 index 00000000..db4ff754 --- /dev/null +++ b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/secret/api-key.yaml @@ -0,0 +1,7 @@ +kind: Secret +apiVersion: v1 +metadata: + name: {{ include "dotstatsuite.fullname" . }}-api-key-secret +data: + api-key: {{ .Values.sfs.api_key_secret }} +type: Opaque diff --git a/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/svc/mongo.yaml b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/svc/mongo.yaml new file mode 100644 index 00000000..33cc36be --- /dev/null +++ b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/svc/mongo.yaml @@ -0,0 +1,15 @@ +{{- if .Values.mongo.enabled -}} +apiVersion: v1 +kind: Service +metadata: + name: {{ include "dotstatsuite.fullname" . }}-mongo + labels: + {{- include "dotstatsuite.labels" . | nindent 4 }}-mongo +spec: + ports: + - name: mongodb + port: {{ .Values.mongo.service.port }} + targetPort: mongodb + selector: + {{- include "dotstatsuite.selectorLabels" . | nindent 4 }}-mongo +{{- end }} diff --git a/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/svc/sfs.yaml b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/svc/sfs.yaml new file mode 100644 index 00000000..f1e81286 --- /dev/null +++ b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/svc/sfs.yaml @@ -0,0 +1,17 @@ +{{- if .Values.sfs.enabled -}} +apiVersion: v1 +kind: Service +metadata: + name: {{ include "dotstatsuite.fullname" . }}-sfs + labels: + {{- include "dotstatsuite.labels" . | nindent 4 }}-sfs +spec: + type: {{ .Values.sfs.service.type }} + ports: + - port: {{ .Values.sfs.service.port }} + targetPort: readiness-http + protocol: TCP + name: http-sfs + selector: + {{- include "dotstatsuite.selectorLabels" . | nindent 4 }}-sfs +{{- end }} diff --git a/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/svc/solr.yaml b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/svc/solr.yaml new file mode 100644 index 00000000..a32d4e7b --- /dev/null +++ b/stable/fdi-dotstatsuite-sfs-solr-stateful/templates/svc/solr.yaml @@ -0,0 +1,17 @@ +{{- if .Values.solr.enabled -}} +apiVersion: v1 +kind: Service +metadata: + name: {{ include "dotstatsuite.fullname" . }}-solr + labels: + {{- include "dotstatsuite.labels" . | nindent 4 }}-solr +spec: + type: {{ .Values.solr.service.type }} + ports: + - port: {{ .Values.solr.service.port }} + targetPort: http + protocol: TCP + name: http-solr + selector: + {{- include "dotstatsuite.selectorLabels" . | nindent 4 }}-solr +{{- end }} diff --git a/stable/fdi-dotstatsuite-sfs-solr-stateful/values.yaml b/stable/fdi-dotstatsuite-sfs-solr-stateful/values.yaml new file mode 100644 index 00000000..73a69984 --- /dev/null +++ b/stable/fdi-dotstatsuite-sfs-solr-stateful/values.yaml @@ -0,0 +1,320 @@ +# Default values for sdmxfrontend. +# This is a YAML-formatted file. +# Declare variables to be passed into your templates. + +# Globals +nameOverride: "fdi-dotstatsuite-sfs-solr" +fullnameOverride: "fdi-dotstatsuite-sfs-solr" + +repository_base: artifactory.cloud.statcan.ca/docker + +# sfs +# https://gitlab.k8s.cloud.statcan.ca/analytics-platform/discovery/dotstatsuite-docker-compose +sfs: + enabled: true + replicaCount: 1 + + solr: + host: fdi-dotstatsuite-sfs-solr-solr + port: 8983 + ingress: + enabled: true + annotations: + # kubernetes.io/ingress.class: nginx + # kubernetes.io/tls-acme: "true" + kubernetes.io/ingress.class: istio + hosts: + - host: sdmx-sfs + paths: + - '/*' + tls: [] + # - secretName: chart-example-tls + # hosts: + # - chart-example.local + + image: + # repository: siscc/dotstatsuite-data-explorer + repository: siscc/dotstatsuite-sdmx-faceted-search + pullPolicy: Always + # Overrides the image tag whose default is the chart version. + tag: "master" + config: + host: http://config + api_key_secret: "" + serviceAccount: + # Specifies whether a service account should be created + create: true + # Annotations to add to the service account + annotations: {} + # The name of the service account to use. + # If not set and create is true, a name is generated using the fullname template + name: "" + + # podAnnotations: { + # sidecar.istio.io/inject: 'false' + # } + podAnnotations: { + traffic.sidecar.istio.io/excludeOutboundPorts: '27017' + } + + podSecurityContext: {} + # fsGroup: 2000 + + securityContext: {} + # capabilities: + # drop: + # - ALL + # readOnlyRootFilesystem: true + # runAsNonRoot: true + # runAsUser: 1000 + + service: + type: ClusterIP + port: 80 + + ## Optionally specify an array of imagePullSecrets. + ## Secrets must be manually created in the namespace. + ## ref: https://kubernetes.io/docs/concepts/containers/images/#specifying-imagepullsecrets-on-a-pod + ## + imagePullSecrets: + - name: artifactory + + resources: {} + # We usually recommend not to specify default resources and to leave this as a conscious + # choice for the user. This also increases chances charts run on environments with little + # resources, such as Minikube. If you do want to specify resources, uncomment the following + # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + # limits: + # cpu: 100m + # memory: 128Mi + # requests: + # cpu: 100m + # memory: 128Mi + + autoscaling: + enabled: false + minReplicas: 1 + maxReplicas: 100 + targetCPUUtilizationPercentage: 80 + # targetMemoryUtilizationPercentage: 80 + + nodeSelector: {} + + tolerations: [] + + affinity: {} + +# solr +# https://gitlab.k8s.cloud.statcan.ca/analytics-platform/discovery/dotstatsuite-docker-compose +solr: + enabled: true + replicaCount: 1 + + ingress: + enabled: false + annotations: + # kubernetes.io/ingress.class: nginx + # kubernetes.io/tls-acme: "true" + kubernetes.io/ingress.class: istio + hosts: + - host: sdmx-solr + paths: + - '/*' + tls: [] + # - secretName: chart-example-tls + # hosts: + # - chart-example.local + + image: + repository: solr + pullPolicy: Always + # Overrides the image tag whose default is the chart version. + tag: "8.11.1" + + serviceAccount: + # Specifies whether a service account should be created + create: true + # Annotations to add to the service account + annotations: {} + # The name of the service account to use. + # If not set and create is true, a name is generated using the fullname template + name: "" + + podAnnotations: {} + # podAnnotations: {} + + podSecurityContext: {} + # fsGroup: 2000 + + securityContext: {} + # capabilities: + # drop: + # - ALL + # readOnlyRootFilesystem: true + # runAsNonRoot: true + # runAsUser: 1000 + + service: + type: ClusterIP + port: 8983 + persistence: + enabled: true + ## A manually managed Persistent Volume and Claim + ## Requires persistence.enabled: true + ## If defined, PVC must be created manually before volume will be bound + # existingClaim: + + ## CKAN data Persistent Volume Storage Class + ## If defined, storageClassName: + ## If set to "-", storageClassName: "", which disables dynamic provisioning + ## If undefined (the default) or set to null, no storageClassName spec is + ## set, choosing the default provisioner. (gp2 on AWS, standard on + ## GKE, AWS & OpenStack) + ## + # storageClass: "-" + annotations: {} + accessMode: ReadWriteOnce + size: 2Gi + ## Optionally specify an array of imagePullSecrets. + ## Secrets must be manually created in the namespace. + ## ref: https://kubernetes.io/docs/concepts/containers/images/#specifying-imagepullsecrets-on-a-pod + ## + imagePullSecrets: + - name: registry-pull-secret + + resources: {} + # We usually recommend not to specify default resources and to leave this as a conscious + # choice for the user. This also increases chances charts run on environments with little + # resources, such as Minikube. If you do want to specify resources, uncomment the following + # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + # limits: + # cpu: 100m + # memory: 128Mi + # requests: + # cpu: 100m + # memory: 128Mi + + autoscaling: + enabled: false + minReplicas: 1 + maxReplicas: 100 + targetCPUUtilizationPercentage: 80 + # targetMemoryUtilizationPercentage: 80 + + nodeSelector: {} + + tolerations: [] + + affinity: {} + +# mongo +# https://gitlab.k8s.cloud.statcan.ca/analytics-platform/discovery/dotstatsuite-docker-compose +mongo: + enabled: true + replicaCount: 1 + + ingress: + enabled: false + annotations: + # kubernetes.io/ingress.class: nginx + # kubernetes.io/tls-acme: "true" + kubernetes.io/ingress.class: istio + hosts: + - host: sdmx-mongo.dev.cloud.statcan.ca + paths: + - '/*' + tls: [] + # - secretName: chart-example-tls + # hosts: + # - chart-example.local + + image: + repository: artifactory.cloud.statcan.ca/docker/mongo + pullPolicy: Always + # Overrides the image tag whose default is the chart version. + tag: "5.0.6" + + serviceAccount: + # Specifies whether a service account should be created + create: true + # Annotations to add to the service account + annotations: {} + # The name of the service account to use. + # If not set and create is true, a name is generated using the fullname template + name: "" + + podAnnotations: { + sidecar.istio.io/inject: 'false' + } + + podSecurityContext: {} + # fsGroup: 2000 + + securityContext: {} + # capabilities: + # drop: + # - ALL + # readOnlyRootFilesystem: true + # runAsNonRoot: true + # runAsUser: 1000 + + service: + type: ClusterIP + port: 27017 + persistence: + enabled: true + ## A manually managed Persistent Volume and Claim + ## Requires persistence.enabled: true + ## If defined, PVC must be created manually before volume will be bound + # existingClaim: + + ## CKAN data Persistent Volume Storage Class + ## If defined, storageClassName: + ## If set to "-", storageClassName: "", which disables dynamic provisioning + ## If undefined (the default) or set to null, no storageClassName spec is + ## set, choosing the default provisioner. (gp2 on AWS, standard on + ## GKE, AWS & OpenStack) + ## + # storageClass: "-" + annotations: {} + accessMode: ReadWriteOnce + size: 2Gi + ## Optionally specify an array of imagePullSecrets. + ## Secrets must be manually created in the namespace. + ## ref: https://kubernetes.io/docs/concepts/containers/images/#specifying-imagepullsecrets-on-a-pod + ## + imagePullSecrets: + - name: artifactory + + resources: {} + # We usually recommend not to specify default resources and to leave this as a conscious + # choice for the user. This also increases chances charts run on environments with little + # resources, such as Minikube. If you do want to specify resources, uncomment the following + # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + # limits: + # cpu: 100m + # memory: 128Mi + # requests: + # cpu: 100m + # memory: 128Mi + + autoscaling: + enabled: false + minReplicas: 1 + maxReplicas: 100 + targetCPUUtilizationPercentage: 80 + # targetMemoryUtilizationPercentage: 80 + + nodeSelector: {} + + tolerations: [] + + affinity: {} + + + +# Destination Rule +# https://gitlab.k8s.cloud.statcan.ca/analytics-platform/discovery/dotstatsuite-docker-compose +destinationRule: + enabled: false + mode: DISABLE From bc55470db7b8ee5fc1167f6d384500cf152f9777 Mon Sep 17 00:00:00 2001 From: Qian Date: Fri, 25 Apr 2025 09:54:34 -0400 Subject: [PATCH 6/7] updated the chard for keycloak --- stable/fdi-dotstatsuite-keycloak/Chart.yaml | 33 +++++++++++++++---- .../Chart.yaml | 2 +- 2 files changed, 27 insertions(+), 8 deletions(-) diff --git a/stable/fdi-dotstatsuite-keycloak/Chart.yaml b/stable/fdi-dotstatsuite-keycloak/Chart.yaml index 3137dca8..5167d7ce 100644 --- a/stable/fdi-dotstatsuite-keycloak/Chart.yaml +++ b/stable/fdi-dotstatsuite-keycloak/Chart.yaml @@ -1,12 +1,31 @@ apiVersion: v2 -appVersion: 16.1.0 +name: fdi-dotstatsuite-keycloak description: fdi-dotstatsuite-keycloak + +# A chart can be either an 'application' or a 'library' chart. +# +# Application charts are a collection of templates that can be packaged into versioned archives +# to be deployed. +# +# Library charts provide useful utilities or functions for the chart developer. They're included as +# a dependency of application charts to inject those utilities and functions into the rendering +# pipeline. Library charts do not define any templates and therefore cannot be deployed. +type: application + +# This is the chart version. This version number should be incremented each time you make changes +# to the chart and its templates, including the app version. +# Versions are expected to follow Semantic Versioning (https://semver.org/) +version: 1.0.1 + +# This is the version number of the application being deployed. This version number should be +# incremented each time you make changes to the application. Versions are not expected to +# follow Semantic Versioning. They should reflect the version the application is using. +appVersion: 16.1.0 + home: https://statcan.gc.ca -maintainers: -- email: Jianlong.qian@statcan.gc.ca - name: Jianlong.qian -name: fdi-dotstatsuite-keycloak sources: - https://gitlab.com/sis-cc/.stat-suite/dotstatsuite-kube-rp/ -type: application -version: 1.0.0 +maintainers: +- name: Jianlong.qian + email: Jianlong.qian@statcan.gc.ca +engine: gotpl diff --git a/stable/fdi-dotstatsuite-sfs-solr-stateful/Chart.yaml b/stable/fdi-dotstatsuite-sfs-solr-stateful/Chart.yaml index 61b29ac6..950c1795 100644 --- a/stable/fdi-dotstatsuite-sfs-solr-stateful/Chart.yaml +++ b/stable/fdi-dotstatsuite-sfs-solr-stateful/Chart.yaml @@ -16,7 +16,7 @@ type: application # This is the chart version. This version number should be incremented each time you make changes # to the chart and its templates, including the app version. # Versions are expected to follow Semantic Versioning (https://semver.org/) -version: 1.0.0 +version: 1.0.2 # This is the version number of the application being deployed. This version number should be # incremented each time you make changes to the application. Versions are not expected to From 3f24489c706712813befa2a83ce9116f734984f6 Mon Sep 17 00:00:00 2001 From: Qian Date: Fri, 25 Apr 2025 10:04:36 -0400 Subject: [PATCH 7/7] updated the chard for keycloak-1 --- stable/fdi-dotstatsuite-sfs-solr-stateful/values.yaml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/stable/fdi-dotstatsuite-sfs-solr-stateful/values.yaml b/stable/fdi-dotstatsuite-sfs-solr-stateful/values.yaml index 73a69984..414c89f9 100644 --- a/stable/fdi-dotstatsuite-sfs-solr-stateful/values.yaml +++ b/stable/fdi-dotstatsuite-sfs-solr-stateful/values.yaml @@ -244,7 +244,7 @@ mongo: name: "" podAnnotations: { - sidecar.istio.io/inject: 'false' + sidecar.istio.io/inject: 'false' } podSecurityContext: {} @@ -311,8 +311,6 @@ mongo: affinity: {} - - # Destination Rule # https://gitlab.k8s.cloud.statcan.ca/analytics-platform/discovery/dotstatsuite-docker-compose destinationRule: