From 145426cb4175d067830671cdcc3a780cf82d1a79 Mon Sep 17 00:00:00 2001 From: Tomas Pizarro Date: Wed, 4 Apr 2018 14:08:27 +0200 Subject: [PATCH] [stable/parse] Refactor image property in values.yaml (#4653) * [stable/parse] Refactor image properties in values.yaml * Use rolling tag and refactor pullSecrets * Fix lint issue * Update Chart.yaml --- stable/parse/Chart.yaml | 2 +- stable/parse/README.md | 58 ++++++++++--------- .../parse/templates/dashboard-deployment.yaml | 10 +++- stable/parse/templates/server-deployment.yaml | 10 +++- stable/parse/values.yaml | 42 ++++++++++---- 5 files changed, 79 insertions(+), 43 deletions(-) diff --git a/stable/parse/Chart.yaml b/stable/parse/Chart.yaml index 556113c6ee..193a72c159 100644 --- a/stable/parse/Chart.yaml +++ b/stable/parse/Chart.yaml @@ -1,5 +1,5 @@ name: parse -version: 0.3.10 +version: 1.0.0 appVersion: 2.7.4 description: Parse is a platform that enables users to add a scalable and powerful backend to launch a full-featured app for iOS, Android, JavaScript, Windows, Unity, and more. keywords: diff --git a/stable/parse/README.md b/stable/parse/README.md index 286da4ccbe..e47a8205d3 100644 --- a/stable/parse/README.md +++ b/stable/parse/README.md @@ -43,32 +43,38 @@ The command removes all the Kubernetes components associated with the chart and The following table lists the configurable parameters of the Parse chart and their default values. -| Parameter | Description | Default | -|------------------------------------|----------------------------------------|---------------------------------------------| -| `serviceType` | Kubernetes Service type | `LoadBalancer` | -| `loadBalancerIP` | `loadBalancerIP` for the Parse Service | `nil` | -| `server.image` | Parse server image | `bitnami/parse:{VERSION}` | -| `server.imagePullPolicy` | Parse server image pull policy | `IfNotPresent` | -| `server.port` | Parse server server port | `1337` | -| `server.mountPath` | Parse server API mount path | `/parse` | -| `server.appId` | Parse server App Id | `myappID` | -| `server.masterKey` | Parse server Master Key | `random 10 character alphanumeric string` | -| `server.resources` | CPU/Memory resource requests/limits | Memory: `512Mi`, CPU: `300m` | -| `dashboard.enabled` | Enable parse dashboard | `true` | -| `dashboard.image` | Dashboard image | `bitnami/parse-dashboard:{VERSION}` | -| `dashboard.imagePullPolicy` | Dashboard image pull policy | `IfNotPresent` | -| `dashboard.username` | Dashboard username | `user` | -| `dashboard.password` | Dashboard user password | `random 10 character alphanumeric string` | -| `dashboard.appName` | Dashboard application name | `MyDashboard` | -| `dashboard.resources` | CPU/Memory resource requests/limits | Memory: `512Mi`, CPU: `300m` | -| `persistence.enabled` | Enable Parse persistence using PVC | `true` | -| `persistence.storageClass` | PVC Storage Class for Parse volume | `nil` (uses alpha storage class annotation) | -| `persistence.accessMode` | PVC Access Mode for Parse volume | `ReadWriteOnce` | -| `persistence.size` | PVC Storage Request for Parse volume | `8Gi` | -| `mongodb.persistence.enabled` | Enable MongoDB persistence using PVC | `true` | -| `mongodb.persistence.storageClass` | PVC Storage Class for MongoDB volume | `nil` (uses alpha storage class annotation) | -| `mongodb.persistence.accessMode` | PVC Access Mode for MongoDB volume | `ReadWriteOnce` | -| `mongodb.persistence.size` | PVC Storage Request for MongoDB volume | `8Gi` | +| Parameter | Description | Default | +|------------------------------------|----------------------------------------|-------------------------------------------------------- | +| `serviceType` | Kubernetes Service type | `LoadBalancer` | +| `loadBalancerIP` | `loadBalancerIP` for the Parse Service | `nil` | +| `server.image.registry` | Parse image registry | `docker.io` | +| `server.image.repository` | Parse image name | `bitnami/parse` | +| `server.image.tag` | Parse image tag | `{VERSION}` | +| `server.image.pullPolicy` | Image pull policy | `Always` if `imageTag` is `latest`, else `IfNotPresent` | +| `server.image.pullSecrets` | Specify image pull secrets | `nil` | +| `server.port` | Parse server server port | `1337` | +| `server.mountPath` | Parse server API mount path | `/parse` | +| `server.appId` | Parse server App Id | `myappID` | +| `server.masterKey` | Parse server Master Key | `random 10 character alphanumeric string` | +| `server.resources` | CPU/Memory resource requests/limits | Memory: `512Mi`, CPU: `300m` | +| `dashboard.enabled` | Enable parse dashboard | `true` | +| `dashboard.image.registry` | Dashboard image registry | `docker.io` | +| `dashboard.image.repository` | Dashboard image name | `bitnami/parse-dashboard` | +| `dashboard.image.tag` | Dashboard image tag | `{VERSION}` | +| `dashboard.image.pullPolicy` | Image pull policy | `Always` if `imageTag` is `latest`, else `IfNotPresent` | +| `dashboard.image.pullSecrets` | Specify image pull secrets | `nil` | +| `dashboard.username` | Dashboard username | `user` | +| `dashboard.password` | Dashboard user password | `random 10 character alphanumeric string` | +| `dashboard.appName` | Dashboard application name | `MyDashboard` | +| `dashboard.resources` | CPU/Memory resource requests/limits | Memory: `512Mi`, CPU: `300m` | +| `persistence.enabled` | Enable Parse persistence using PVC | `true` | +| `persistence.storageClass` | PVC Storage Class for Parse volume | `nil` (uses alpha storage class annotation) | +| `persistence.accessMode` | PVC Access Mode for Parse volume | `ReadWriteOnce` | +| `persistence.size` | PVC Storage Request for Parse volume | `8Gi` | +| `mongodb.persistence.enabled` | Enable MongoDB persistence using PVC | `true` | +| `mongodb.persistence.storageClass` | PVC Storage Class for MongoDB volume | `nil` (uses alpha storage class annotation) | +| `mongodb.persistence.accessMode` | PVC Access Mode for MongoDB volume | `ReadWriteOnce` | +| `mongodb.persistence.size` | PVC Storage Request for MongoDB volume | `8Gi` | The above parameters map to the env variables defined in [bitnami/parse](http://github.com/bitnami/bitnami-docker-parse). For more information please refer to the [bitnami/parse](http://github.com/bitnami/bitnami-docker-parse) image documentation. diff --git a/stable/parse/templates/dashboard-deployment.yaml b/stable/parse/templates/dashboard-deployment.yaml index 7d719a724c..6df1eb4196 100644 --- a/stable/parse/templates/dashboard-deployment.yaml +++ b/stable/parse/templates/dashboard-deployment.yaml @@ -18,10 +18,16 @@ spec: release: "{{ .Release.Name }}" component: "dashboard" spec: + {{- if .Values.dashboard.image.pullSecrets }} + imagePullSecrets: + {{- range .Values.dashboard.image.pullSecrets }} + - name: {{ . }} + {{- end}} + {{- end }} containers: - name: {{ template "parse.fullname" . }} - image: "{{ .Values.dashboard.image }}" - imagePullPolicy: {{ .Values.dashboard.imagePullPolicy | quote }} + image: "{{ .Values.dashboard.image.registry }}/{{ .Values.dashboard.image.repository }}:{{ .Values.dashboard.image.tag }}" + imagePullPolicy: {{ .Values.dashboard.image.pullPolicy | quote }} env: - name: PARSE_DASHBOARD_USER value: {{ .Values.dashboard.username }} diff --git a/stable/parse/templates/server-deployment.yaml b/stable/parse/templates/server-deployment.yaml index 63de2f25d2..2c6fc3f9e6 100644 --- a/stable/parse/templates/server-deployment.yaml +++ b/stable/parse/templates/server-deployment.yaml @@ -17,10 +17,16 @@ spec: release: "{{ .Release.Name }}" component: "server" spec: + {{- if .Values.server.image.pullSecrets }} + imagePullSecrets: + {{- range .Values.server.image.pullSecrets }} + - name: {{ . }} + {{- end}} + {{- end }} containers: - name: {{ template "parse.fullname" . }} - image: "{{ .Values.server.image }}" - imagePullPolicy: {{ .Values.server.imagePullPolicy | quote }} + image: "{{ .Values.server.image.registry }}/{{ .Values.server.image.repository }}:{{ .Values.server.image.tag }}" + imagePullPolicy: {{ .Values.server.image.pullPolicy | quote }} env: - name: PARSE_HOST value: "0.0.0.0" diff --git a/stable/parse/values.yaml b/stable/parse/values.yaml index c9a486245b..074ba6d6b0 100644 --- a/stable/parse/values.yaml +++ b/stable/parse/values.yaml @@ -12,12 +12,21 @@ server: ## Bitnami Parse image version ## ref: https://hub.docker.com/r/bitnami/parse/tags/ ## - image: bitnami/parse:2.7.4-r0 - - ## Specify a imagePullPolicy - ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images - ## - imagePullPolicy: IfNotPresent + image: + registry: docker.io + repository: bitnami/parse + tag: 2.7.4 + ## Specify a imagePullPolicy + ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' + ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images + ## + pullPolicy: IfNotPresent + ## Optionally specify an array of imagePullSecrets. + ## Secrets must be manually created in the namespace. + ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ + ## + # pullSecrets: + # - myRegistrKeySecretName ## Parse Server Port ## ref: https://github.com/bitnami/bitnami-docker-parse#configuration @@ -55,12 +64,21 @@ dashboard: ## Bitnami Parse Dashboard image version ## ref: https://hub.docker.com/r/bitnami/parse-dashboard/tags/ ## - image: bitnami/parse-dashboard:1.1.2-r2 - - ## Specify a imagePullPolicy - ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images - ## - imagePullPolicy: IfNotPresent + image: + registry: docker.io + repository: bitnami/parse-dashboard + tag: 1.1.2 + ## Specify a imagePullPolicy + ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' + ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images + ## + pullPolicy: IfNotPresent + ## Optionally specify an array of imagePullSecrets. + ## Secrets must be manually created in the namespace. + ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ + ## + # pullSecrets: + # - myRegistrKeySecretName ## Parse Dashboard application username ## ref: https://github.com/bitnami/bitnami-docker-parse-dashboard#configuration