apiVersion: pingcap.com/v1
kind: TidbCluster
metadata:
  namespace: {{ .Release.Namespace }}
  name: {{ .Values.clusterName }}
spec:
  pvReclaimPolicy: {{ .Values.pvReclaimPolicy }}
  localtime: {{ .Values.localtime }}
  services:
{{ toYaml .Values.services | indent 4 }}
  pd:
    replicas: {{ .Values.pd.replicas }}
    image: {{ .Values.pd.image }}
  {{- if .Values.pd.storageClassName }}
    storageClassName: {{ .Values.pd.storageClassName }}
  {{- end }}
  {{- if .Values.pd.resources }}
{{ toYaml .Values.pd.resources | indent 4 }}
  {{- end }}
  {{- if .Values.pd.nodeSelector }}
    nodeSelector:
{{ toYaml .Values.pd.nodeSelector | indent 6 }}
  {{- end }}
    nodeSelectorRequired: {{ .Values.nodeSelectorRequired | default true }}
  tikv:
    replicas: {{ .Values.tikv.replicas }}
    image: {{ .Values.tikv.image }}
  {{- if .Values.tikv.storageClassName }}
    storageClassName: {{ .Values.tikv.storageClassName }}
  {{- end }}
  {{- if .Values.tikv.resources }}
{{ toYaml .Values.tikv.resources | indent 4 }}
  {{- end }}
  {{- if .Values.tikv.nodeSelector }}
    nodeSelector:
{{ toYaml .Values.tikv.nodeSelector | indent 6 }}
  {{- end }}
    nodeSelectorRequired: {{ .Values.nodeSelectorRequired | default true }}
  tidb:
    replicas: {{ .Values.tidb.replicas }}
    image: {{ .Values.tidb.image }}
  {{- if .Values.tidb.resources }}
{{ toYaml .Values.tidb.resources | indent 4 }}
  {{- end }}
  {{- if .Values.tidb.nodeSelector }}
    nodeSelector:
{{ toYaml .Values.tidb.nodeSelector | indent 6 }}
  {{- end }}
    nodeSelectorRequired: {{ .Values.nodeSelectorRequired | default true }}
