CHART NAME: {{ .Chart.Name }}
CHART VERSION: {{ .Chart.Version }}
APP VERSION: {{ .Chart.AppVersion }}

** Please be patient while the chart is being deployed **

MinIO&reg; can be accessed via port {{ .Values.service.port }} on the following DNS name from within your cluster:

   {{ include "common.names.fullname" . }}.{{ .Release.Namespace }}.svc.{{ .Values.clusterDomain }}

To get your credentials run:

   export ROOT_USER=$(kubectl get secret --namespace {{ .Release.Namespace }} {{ include "minio.secretName" . }} -o jsonpath="{.data.{{ include "minio.rootUserKey" . }}}" | base64 -d)
   export ROOT_PASSWORD=$(kubectl get secret --namespace {{ .Release.Namespace }} {{ include "minio.secretName" . }} -o jsonpath="{.data.{{ include "minio.rootPasswordKey" . }}}" | base64 -d)

To connect to your MinIO&reg; server using a client:

- Run a MinIO&reg; Client pod and append the desired command (e.g. 'admin info'):

   kubectl run --namespace {{ .Release.Namespace }} {{ include "common.names.fullname" . }}-client \
     --rm --tty -i --restart='Never' \
     --env MINIO_SERVER_ROOT_USER=$ROOT_USER \
     --env MINIO_SERVER_ROOT_PASSWORD=$ROOT_PASSWORD \
     --env MINIO_SERVER_HOST={{ include "common.names.fullname" . }} \
     {{- if and (.Values.networkPolicy.enabled) (not .Values.networkPolicy.allowExternal) }}
     --labels="{{ include "common.names.fullname" . }}-client=true" \
     {{- end }}
     --image {{ template "minio.clientImage" . }} -- admin info minio

{{- if and (.Values.networkPolicy.enabled) (not .Values.networkPolicy.allowExternal) }}

   NOTE: Since NetworkPolicy is enabled, only pods with label
   "{{ template "common.names.fullname" . }}-client=true" will be able to connect to MinIO&reg;.

{{- end }}
{{- if (not .Values.disableWebUI) }}

To access the MinIO&reg; web UI:

- Get the MinIO&reg; URL:

{{- if .Values.ingress.enabled }}

   You should be able to access your new MinIO&reg; web UI through

   {{ if .Values.ingress.tls }}https{{ else }}http{{ end }}://{{ .Values.ingress.hostname }}/minio/
{{- else if contains "LoadBalancer" .Values.service.type }}

   NOTE: It may take a few minutes for the LoadBalancer IP to be available.
         Watch the status with: 'kubectl get svc --namespace {{ .Release.Namespace }} -w {{ include "common.names.fullname" . }}'

   {{- $port:=.Values.service.ports.console | toString }}
   export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "common.names.fullname" . }} --template "{{ "{{ range (index .status.loadBalancer.ingress 0) }}{{ . }}{{ end }}" }}")
   echo "MinIO&reg; web URL: http://$SERVICE_IP{{- if ne $port "80" }}:{{ .Values.service.ports.console }}{{ end }}/minio"

{{- else if contains "ClusterIP"  .Values.service.type }}

   echo "MinIO&reg; web URL: http://127.0.0.1:{{ .Values.containerPorts.console }}/minio"
   kubectl port-forward --namespace {{ .Release.Namespace }} svc/{{ include "common.names.fullname" . }} {{ .Values.containerPorts.console }}:{{ .Values.service.ports.console }}

{{- else if contains "NodePort" .Values.service.type }}

   export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.names.fullname" . }})
   export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}")
   echo "MinIO&reg; web URL: http://$NODE_IP:$NODE_PORT/minio"

{{- end }}
{{- else }}

   WARN: MinIO&reg; Web UI is disabled.
{{- end }}

{{- include "common.warnings.rollingTag" .Values.image }}
{{- include "common.warnings.rollingTag" .Values.clientImage }}
{{- include "common.warnings.rollingTag" .Values.volumePermissions.image }}
{{- include "minio.validateValues" . }}
{{- include "common.warnings.resources" (dict "sections" (list "provisioning" "" "volumePermissions") "context" $) }}
{{- include "common.warnings.modifiedImages" (dict "images" (list .Values.image .Values.clientImage .Values.volumePermissions.image) "context" $) }}