apiVersion: v1
kind: Secret
metadata:
  name: {{ template "docker-registry.fullname" . }}-secret
  namespace: {{ .Values.namespace | default .Release.Namespace }}
  labels:
    app: {{ template "docker-registry.name" . }}
    chart: {{ .Chart.Name }}-{{ .Chart.Version }}
    heritage: {{ .Release.Service }}
    release: {{ .Release.Name }}
type: Opaque
data:
  {{- if .Values.secrets.htpasswd }}
  htpasswd: {{ .Values.secrets.htpasswd | b64enc }}
  {{- end }}
  {{- if .Values.secrets.haSharedSecret }}
  haSharedSecret: {{ .Values.secrets.haSharedSecret | b64enc | quote }}
  {{- else }}
  haSharedSecret: {{ randAlphaNum 16 | b64enc | quote }}
  {{- end }}
  
  {{- if eq .Values.storage "azure" }}
    {{- if and .Values.secrets.azure.accountName .Values.secrets.azure.accountKey .Values.secrets.azure.container }}
  azureAccountName: {{ .Values.secrets.azure.accountName | b64enc | quote }}
  azureAccountKey: {{ .Values.secrets.azure.accountKey | b64enc | quote }}
  azureContainer: {{ .Values.secrets.azure.container | b64enc | quote }}
    {{- end }}
  {{- else if eq .Values.storage "s3" }}
    {{- if and .Values.secrets.s3.secretKey .Values.secrets.s3.accessKey }}
  s3AccessKey: {{ .Values.secrets.s3.accessKey | b64enc | quote }}
  s3SecretKey: {{ .Values.secrets.s3.secretKey | b64enc | quote }}
    {{- end }}
  {{- else if eq .Values.storage "swift" }}
    {{- if and .Values.secrets.swift.username .Values.secrets.swift.password }}
  swiftUsername: {{ .Values.secrets.swift.username | b64enc | quote }}
  swiftPassword: {{ .Values.secrets.swift.password | b64enc | quote }}
    {{- end }}
  {{- end }}
  proxyUsername: {{ .Values.proxy.username | default "" | b64enc | quote }}
  proxyPassword: {{ .Values.proxy.password | default "" | b64enc | quote }}
