Skip to content

Commit

Permalink
chore: support parameters api for postgresql (#1320)
Browse files Browse the repository at this point in the history
  • Loading branch information
sophon-zt authored Mar 3, 2025
1 parent 5608664 commit c6ecafa
Show file tree
Hide file tree
Showing 18 changed files with 146 additions and 88 deletions.
52 changes: 40 additions & 12 deletions addons/postgresql/templates/_helpers.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -187,57 +187,85 @@ postgresql-15-{{ .Chart.Version }}
{{/*
Define postgresql12 component configuration template name
*/}}
{{- define "postgresql12.configurationTemplate" -}}
{{- define "postgresql12.parameterTemplate" -}}
postgresql12-configuration-{{ .Chart.Version }}
{{- end -}}

{{/*
Define postgresql14 component configuration template name
*/}}
{{- define "postgresql14.configurationTemplate" -}}
{{- define "postgresql14.parameterTemplate" -}}
postgresql14-configuration-{{ .Chart.Version }}
{{- end -}}

{{/*
Define postgresql15 component configuration template name
*/}}
{{- define "postgresql15.configurationTemplate" -}}
{{- define "postgresql15.parameterTemplate" -}}
postgresql15-configuration-{{ .Chart.Version }}
{{- end -}}

{{/*
Define postgresql16 component configuration template name
*/}}
{{- define "postgresql16.configurationTemplate" -}}
{{- define "postgresql16.parameterTemplate" -}}
postgresql16-configuration-{{ .Chart.Version }}
{{- end -}}

{{/*
Define postgresql12 component config constraint name
*/}}
{{- define "postgresql12.configConstraint" -}}
postgresql12-cc-{{ .Chart.Version }}
{{- define "postgresql12.parametersDefinition" -}}
postgresql12-pd-{{ .Chart.Version }}
{{- end -}}

{{/*
Define postgresql14 component config constraint name
*/}}
{{- define "postgresql14.configConstraint" -}}
postgresql14-cc-{{ .Chart.Version }}
{{- define "postgresql14.parametersDefinition" -}}
postgresql14-pd-{{ .Chart.Version }}
{{- end -}}

{{/*
Define postgresql15 component config constraint name
*/}}
{{- define "postgresql15.configConstraint" -}}
postgresql15-cc-{{ .Chart.Version }}
{{- define "postgresql15.parametersDefinition" -}}
postgresql15-pd-{{ .Chart.Version }}
{{- end -}}

{{/*
Define postgresql16 component config constraint name
*/}}
{{- define "postgresql16.configConstraint" -}}
postgresql16-cc-{{ .Chart.Version }}
{{- define "postgresql16.parametersDefinition" -}}
postgresql16-pd-{{ .Chart.Version }}
{{- end -}}

{{/*
Define postgresql12 ParameterDrivenConfigRender name
*/}}
{{- define "postgresql12.pcr" -}}
postgresql12-pcr
{{- end -}}

{{/*
Define postgresql14 ParameterDrivenConfigRender name
*/}}
{{- define "postgresql14.pcr" -}}
postgresql14-pcr
{{- end -}}

{{/*
Define postgresql15 ParameterDrivenConfigRender name
*/}}
{{- define "postgresql15.pcr" -}}
postgresql15-pcr
{{- end -}}

{{/*
Define postgresql16 ParameterDrivenConfigRender name
*/}}
{{- define "postgresql16.pcr" -}}
postgresql16-pcr
{{- end -}}

{{/*
Expand Down
9 changes: 1 addition & 8 deletions addons/postgresql/templates/componentdefinition-12.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -50,19 +50,12 @@ spec:
scrapePath: /metrics
configs:
- name: postgresql-configuration
templateRef: {{ include "postgresql12.configurationTemplate" . }}
constraintRef: {{ include "postgresql12.configConstraint" . }}
keys:
- postgresql.conf
templateRef: {{ include "postgresql12.parameterTemplate" . }}
namespace: {{ .Release.Namespace }}
volumeName: postgresql-config
defaultMode: 0777
reRenderResourceTypes:
- vscale
- name: pgbouncer-configuration
templateRef: {{ include "pgbouncer.configurationTemplate" . }}
keys:
- pgbouncer.ini
namespace: {{ .Release.Namespace }}
volumeName: pgbouncer-config
defaultMode: 0777
Expand Down
9 changes: 1 addition & 8 deletions addons/postgresql/templates/componentdefinition-14.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -50,19 +50,12 @@ spec:
scrapePath: /metrics
configs:
- name: postgresql-configuration
templateRef: {{ include "postgresql14.configurationTemplate" . }}
constraintRef: {{ include "postgresql14.configConstraint" . }}
keys:
- postgresql.conf
templateRef: {{ include "postgresql14.parameterTemplate" . }}
namespace: {{ .Release.Namespace }}
volumeName: postgresql-config
defaultMode: 0777
reRenderResourceTypes:
- vscale
- name: pgbouncer-configuration
templateRef: {{ include "pgbouncer.configurationTemplate" . }}
keys:
- pgbouncer.ini
namespace: {{ .Release.Namespace }}
volumeName: pgbouncer-config
defaultMode: 0777
Expand Down
9 changes: 1 addition & 8 deletions addons/postgresql/templates/componentdefinition-15.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -50,19 +50,12 @@ spec:
scrapePath: /metrics
configs:
- name: postgresql-configuration
templateRef: {{ include "postgresql15.configurationTemplate" . }}
constraintRef: {{ include "postgresql15.configConstraint" . }}
keys:
- postgresql.conf
templateRef: {{ include "postgresql15.parameterTemplate" . }}
namespace: {{ .Release.Namespace }}
volumeName: postgresql-config
defaultMode: 0777
reRenderResourceTypes:
- vscale
- name: pgbouncer-configuration
templateRef: {{ include "pgbouncer.configurationTemplate" . }}
keys:
- pgbouncer.ini
namespace: {{ .Release.Namespace }}
volumeName: pgbouncer-config
defaultMode: 0777
Expand Down
9 changes: 1 addition & 8 deletions addons/postgresql/templates/componentdefinition-16.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -50,19 +50,12 @@ spec:
scrapePath: /metrics
configs:
- name: postgresql-configuration
templateRef: {{ include "postgresql16.configurationTemplate" . }}
constraintRef: {{ include "postgresql16.configConstraint" . }}
keys:
- postgresql.conf
templateRef: {{ include "postgresql16.parameterTemplate" . }}
namespace: {{ .Release.Namespace }}
volumeName: postgresql-config
defaultMode: 0777
reRenderResourceTypes:
- vscale
- name: pgbouncer-configuration
templateRef: {{ include "pgbouncer.configurationTemplate" . }}
keys:
- pgbouncer.ini
namespace: {{ .Release.Namespace }}
volumeName: pgbouncer-config
defaultMode: 0777
Expand Down
2 changes: 1 addition & 1 deletion addons/postgresql/templates/configmap-12.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ include "postgresql12.configurationTemplate" . }}
name: {{ include "postgresql12.parameterTemplate" . }}
labels:
{{- include "postgresql.labels" . | nindent 4 }}
annotations:
Expand Down
2 changes: 1 addition & 1 deletion addons/postgresql/templates/configmap-14.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ include "postgresql14.configurationTemplate" . }}
name: {{ include "postgresql14.parameterTemplate" . }}
labels:
{{- include "postgresql.labels" . | nindent 4 }}
annotations:
Expand Down
2 changes: 1 addition & 1 deletion addons/postgresql/templates/configmap-15.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ include "postgresql15.configurationTemplate" . }}
name: {{ include "postgresql15.parameterTemplate" . }}
labels:
{{- include "postgresql.labels" . | nindent 4 }}
annotations:
Expand Down
2 changes: 1 addition & 1 deletion addons/postgresql/templates/configmap-16.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ include "postgresql16.configurationTemplate" . }}
name: {{ include "postgresql16.parameterTemplate" . }}
labels:
{{- include "postgresql.labels" . | nindent 4 }}
annotations:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
{{- $cc := .Files.Get "config/pg12-config-effect-scope.yaml" | fromYaml }}
apiVersion: apps.kubeblocks.io/v1beta1
kind: ConfigConstraint
apiVersion: parameters.kubeblocks.io/v1alpha1
kind: ParametersDefinition
metadata:
name: {{ include "postgresql12.configConstraint" . }}
name: {{ include "postgresql12.parametersDefinition" . }}
labels:
{{- include "postgresql.labels" . | nindent 4 }}
annotations:
{{- include "postgresql.annotations" . | nindent 4 }}
spec:
fileName: postgresql.conf

reloadAction:
tplScriptTrigger:
sync: true
Expand Down Expand Up @@ -47,8 +49,4 @@ spec:
{{- range $params }}
- {{ . }}
{{- end }}
{{- end}}

## configuration file format
fileFormatConfig:
format: properties
{{- end}}
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
{{- $cc := .Files.Get "config/pg14-config-effect-scope.yaml" | fromYaml }}
apiVersion: apps.kubeblocks.io/v1beta1
kind: ConfigConstraint
apiVersion: parameters.kubeblocks.io/v1alpha1
kind: ParametersDefinition
metadata:
name: {{ include "postgresql14.configConstraint" . }}
name: {{ include "postgresql14.parametersDefinition" . }}
labels:
{{- include "postgresql.labels" . | nindent 4 }}
annotations:
{{- include "postgresql.annotations" . | nindent 4 }}
spec:
fileName: postgresql.conf

reloadAction:
tplScriptTrigger:
sync: true
Expand Down Expand Up @@ -47,10 +49,4 @@ spec:
{{- range $params }}
- {{ . }}
{{- end }}
{{- end}}



# configuration file format
fileFormatConfig:
format: properties
{{- end}}
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
{{- $cc := .Files.Get "config/pg14-config-effect-scope.yaml" | fromYaml }}
apiVersion: apps.kubeblocks.io/v1beta1
kind: ConfigConstraint
{{- $cc := .Files.Get "config/pg15-config-effect-scope.yaml" | fromYaml }}
apiVersion: parameters.kubeblocks.io/v1alpha1
kind: ParametersDefinition
metadata:
name: {{ include "postgresql15.configConstraint" . }}
name: {{ include "postgresql15.parametersDefinition" . }}
labels:
{{- include "postgresql.labels" . | nindent 4 }}
annotations:
{{- include "postgresql.annotations" . | nindent 4 }}
spec:
fileName: postgresql.conf

reloadAction:
tplScriptTrigger:
sync: true
Expand Down Expand Up @@ -47,10 +49,4 @@ spec:
{{- range $params }}
- {{ . }}
{{- end }}
{{- end}}



# configuration file format
fileFormatConfig:
format: properties
{{- end}}
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
{{- $cc := .Files.Get "config/pg14-config-effect-scope.yaml" | fromYaml }}
apiVersion: apps.kubeblocks.io/v1beta1
kind: ConfigConstraint
{{- $cc := .Files.Get "config/pg16-config-effect-scope.yaml" | fromYaml }}
apiVersion: parameters.kubeblocks.io/v1alpha1
kind: ParametersDefinition
metadata:
name: {{ include "postgresql16.configConstraint" . }}
name: {{ include "postgresql16.parametersDefinition" . }}
labels:
{{- include "postgresql.labels" . | nindent 4 }}
annotations:
{{- include "postgresql.annotations" . | nindent 4 }}
spec:
fileName: postgresql.conf

reloadAction:
tplScriptTrigger:
sync: true
Expand Down Expand Up @@ -47,10 +49,4 @@ spec:
{{- range $params }}
- {{ . }}
{{- end }}
{{- end}}



# configuration file format
fileFormatConfig:
format: properties
{{- end}}
Empty file.
18 changes: 18 additions & 0 deletions addons/postgresql/templates/pcr-12.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
apiVersion: parameters.kubeblocks.io/v1alpha1
kind: ParamConfigRenderer
metadata:
name: {{ include "postgresql12.pcr" . }}
labels:
{{- include "postgresql.labels" . | nindent 4 }}
spec:
componentDef: {{ include "postgresql12.compDefName" . }}
serviceVersion: {{ .Values.componentServiceVersion.postgresql12 }}
parametersDefs:
- {{ include "postgresql12.parametersDefinition" . }}

configs:
- name: postgresql.conf
fileFormatConfig:
format: properties
reRenderResourceTypes:
- vscale
18 changes: 18 additions & 0 deletions addons/postgresql/templates/pcr-14.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
apiVersion: parameters.kubeblocks.io/v1alpha1
kind: ParamConfigRenderer
metadata:
name: {{ include "postgresql14.pcr" . }}
labels:
{{- include "postgresql.labels" . | nindent 4 }}
spec:
componentDef: {{ include "postgresql14.compDefName" . }}
serviceVersion: {{ .Values.componentServiceVersion.postgresql14 }}
parametersDefs:
- {{ include "postgresql14.parametersDefinition" . }}

configs:
- name: postgresql.conf
fileFormatConfig:
format: properties
reRenderResourceTypes:
- vscale
Loading

0 comments on commit c6ecafa

Please sign in to comment.