--- {{- if and .Values.imagePullSecrets .Values.imagePullSecrets.repository .Values.imagePullSecrets.username .Values.imagePullSecrets.password }} apiVersion: v1 data: .dockerconfigjson: {{ printf "{\"auths\":{\"%s\":{\"username\":\"%s\",\"password\":\"%s\",\"email\":\"%s\",\"auth\":\"%s\"}}}" .Values.imagePullSecrets.repository .Values.imagePullSecrets.username .Values.imagePullSecrets.password .Values.imagePullSecrets.email (printf "%s:%s" .Values.imagePullSecrets.username .Values.imagePullSecrets.password | b64enc) | b64enc }} kind: Secret metadata: name: kubeslice-ui-image-pull-secret namespace: kubeslice-controller type: kubernetes.io/dockerconfigjson {{- end }} --- apiVersion: v1 kind: Service metadata: labels: app: kubeslice-ui name: kubeslice-ui namespace: kubeslice-controller spec: ports: - name: http port: 80 protocol: TCP targetPort: 3000 selector: app: kubeslice-ui type: ClusterIP --- apiVersion: apps/v1 kind: Deployment metadata: name: kubeslice-ui namespace: kubeslice-controller spec: replicas: 1 selector: matchLabels: app: kubeslice-ui template: metadata: labels: app: kubeslice-ui spec: containers: - image: '{{ .Values.kubeslice.ui.image }}:{{ .Values.kubeslice.ui.tag }}' imagePullPolicy: '{{ .Values.kubeslice.ui.pullPolicy }}' name: kubeslice-ui ports: - containerPort: 3000 {{- if and .Values.imagePullSecrets .Values.imagePullSecrets.repository .Values.imagePullSecrets.username .Values.imagePullSecrets.password }} imagePullSecrets: - name: kubeslice-ui-image-pull-secret {{- end }} serviceAccountName: kubeslice-ui serviceAccount: kubeslice-ui