Skip to content

Commit

Permalink
move-storage-config-to-secret
Browse files Browse the repository at this point in the history
Signed-off-by: zhongjun.li <[email protected]>
  • Loading branch information
learner0810 committed Mar 11, 2024
1 parent 90b2fff commit f2158c7
Show file tree
Hide file tree
Showing 8 changed files with 196 additions and 79 deletions.
93 changes: 93 additions & 0 deletions charts/clusterpedia-core/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
# clusterpedia-core

![Version: 0.1.1](https://img.shields.io/badge/Version-0.1.1-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: v0.6.0](https://img.shields.io/badge/AppVersion-v0.6.0-informational?style=flat-square)

A Helm chart for Clusterpedia

## Maintainers

| Name | Email | Url |
| ---- | ------ | --- |
| clusterpedia-io | | <https://github.com/clusterpedia-io/clusterpedia-helm> |

## Source Code

* <https://github.com/clusterpedia-io/clusterpedia-helm>

## Requirements

| Repository | Name | Version |
|------------|------|---------|
| https://charts.bitnami.com/bitnami | common | 1.x.x |

## Values

| Key | Type | Default | Description |
|-----|------|---------|-------------|
| apiserver.affinity | object | `{}` | |
| apiserver.enableSHA1Cert | bool | `false` | |
| apiserver.featureGates.AllowRawSQLQuery | bool | `false` | |
| apiserver.featureGates.RemainingItemCount | bool | `false` | |
| apiserver.image.pullPolicy | string | `"IfNotPresent"` | |
| apiserver.image.pullSecrets | list | `[]` | |
| apiserver.image.registry | string | `"ghcr.io"` | |
| apiserver.image.repository | string | `"clusterpedia-io/clusterpedia/apiserver"` | |
| apiserver.image.tag | string | `"v0.6.0"` | |
| apiserver.labels | object | `{}` | |
| apiserver.nodeSelector | object | `{}` | |
| apiserver.podAnnotations | object | `{}` | |
| apiserver.podLabels | object | `{}` | |
| apiserver.replicaCount | int | `1` | |
| apiserver.resources | object | `{}` | |
| apiserver.tolerations | list | `[]` | |
| clustersynchroManager.affinity | object | `{}` | |
| clustersynchroManager.featureGates.AllowSyncAllCustomResources | bool | `false` | |
| clustersynchroManager.featureGates.AllowSyncAllResources | bool | `false` | |
| clustersynchroManager.featureGates.PruneLastAppliedConfiguration | bool | `true` | |
| clustersynchroManager.featureGates.PruneManagedFields | bool | `true` | |
| clustersynchroManager.image.pullPolicy | string | `"IfNotPresent"` | |
| clustersynchroManager.image.pullSecrets | list | `[]` | |
| clustersynchroManager.image.registry | string | `"ghcr.io"` | |
| clustersynchroManager.image.repository | string | `"clusterpedia-io/clusterpedia/clustersynchro-manager"` | |
| clustersynchroManager.image.tag | string | `"v0.6.0"` | |
| clustersynchroManager.labels | object | `{}` | |
| clustersynchroManager.nodeSelector | object | `{}` | |
| clustersynchroManager.podAnnotations | object | `{}` | |
| clustersynchroManager.podLabels | object | `{}` | |
| clustersynchroManager.replicaCount | int | `1` | |
| clustersynchroManager.resources | object | `{}` | |
| clustersynchroManager.tolerations | list | `[]` | |
| commonAnnotations | object | `{}` | |
| commonLabels | object | `{}` | |
| controllerManager.affinity | object | `{}` | |
| controllerManager.featureGates | object | `{}` | |
| controllerManager.image.pullPolicy | string | `"IfNotPresent"` | |
| controllerManager.image.pullSecrets | list | `[]` | |
| controllerManager.image.registry | string | `"ghcr.io"` | |
| controllerManager.image.repository | string | `"clusterpedia-io/clusterpedia/controller-manager"` | |
| controllerManager.image.tag | string | `"v0.6.0"` | |
| controllerManager.labels | object | `{}` | |
| controllerManager.nodeSelector | object | `{}` | |
| controllerManager.podAnnotations | object | `{}` | |
| controllerManager.podLabels | object | `{}` | |
| controllerManager.replicaCount | int | `1` | |
| controllerManager.resources | object | `{}` | |
| controllerManager.tolerations | list | `[]` | |
| global.imagePullSecrets | list | `[]` | |
| global.imageRegistry | string | `""` | |
| hookJob.image.pullPolicy | string | `"IfNotPresent"` | |
| hookJob.image.registry | string | `"ghcr.io"` | |
| hookJob.image.repository | string | `"cloudtty/cloudshell"` | |
| hookJob.image.tag | string | `"v0.4.0"` | |
| installCRDs | bool | `false` | |
| storage.componentEnv | list | `[]` | |
| storage.config | object | `{}` | |
| storage.configMap | string | `""` | |
| storage.image.pullPolicy | string | `"IfNotPresent"` | |
| storage.image.registry | string | `""` | |
| storage.image.repository | string | `""` | |
| storage.image.tag | string | `""` | |
| storage.name | string | `""` | |

----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.9.1](https://github.com/norwoodj/helm-docs/releases/v1.9.1)
66 changes: 66 additions & 0 deletions charts/clusterpedia-mysql/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
# clusterpedia-mysql

![Version: 0.1.1](https://img.shields.io/badge/Version-0.1.1-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: v0.6.0](https://img.shields.io/badge/AppVersion-v0.6.0-informational?style=flat-square)

A Helm chart for Clusterpedia

## Maintainers

| Name | Email | Url |
| ---- | ------ | --- |
| clusterpedia-io | | <https://github.com/clusterpedia-io/clusterpedia-helm> |

## Source Code

* <https://github.com/clusterpedia-io/clusterpedia-helm>

## Requirements

| Repository | Name | Version |
|------------|------|---------|
| https://charts.bitnami.com/bitnami | common | 1.x.x |
| https://charts.bitnami.com/bitnami | mysql | 9.x.x |
| https://clusterpedia-io.github.io/clusterpedia-helm/ | clusterpedia-core | 0.1.x |

## Values

| Key | Type | Default | Description |
|-----|------|---------|-------------|
| commonAnnotations | object | `{}` | |
| commonLabels | object | `{}` | |
| externalStorage.createDatabase | bool | `false` | |
| externalStorage.database | string | `""` | |
| externalStorage.host | string | `""` | |
| externalStorage.password | string | `""` | |
| externalStorage.port | string | `nil` | |
| externalStorage.user | string | `""` | |
| global.imagePullSecrets | list | `[]` | |
| global.imageRegistry | string | `""` | |
| installCRDs | bool | `false` | |
| mysql.auth.database | string | `"clusterpedia"` | |
| mysql.auth.password | string | `""` | |
| mysql.auth.rootPassword | string | `"dangerous0"` | |
| mysql.auth.username | string | `""` | |
| mysql.image.pullPolicy | string | `"IfNotPresent"` | |
| mysql.image.pullSecrets | list | `[]` | |
| mysql.image.registry | string | `"docker.io"` | |
| mysql.image.repository | string | `"bitnami/mysql"` | |
| mysql.image.tag | string | `"8.0.28-debian-10-r23"` | |
| mysql.primary.persistence.enabled | bool | `true` | |
| mysql.primary.persistence.size | string | `"10Gi"` | |
| persistenceMatchNode | string | `""` | |
| storageConfig.connPool.connMaxLifetime | string | `"60m"` | |
| storageConfig.connPool.maxIdleConns | int | `5` | |
| storageConfig.connPool.maxOpenConns | int | `40` | |
| storageConfig.log.enabled | bool | `false` | |
| storageConfig.log.ignoreRecordNotFoundError | bool | `false` | |
| storageConfig.log.level | string | `"Warn"` | |
| storageConfig.log.logger.filename | string | `"/var/log/clusterpedia/internalstorage.log"` | |
| storageConfig.log.logger.maxbackups | int | `0` | |
| storageConfig.log.logger.maxsize | int | `100` | |
| storageConfig.log.slowThreshold | string | `"100ms"` | |
| storageConfig.log.stdout | bool | `false` | |
| storageInstallMode | string | `"internal"` | |

----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.9.1](https://github.com/norwoodj/helm-docs/releases/v1.9.1)
2 changes: 1 addition & 1 deletion charts/clusterpedia/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,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: 2.2.0
version: 2.2.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
Expand Down
37 changes: 31 additions & 6 deletions charts/clusterpedia/templates/_helpers.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -171,22 +171,22 @@ Return the proper Docker Image Registry Secret Names
{{- define "clusterpedia.storage.password" -}}
{{- if eq .Values.storageInstallMode "external" }}
{{- if empty (include "clusterpedia.storage.dsn" .) -}}
{{- required "Please set correct storage password!" .Values.externalStorage.password | toString | b64enc -}}
{{- required "Please set correct storage password!" .Values.externalStorage.password | toString }}
{{- else -}}
{{- .Values.externalStorage.password | toString | b64enc -}}
{{- .Values.externalStorage.password | toString -}}
{{- end -}}
{{- else -}}
{{- if eq (include "clusterpedia.storage.type" .) "postgres" }}
{{- if not (empty .Values.global.postgresql.auth.username) -}}
{{- .Values.global.postgresql.auth.password | toString | b64enc -}}
{{- .Values.global.postgresql.auth.password | toString -}}
{{- else -}}
{{- .Values.global.postgresql.auth.postgresPassword | toString | b64enc -}}
{{- .Values.global.postgresql.auth.postgresPassword | toString -}}
{{- end -}}
{{- else if eq (include "clusterpedia.storage.type" .) "mysql" -}}
{{- if not (empty .Values.mysql.auth.username) -}}
{{- .Values.mysql.auth.password | toString | b64enc -}}
{{- .Values.mysql.auth.password | toString -}}
{{- else -}}
{{- .Values.mysql.auth.rootPassword | toString | b64enc -}}
{{- .Values.mysql.auth.rootPassword | toString -}}
{{- end -}}
{{- end -}}
{{- end -}}
Expand Down Expand Up @@ -389,3 +389,28 @@ We truncate at 63 chars because some Kubernetes name fields are limited to this
value: 'k8s.namespace.name=$(OTEL_K8S_NAMESPACE),k8s.node.name=$(OTEL_RESOURCE_ATTRIBUTES_NODE_NAME),k8s.pod.name=$(OTEL_RESOURCE_ATTRIBUTES_POD_NAME)'
{{- end -}}
{{- end -}}

{{- define "clusterpedia.storage.secret" -}}
type: {{ include "clusterpedia.storage.type" . | quote }}
dsn: {{ include "clusterpedia.storage.dsn" . | quote }}
host: {{ include "clusterpedia.storage.host" . | quote }}
port: {{ include "clusterpedia.storage.port" . }}
user: {{ include "clusterpedia.storage.user" . }}
password: {{ include "clusterpedia.storage.password" . }}
database: {{ include "clusterpedia.storage.database" . }}
{{ if .Values.storageConfig.log.enabled }}
log:
stdout: {{ .Values.storageConfig.log.stdout }}
level: {{ .Values.storageConfig.log.level | default "Warn" | quote }}
slowThreshold: {{ .Values.storageConfig.log.slowThreshold }}
ignoreRecordNotFoundError: {{ .Values.storageConfig.log.ignoreRecordNotFoundError }}
logger:
filename: {{ .Values.storageConfig.log.logger.filename }}
maxsize: {{ .Values.storageConfig.log.logger.maxsize }}
maxbackups: {{ .Values.storageConfig.log.logger.maxbackups }}
{{ end }}
connPool:
maxIdleConns: {{ .Values.storageConfig.connPool.maxIdleConns | int }}
maxOpenConns: {{ .Values.storageConfig.connPool.maxOpenConns | int }}
connMaxLifetime: {{ .Values.storageConfig.connPool.connMaxLifetime }}
{{- end -}}
23 changes: 2 additions & 21 deletions charts/clusterpedia/templates/apiserver-deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -56,12 +56,6 @@ spec:
done;
echo 'DataBase OK ✓'
{{- end }}
env:
- name: {{ include "clusterpedia.storage.password.envKey" . }}
valueFrom:
secretKeyRef:
name: {{ include "clusterpedia.internalstorage.fullname" . }}
key: password
volumeMounts:
- name: internalstorage-config
mountPath: /etc/clusterpedia/storage
Expand Down Expand Up @@ -95,14 +89,6 @@ spec:
done;
echo 'DataBase OK ✓'
{{- end }}
{{- if eq (include "clusterpedia.storage.type" .) "mysql" }}
env:
- name: DB_PASSWORD
valueFrom:
secretKeyRef:
name: {{ include "clusterpedia.internalstorage.fullname" . }}
key: password
{{- end }}
volumeMounts:
- name: internalstorage-config
mountPath: /etc/clusterpedia/storage
Expand Down Expand Up @@ -130,11 +116,6 @@ spec:
resources: {{- toYaml .Values.apiserver.resources | nindent 12 }}
{{- end }}
env:
- name: DB_PASSWORD
valueFrom:
secretKeyRef:
name: {{ include "clusterpedia.internalstorage.fullname" . }}
key: password
{{- include "clusterpedia.apiserver.tracing.env" . | nindent 8 }}
{{- if .Values.apiserver.enableSHA1Cert }}
- name: GODEBUG
Expand Down Expand Up @@ -164,8 +145,8 @@ spec:
{{- end }}
volumes:
- name: internalstorage-config
configMap:
name: {{ include "clusterpedia.internalstorage.fullname" . }}
secret:
secretName: {{ include "clusterpedia.internalstorage.fullname" . }}
- name: scripts
configMap:
name: {{ include "clusterpedia.scripts.fullname" . }}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,12 +56,6 @@ spec:
done;
echo 'DataBase OK ✓'
{{- end }}
env:
- name: {{ include "clusterpedia.storage.password.envKey" . }}
valueFrom:
secretKeyRef:
name: {{ include "clusterpedia.internalstorage.fullname" . }}
key: password
volumeMounts:
- name: internalstorage-config
mountPath: /etc/clusterpedia/storage
Expand Down Expand Up @@ -95,14 +89,6 @@ spec:
done;
echo 'DataBase OK ✓'
{{- end }}
{{- if eq (include "clusterpedia.storage.type" .) "mysql" }}
env:
- name: DB_PASSWORD
valueFrom:
secretKeyRef:
name: {{ include "clusterpedia.internalstorage.fullname" . }}
key: password
{{- end }}
volumeMounts:
- name: internalstorage-config
mountPath: /etc/clusterpedia/storage
Expand Down Expand Up @@ -134,11 +120,6 @@ spec:
resources: {{- toYaml .Values.clustersynchroManager.resources | nindent 12 }}
{{- end }}
env:
- name: DB_PASSWORD
valueFrom:
secretKeyRef:
name: {{ include "clusterpedia.internalstorage.fullname" . }}
key: password
- name: GODEBUG
value: netdns=go
volumeMounts:
Expand All @@ -157,8 +138,8 @@ spec:
{{- end }}
volumes:
- name: internalstorage-config
configMap:
name: {{ include "clusterpedia.internalstorage.fullname" . }}
secret:
secretName: {{ include "clusterpedia.internalstorage.fullname" . }}
- name: scripts
configMap:
name: {{ include "clusterpedia.scripts.fullname" . }}
29 changes: 0 additions & 29 deletions charts/clusterpedia/templates/internalstorage-configmap.yaml

This file was deleted.

2 changes: 1 addition & 1 deletion charts/clusterpedia/templates/internalstorage-secret.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@ metadata:
app: {{ include "clusterpedia.internalstorage.fullname" . }}
internalstorage.clusterpedia.io/type: {{ include "clusterpedia.storage.type" . }}
data:
password: {{ include "clusterpedia.storage.password" . }}
internalstorage-config.yaml: {{ include "clusterpedia.storage.secret" .| b64enc | quote }}

0 comments on commit f2158c7

Please sign in to comment.