helm-charts/mastodon/templates/job-chewy-upgrade.yaml

101 lines
3.8 KiB
YAML
Raw Permalink Normal View History

{{- if .Values.elasticsearch.enabled -}}
2021-02-09 23:28:44 +00:00
apiVersion: batch/v1
kind: Job
metadata:
name: {{ include "mastodon.fullname" . }}-chewy-upgrade
labels:
{{- include "mastodon.labels" . | nindent 4 }}
annotations:
"helm.sh/hook": post-install
"helm.sh/hook-delete-policy": before-hook-creation,hook-succeeded
"helm.sh/hook-weight": "-1"
spec:
template:
metadata:
name: {{ include "mastodon.fullname" . }}-chewy-upgrade
{{- with .Values.jobAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
2021-02-09 23:28:44 +00:00
spec:
restartPolicy: Never
2021-08-09 14:16:20 +00:00
{{- if (not .Values.mastodon.s3.enabled) }}
2021-02-09 23:28:44 +00:00
# ensure we run on the same node as the other rails components; only
# required when using PVCs that are ReadWriteOnce
2021-08-09 14:16:20 +00:00
{{- if or (eq "ReadWriteOnce" .Values.mastodon.persistence.assets.accessMode) (eq "ReadWriteOnce" .Values.mastodon.persistence.system.accessMode) }}
2021-02-09 23:28:44 +00:00
affinity:
podAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
- labelSelector:
matchExpressions:
- key: app.kubernetes.io/part-of
operator: In
values:
- rails
topologyKey: kubernetes.io/hostname
2021-02-09 23:28:44 +00:00
{{- end }}
volumes:
- name: assets
persistentVolumeClaim:
claimName: {{ template "mastodon.pvc.assets" . }}
2021-02-09 23:28:44 +00:00
- name: system
persistentVolumeClaim:
claimName: {{ template "mastodon.pvc.system" . }}
2021-08-09 14:16:20 +00:00
{{- end }}
2021-02-09 23:28:44 +00:00
containers:
- name: {{ include "mastodon.fullname" . }}-chewy-setup
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
command:
- bundle
- exec
- rake
- chewy:upgrade
envFrom:
- configMapRef:
name: {{ include "mastodon.fullname" . }}-env
- secretRef:
name: {{ template "mastodon.secretName" . }}
2021-02-09 23:28:44 +00:00
env:
- name: "DB_PASS"
valueFrom:
secretKeyRef:
name: {{ template "mastodon.postgresql.secretName" . }}
key: password
2021-02-09 23:28:44 +00:00
- name: "REDIS_PASSWORD"
valueFrom:
secretKeyRef:
name: {{ template "mastodon.redis.secretName" . }}
2021-02-09 23:28:44 +00:00
key: redis-password
{{- if and .Values.redis.sidekiq.enabled .Values.redis.sidekiq.auth.existingSecret }}
- name: "SIDEKIQ_REDIS_PASSWORD"
valueFrom:
secretKeyRef:
name: {{ template "mastodon.redis.sidekiq.secretName" . }}
key: redis-password
{{- end }}
{{- if and .Values.redis.cache.enabled .Values.redis.cache.auth.existingSecret }}
- name: "CACHE_REDIS_PASSWORD"
valueFrom:
secretKeyRef:
name: {{ template "mastodon.redis.cache.secretName" . }}
key: redis-password
{{- end }}
{{- if and .Values.elasticsearch.existingSecret (or .Values.elasticsearch.enabled .Values.elasticsearch.hostname) }}
- name: "ES_PASS"
valueFrom:
secretKeyRef:
name: {{ .Values.elasticsearch.existingSecret }}
key: password
{{- end }}
2021-02-09 23:28:44 +00:00
- name: "PORT"
2021-08-09 14:16:20 +00:00
value: {{ .Values.mastodon.web.port | quote }}
{{- if (not .Values.mastodon.s3.enabled) }}
2021-02-09 23:28:44 +00:00
volumeMounts:
- name: assets
mountPath: /opt/mastodon/public/assets
- name: system
mountPath: /opt/mastodon/public/system
2021-08-09 14:16:20 +00:00
{{- end }}
2021-02-09 23:28:44 +00:00
{{- end }}