You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
145 lines
5.7 KiB
145 lines
5.7 KiB
3 years ago
|
{{- if .Values.discourse.enabled }}
|
||
|
{{- $edemoUrl := .Values.edemocracia.hostname -}}
|
||
|
apiVersion: apps/v1
|
||
|
kind: Deployment
|
||
|
metadata:
|
||
|
name: {{ include "edemocracia.fullname" . }}-discourse
|
||
|
labels:
|
||
|
{{- include "edemocracia.labels" . | nindent 4 }}
|
||
|
io.kompose.service: {{ include "edemocracia.fullname" . }}-discourse
|
||
|
spec:
|
||
|
selector:
|
||
|
matchLabels:
|
||
|
{{- include "edemocracia.selectorLabels" . | nindent 6 }}
|
||
|
app.kubernetes.io/component: discourse
|
||
|
io.kompose.service: {{ include "edemocracia.fullname" . }}-discourse
|
||
|
strategy:
|
||
|
type: Recreate
|
||
|
template:
|
||
|
metadata:
|
||
|
labels:
|
||
|
{{- include "edemocracia.selectorLabels" . | nindent 8 }}
|
||
|
app.kubernetes.io/component: discourse
|
||
|
io.kompose.service: {{ include "edemocracia.fullname" . }}-discourse
|
||
|
spec:
|
||
|
{{- with .Values.imagePullSecrets }}
|
||
|
imagePullSecrets:
|
||
|
{{- toYaml . | nindent 8 }}
|
||
|
{{- end }}
|
||
|
initContainers:
|
||
|
- image: "{{ .Values.discourse.image.repository }}:{{ .Values.discourse.image.tag }}"
|
||
|
name: {{ include "edemocracia.fullname" . }}-discourse-cpimgs
|
||
|
command:
|
||
|
- "cp"
|
||
|
- "-au"
|
||
|
- "/var/www/discourse/public/images/."
|
||
|
- "/publicimgs/"
|
||
|
volumeMounts:
|
||
|
- mountPath: /publicimgs/
|
||
|
subPath: images
|
||
|
name: {{ include "edemocracia.fullname" . }}-discourse
|
||
|
containers:
|
||
|
- args:
|
||
|
- ./start-web.sh
|
||
|
env:
|
||
|
- name: ADMIN_EMAIL
|
||
|
value: {{ .Values.edemocracia.admin.email | quote }}
|
||
|
- name: ADMIN_PASSWORD
|
||
|
value: {{ .Values.edemocracia.admin.password | quote }}
|
||
|
- name: ADMIN_USERNAME
|
||
|
value: admin
|
||
|
- name: DISCOURSE_CONTACT_EMAIL
|
||
|
value: {{ .Values.edemocracia.admin.email | quote }}
|
||
|
- name: DISCOURSE_CONTACT_URL
|
||
|
value: {{ $edemoUrl }}
|
||
|
- name: DISCOURSE_DB_HOST
|
||
|
value: {{ (include "postgresql.fullname" .) }}
|
||
|
- name: DISCOURSE_DB_NAME
|
||
|
value: discourse
|
||
|
- name: DISCOURSE_DB_PASSWORD
|
||
|
value: {{ .Values.postgresql.postgresqlPassword | quote }}
|
||
|
- name: DISCOURSE_DB_PORT
|
||
|
value: "5432"
|
||
|
- name: DISCOURSE_DB_USERNAME
|
||
|
value: {{ .Values.postgresql.postgresqlUsername | quote}}
|
||
|
- name: DISCOURSE_DEVELOPER_EMAILS
|
||
|
- name: DISCOURSE_FORCE_HOSTNAME
|
||
|
value: {{ $edemoUrl }}\/expressao
|
||
|
- name: DISCOURSE_HOSTNAME
|
||
|
value: {{ $edemoUrl }}\/expressao
|
||
|
- name: DISCOURSE_NOTIFICATION_EMAIL
|
||
|
value: {{ .Values.edemocracia.admin.email }}
|
||
|
- name: DISCOURSE_REDIS_HOST
|
||
|
value: {{ (include "redis.fullname" .) }}-master
|
||
|
- name: DISCOURSE_REDIS_PORT
|
||
|
value: "6379"
|
||
|
- name: DISCOURSE_RELATIVE_URL_ROOT
|
||
|
value: /expressao
|
||
|
- name: DISCOURSE_SMTP_ADDRESS
|
||
|
value: {{ .Values.smtp.host | quote }}
|
||
|
- name: DISCOURSE_SMTP_PASSWORD
|
||
|
value: {{ .Values.smtp.password | quote }}
|
||
|
- name: DISCOURSE_SMTP_PORT
|
||
|
value: {{ .Values.smtp.port | quote }}
|
||
|
- name: DISCOURSE_SMTP_USER_NAME
|
||
|
value: {{ .Values.smtp.username | quote }}
|
||
|
- name: DISCOURSE_SSO_SECRET
|
||
|
value: {{ .Values.discourse.sso.secret | quote }}
|
||
|
- name: DISCOURSE_SSO_URL
|
||
|
value: "https://{{ $edemoUrl }}"
|
||
|
- name: RAILS_ENV
|
||
|
value: production
|
||
|
image: {{.Values.discourse.image.repository}}:{{ .Values.discourse.image.tag }}
|
||
|
imagePullPolicy: {{ .Values.discourse.image.pullPolicy }}
|
||
|
name: {{ include "edemocracia.fullname" . }}-discourse
|
||
|
ports:
|
||
|
- containerPort: 8080
|
||
|
resources:
|
||
|
{{- toYaml .Values.discourse.resources | nindent 12 }}
|
||
|
volumeMounts:
|
||
|
- mountPath: /var/www/discourse/public/assets/
|
||
|
name: {{ include "edemocracia.fullname" . }}-discourse
|
||
|
subPath: assets
|
||
|
- mountPath: /var/www/discourse/public/javascripts/
|
||
|
name: {{ include "edemocracia.fullname" . }}-discourse
|
||
|
subPath: javascripts
|
||
|
- mountPath: /var/www/discourse/public/images/
|
||
|
name: {{ include "edemocracia.fullname" . }}-discourse
|
||
|
subPath: images
|
||
|
- mountPath: /var/www/discourse/tmp/stylesheet-cache/
|
||
|
name: {{ include "edemocracia.fullname" . }}-discourse
|
||
|
subPath: stylesheet-cache
|
||
|
restartPolicy: Always
|
||
|
serviceAccountName: ""
|
||
|
volumes:
|
||
|
- name: {{ include "edemocracia.fullname" . }}-discourse
|
||
|
persistentVolumeClaim:
|
||
|
claimName: {{ include "edemocracia.fullname" . }}-discourse
|
||
|
{{- with .Values.nodeSelector }}
|
||
|
nodeSelector:
|
||
|
{{- toYaml . | nindent 8 }}
|
||
|
{{- end }}
|
||
|
affinity:
|
||
|
podAffinity:
|
||
|
requiredDuringSchedulingIgnoredDuringExecution:
|
||
|
- labelSelector:
|
||
|
matchExpressions:
|
||
|
- key: app.kubernetes.io/name
|
||
|
operator: In
|
||
|
values:
|
||
|
- {{ include "edemocracia.name" . }}
|
||
|
- key: app.kubernetes.io/instance
|
||
|
operator: In
|
||
|
values:
|
||
|
- {{ .Release.Name }}
|
||
|
- key: app.kubernetes.io/component
|
||
|
operator: In
|
||
|
values:
|
||
|
- edemocracia
|
||
|
topologyKey: kubernetes.io/hostname
|
||
|
{{- with .Values.tolerations }}
|
||
|
tolerations:
|
||
|
{{- toYaml . | nindent 8 }}
|
||
|
{{- end }}
|
||
|
{{- end }}
|