apiVersion: apps/v1 kind: Deployment metadata: name: {{ template "chronograf.fullname" . }} labels: app: {{ template "chronograf.fullname" . }} chart: "{{ .Chart.Name }}-{{ .Chart.Version }}" release: "{{ .Release.Name }}" heritage: "{{ .Release.Service }}" spec: replicas: {{ .Values.service.replicas }} selector: matchLabels: app: {{ template "chronograf.fullname" . }} template: metadata: labels: app: {{ template "chronograf.fullname" . }} spec: containers: - name: {{ .Chart.Name }} image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" imagePullPolicy: {{ .Values.image.pullPolicy }} env: {{- range $key, $value := .Values.env }} - name: "{{ $key }}" value: "{{ $value }}" {{- end }} {{- if .Values.oauth.enabled }} - name: TOKEN_SECRET valueFrom: secretKeyRef: name: {{ template "chronograf.fullname" . }} key: token_secret {{- if .Values.oauth.use_id_token }} - name: USE_ID_TOKEN value: "true" - name: JWKS_URL valueFrom: secretKeyRef: name: {{ template "chronograf.fullname" . }} key: jwks_url {{- end }} {{- if .Values.oauth.github.enabled }} - name: GH_CLIENT_ID valueFrom: secretKeyRef: name: {{ template "chronograf.fullname" . }} key: gh_client_id - name: GH_CLIENT_SECRET valueFrom: secretKeyRef: name: {{ template "chronograf.fullname" . }} key: gh_client_secret - name: GH_ORGS valueFrom: secretKeyRef: name: {{ template "chronograf.fullname" . }} key: gh_orgs {{- end }} {{- if .Values.oauth.heroku.enabled }} - name: HEROKU_CLIENT_ID valueFrom: secretKeyRef: name: {{ template "chronograf.fullname" . }} key: he_client_id - name: HEROKU_CLIENT_SECRET valueFrom: secretKeyRef: name: {{ template "chronograf.fullname" . }} key: he_client_secret - name: HEROKU_ORGS valueFrom: secretKeyRef: name: {{ template "chronograf.fullname" . }} key: he_orgs {{- end }} {{- if .Values.oauth.google.enabled }} - name: GOOGLE_CLIENT_ID valueFrom: secretKeyRef: name: {{ template "chronograf.fullname" . }} key: go_client_id - name: GOOGLE_CLIENT_SECRET valueFrom: secretKeyRef: name: {{ template "chronograf.fullname" . }} key: go_client_secret - name: GOOGLE_DOMAINS valueFrom: secretKeyRef: name: {{ template "chronograf.fullname" . }} key: go_domains - name: PUBLIC_URL valueFrom: secretKeyRef: name: {{ template "chronograf.fullname" . }} key: go_public_url {{- end }} {{- if .Values.oauth.generic.enabled }} {{- if .Values.oauth.generic.name }} - name: GENERIC_NAME value: {{ quote .Values.oauth.generic.name }} {{- end }} {{- if .Values.oauth.generic.domains }} - name: GENERIC_DOMAINS value: {{ quote .Values.oauth.generic.domains }} {{- end }} - name: GENERIC_CLIENT_ID valueFrom: secretKeyRef: name: {{ template "chronograf.fullname" . }} key: gen_client_id - name: GENERIC_CLIENT_SECRET valueFrom: secretKeyRef: name: {{ template "chronograf.fullname" . }} key: gen_client_secret - name: GENERIC_API_KEY valueFrom: secretKeyRef: name: {{ template "chronograf.fullname" . }} key: gen_api_key - name: GENERIC_SCOPES valueFrom: secretKeyRef: name: {{ template "chronograf.fullname" . }} key: gen_scopes - name: PUBLIC_URL valueFrom: secretKeyRef: name: {{ template "chronograf.fullname" . }} key: gen_public_url - name: GENERIC_AUTH_URL valueFrom: secretKeyRef: name: {{ template "chronograf.fullname" . }} key: gen_auth_url - name: GENERIC_TOKEN_URL valueFrom: secretKeyRef: name: {{ template "chronograf.fullname" . }} key: gen_token_url - name: GENERIC_API_URL valueFrom: secretKeyRef: name: {{ template "chronograf.fullname" . }} key: gen_api_url {{- end }} {{- end }} {{- if .Values.envFromSecret }} envFrom: - secretRef: name: {{ .Values.envFromSecret }} {{- end }} ports: - containerPort: 8888 name: api livenessProbe: httpGet: path: /ping port: api readinessProbe: httpGet: path: /ping port: api volumeMounts: - name: data mountPath: /var/lib/chronograf resources: {{ toYaml .Values.resources | indent 10 }} {{- with .Values.nodeSelector }} nodeSelector: {{ toYaml . | indent 8 }} {{- end }} {{- with .Values.affinity }} affinity: {{ toYaml . | indent 8 }} {{- end }} {{- with .Values.tolerations }} tolerations: {{ toYaml . | indent 8 }} {{- end }} volumes: - name: data {{- if .Values.persistence.enabled }} persistentVolumeClaim: claimName: {{ template "chronograf.fullname" . }} {{ else }} emptyDir: {} {{ end }}