123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899 |
- {{- if .Values.mastodon.createAdmin.enabled -}}
- apiVersion: batch/v1
- kind: Job
- metadata:
- name: {{ include "mastodon.fullname" . }}-create-admin
- 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" . }}-create-admin
- {{- with .Values.jobAnnotations }}
- annotations:
- {{- toYaml . | nindent 8 }}
- {{- end }}
- spec:
- restartPolicy: Never
- {{- if (not .Values.mastodon.s3.enabled) }}
- # ensure we run on the same node as the other rails components; only
- # required when using PVCs that are ReadWriteOnce
- {{- if or (eq "ReadWriteOnce" .Values.mastodon.persistence.assets.accessMode) (eq "ReadWriteOnce" .Values.mastodon.persistence.system.accessMode) }}
- affinity:
- podAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- - labelSelector:
- matchExpressions:
- - key: app.kubernetes.io/part-of
- operator: In
- values:
- - rails
- topologyKey: kubernetes.io/hostname
- {{- end }}
- volumes:
- - name: assets
- persistentVolumeClaim:
- claimName: {{ template "mastodon.pvc.assets" . }}
- - name: system
- persistentVolumeClaim:
- claimName: {{ template "mastodon.pvc.system" . }}
- {{- end }}
- containers:
- - name: {{ include "mastodon.fullname" . }}-create-admin
- image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
- imagePullPolicy: {{ .Values.image.pullPolicy }}
- command:
- - bin/tootctl
- - accounts
- - create
- - {{ .Values.mastodon.createAdmin.username }}
- - --email
- - {{ .Values.mastodon.createAdmin.email }}
- - --confirmed
- - --role
- - Owner
- envFrom:
- - configMapRef:
- name: {{ include "mastodon.fullname" . }}-env
- - secretRef:
- name: {{ template "mastodon.secretName" . }}
- env:
- - name: "DB_PASS"
- valueFrom:
- secretKeyRef:
- name: {{ template "mastodon.postgresql.secretName" . }}
- key: password
- - name: "REDIS_PASSWORD"
- valueFrom:
- secretKeyRef:
- name: {{ template "mastodon.redis.secretName" . }}
- 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 }}
- - name: "PORT"
- value: {{ .Values.mastodon.web.port | quote }}
- {{- if (not .Values.mastodon.s3.enabled) }}
- volumeMounts:
- - name: assets
- mountPath: /opt/mastodon/public/assets
- - name: system
- mountPath: /opt/mastodon/public/system
- {{- end }}
- {{- end }}
|