apiVersion: apps/v1 kind: Deployment metadata: name: {{ include "passbook.fullname" . }}-worker labels: app.kubernetes.io/name: {{ include "passbook.name" . }} helm.sh/chart: {{ include "passbook.chart" . }} app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/managed-by: {{ .Release.Service }} spec: replicas: 1 selector: matchLabels: app.kubernetes.io/name: {{ include "passbook.name" . }} app.kubernetes.io/instance: {{ .Release.Name }} template: metadata: labels: app.kubernetes.io/name: {{ include "passbook.name" . }} app.kubernetes.io/instance: {{ .Release.Name }} passbook.io/component: worker spec: volumes: - name: config-volume configMap: name: {{ include "passbook.fullname" . }}-config containers: - name: {{ .Chart.Name }} image: "beryju/passbook:{{ .Values.image.tag }}" imagePullPolicy: IfNotPresent command: - ./manage.py args: - bootstrap - celery - worker - --autoscale=10,3 - -E - -B - -A=passbook.root.celery - -s=/tmp/celerybeat-schedule volumeMounts: - mountPath: /etc/passbook name: config-volume envFrom: - configMapRef: name: {{ include "passbook.fullname" . }}-config prefix: PASSBOOK_ env: - name: PASSBOOK_SECRET_KEY valueFrom: secretKeyRef: name: {{ include "passbook.fullname" . }}-secret-key key: secret_key - name: PASSBOOK_REDIS__PASSWORD valueFrom: secretKeyRef: name: "{{ .Release.Name }}-redis" key: redis-password - name: PASSBOOK_POSTGRESQL__PASSWORD valueFrom: secretKeyRef: name: "{{ .Release.Name }}-postgresql" key: postgresql-password resources: requests: cpu: 150m memory: 300M limits: cpu: 300m memory: 500M