github.com/1aal/kubeblocks@v0.0.0-20231107070852-e1c03e598921/deploy/postgresql/templates/clusterversion.yaml (about)

     1  {{- $cvName := "postgresql-14.7.2" -}}
     2  {{ if eq (include "postgresql.isClusterVersionEnabled" (dict "cvName" $cvName "values" .Values)) "true" }}
     3  apiVersion: apps.kubeblocks.io/v1alpha1
     4  kind: ClusterVersion
     5  metadata:
     6    # major version of the component defined in values.yaml
     7    name: {{ $cvName }}
     8    labels:
     9      {{- include "postgresql.labels" . | nindent 4 }}
    10  spec:
    11    clusterDefinitionRef: postgresql
    12    componentVersions:
    13    - componentDefRef: postgresql
    14      versionsContext:
    15        initContainers:
    16          - name: pg-init-container
    17            image: {{ .Values.image.registry | default "docker.io" }}/{{ .Values.image.repository }}:{{ .Values.image.tag }}
    18        containers:
    19        - name: postgresql
    20          image: {{ .Values.image.registry | default "docker.io" }}/{{ .Values.image.repository }}:{{ .Values.image.tag }}
    21        - name: pgbouncer
    22          image: {{ .Values.pgbouncer.image.registry | default "docker.io" }}/{{ .Values.pgbouncer.image.repository }}:{{ .Values.pgbouncer.image.tag }}
    23      systemAccountSpec:
    24        cmdExecutorConfig:
    25          image: {{ .Values.image.registry | default "docker.io" }}/{{ .Values.image.repository }}:{{ .Values.image.tag }}
    26      switchoverSpec:
    27        cmdExecutorConfig:
    28          image: {{ .Values.image.registry | default "docker.io" }}/{{ .Values.image.repository }}:{{ .Values.image.tag }}
    29  {{- end -}}
    30  
    31  {{- $cvName = "postgresql-12.14.1" -}}
    32  {{ if eq (include "postgresql.isClusterVersionEnabled" (dict "cvName" $cvName "values" .Values)) "true" }}
    33  ---
    34  apiVersion: apps.kubeblocks.io/v1alpha1
    35  kind: ClusterVersion
    36  metadata:
    37    name: {{ $cvName }}
    38    annotations:
    39      kubeblocks.io/is-default-cluster-version: "false"
    40    labels:
    41      {{- include "postgresql.labels" . | nindent 4 }}
    42  spec:
    43    clusterDefinitionRef: postgresql
    44    componentVersions:
    45      - componentDefRef: postgresql
    46        configSpecs:
    47          # name needs to consistent with the name of the configmap defined in clusterDefinition, and replace the templateRef with postgres v12.14.0 configmap
    48          - name: postgresql-configuration
    49            templateRef: postgresql12-configuration
    50            constraintRef: postgresql12-cc
    51            keys:
    52              - postgresql.conf
    53            namespace: {{ .Release.Namespace }}
    54            volumeName: postgresql-config
    55            defaultMode: 0444
    56          - name: postgresql-custom-metrics
    57            templateRef: postgresql12-custom-metrics
    58            namespace: {{ .Release.Namespace }}
    59            volumeName: postgresql-custom-metrics
    60            defaultMode: 0444
    61          - name: agamotto-configuration
    62            templateRef: postgresql-agamotto-configuration
    63            namespace: {{ .Release.Namespace }}
    64            volumeName: agamotto-configuration
    65            defaultMode: 0444
    66        versionsContext:
    67          initContainers:
    68            - name: pg-init-container
    69              image: {{ .Values.image.registry | default "docker.io" }}/{{ .Values.image.repository }}:12.14.1-pgvector-v0.5.0
    70          containers:
    71            - name: postgresql
    72              image: {{ .Values.image.registry | default "docker.io" }}/{{ .Values.image.repository }}:12.14.1-pgvector-v0.5.0
    73            - name: pgbouncer
    74              image: {{ .Values.pgbouncer.image.registry | default "docker.io" }}/{{ .Values.pgbouncer.image.repository }}:{{ .Values.pgbouncer.image.tag }}
    75        systemAccountSpec:
    76          cmdExecutorConfig:
    77            image: {{ .Values.image.registry | default "docker.io" }}/{{ .Values.image.repository }}:12.14.1-pgvector-v0.5.0
    78        switchoverSpec:
    79          cmdExecutorConfig:
    80            image: {{ .Values.image.registry | default "docker.io" }}/{{ .Values.image.repository }}:12.14.1-pgvector-v0.5.0
    81  {{- end -}}
    82  
    83  {{- $cvName = "postgresql-12.15.0" -}}
    84  {{ if eq (include "postgresql.isClusterVersionEnabled" (dict "cvName" $cvName "values" .Values)) "true" }}
    85  ---
    86  apiVersion: apps.kubeblocks.io/v1alpha1
    87  kind: ClusterVersion
    88  metadata:
    89    name: {{ $cvName}}
    90    annotations:
    91      kubeblocks.io/is-default-cluster-version: "false"
    92    labels:
    93      {{- include "postgresql.labels" . | nindent 4 }}
    94  spec:
    95    clusterDefinitionRef: postgresql
    96    componentVersions:
    97      - componentDefRef: postgresql
    98        configSpecs:
    99          # name needs to consistent with the name of the configmap defined in clusterDefinition, and replace the templateRef with postgres v12.14.0 configmap
   100          - name: postgresql-configuration
   101            templateRef: postgresql12-configuration
   102            constraintRef: postgresql12-cc
   103            keys:
   104              - postgresql.conf
   105            namespace: {{ .Release.Namespace }}
   106            volumeName: postgresql-config
   107            defaultMode: 0444
   108          - name: postgresql-custom-metrics
   109            templateRef: postgresql12-custom-metrics
   110            namespace: {{ .Release.Namespace }}
   111            volumeName: postgresql-custom-metrics
   112            defaultMode: 0444
   113        versionsContext:
   114          initContainers:
   115            - name: pg-init-container
   116              image: {{ .Values.image.registry | default "docker.io" }}/{{ .Values.image.repository }}:12.15.0-pgvector-v0.5.0
   117          containers:
   118            - name: postgresql
   119              image: {{ .Values.image.registry | default "docker.io" }}/{{ .Values.image.repository }}:12.15.0-pgvector-v0.5.0
   120            - name: pgbouncer
   121              image: {{ .Values.pgbouncer.image.registry | default "docker.io" }}/{{ .Values.pgbouncer.image.repository }}:{{ .Values.pgbouncer.image.tag }}
   122        systemAccountSpec:
   123          cmdExecutorConfig:
   124            image: {{ .Values.image.registry | default "docker.io" }}/{{ .Values.image.repository }}:12.15.0-pgvector-v0.5.0
   125        switchoverSpec:
   126          cmdExecutorConfig:
   127            image: {{ .Values.image.registry | default "docker.io" }}/{{ .Values.image.repository }}:12.15.0-pgvector-v0.5.0
   128  {{- end -}}
   129  
   130  {{- $cvName = "postgresql-14.8.0" -}}
   131  {{ if eq (include "postgresql.isClusterVersionEnabled" (dict "cvName" $cvName "values" .Values)) "true" }}
   132  ---
   133  apiVersion: apps.kubeblocks.io/v1alpha1
   134  kind: ClusterVersion
   135  metadata:
   136    name: {{ $cvName }}
   137    annotations:
   138      kubeblocks.io/is-default-cluster-version: "true"
   139    labels:
   140      {{- include "postgresql.labels" . | nindent 4 }}
   141  spec:
   142    clusterDefinitionRef: postgresql
   143    componentVersions:
   144      - componentDefRef: postgresql
   145        versionsContext:
   146          initContainers:
   147            - name: pg-init-container
   148              image: {{ .Values.image.registry | default "docker.io" }}/{{ .Values.image.repository }}:14.8.0-pgvector-v0.5.0
   149          containers:
   150            - name: postgresql
   151              image: {{ .Values.image.registry | default "docker.io" }}/{{ .Values.image.repository }}:14.8.0-pgvector-v0.5.0
   152            - name: pgbouncer
   153              image: {{ .Values.pgbouncer.image.registry | default "docker.io" }}/{{ .Values.pgbouncer.image.repository }}:{{ .Values.pgbouncer.image.tag }}
   154        systemAccountSpec:
   155          cmdExecutorConfig:
   156            image: {{ .Values.image.registry | default "docker.io" }}/{{ .Values.image.repository }}:14.8.0-pgvector-v0.5.0
   157        switchoverSpec:
   158          cmdExecutorConfig:
   159            image: {{ .Values.image.registry | default "docker.io" }}/{{ .Values.image.repository }}:14.8.0-pgvector-v0.5.0
   160  {{- end -}}
   161  
   162  {{- $cvName = "postgresql-12.14.0" -}}
   163  {{ if eq (include "postgresql.isClusterVersionEnabled" (dict "cvName" $cvName "values" .Values)) "true" }}
   164  ---
   165  # Adding backward compatibility for clusterVersion 12.14.0, which will be removed in subsequent iterative versions.
   166  apiVersion: apps.kubeblocks.io/v1alpha1
   167  kind: ClusterVersion
   168  metadata:
   169    name: {{ $cvName }}
   170    annotations:
   171      kubeblocks.io/is-default-cluster-version: "false"
   172    labels:
   173      {{- include "postgresql.labels" . | nindent 4 }}
   174  spec:
   175    clusterDefinitionRef: postgresql
   176    componentVersions:
   177      - componentDefRef: postgresql
   178        configSpecs:
   179          - name: postgresql-configuration
   180            templateRef: postgresql12-configuration
   181            constraintRef: postgresql12-cc
   182            keys:
   183              - postgresql.conf
   184            namespace: {{ .Release.Namespace }}
   185            volumeName: postgresql-config
   186            defaultMode: 0777
   187          - name: postgresql-custom-metrics
   188            templateRef: postgresql12-custom-metrics
   189            namespace: {{ .Release.Namespace }}
   190            volumeName: postgresql-custom-metrics
   191            defaultMode: 0777
   192          - name: agamotto-configuration
   193            templateRef: postgresql-agamotto-configuration
   194            namespace: {{ .Release.Namespace }}
   195            volumeName: agamotto-configuration
   196            defaultMode: 0777
   197        versionsContext:
   198          initContainers:
   199            - name: pg-init-container
   200              image: {{ .Values.image.registry | default "docker.io" }}/{{ .Values.image.repository }}:12.14.0-pgvector-v0.5.0
   201          containers:
   202            - name: postgresql
   203              image: {{ .Values.image.registry | default "docker.io" }}/{{ .Values.image.repository }}:12.14.0-pgvector-v0.5.0
   204            - name: pgbouncer
   205              image: {{ .Values.pgbouncer.image.registry | default "docker.io" }}/{{ .Values.pgbouncer.image.repository }}:{{ .Values.pgbouncer.image.tag }}
   206        systemAccountSpec:
   207          cmdExecutorConfig:
   208            image: {{ .Values.image.registry | default "docker.io" }}/{{ .Values.image.repository }}:12.14.0-pgvector-v0.5.0
   209        switchoverSpec:
   210          cmdExecutorConfig:
   211            image: {{ .Values.image.registry | default "docker.io" }}/{{ .Values.image.repository }}:12.14.0-pgvector-v0.5.0
   212    {{- end -}}