stackage-server/etc/kube/cron_deployment_template.yaml
2018-10-02 18:44:14 +02:00

62 lines
1.4 KiB
YAML

# Kubernetes
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: "${CRON_DEPLOYMENT_NAME}"
spec:
replicas: 1
minReadySeconds: 5
strategy:
type: Recreate
template:
metadata:
labels:
app: "${CRON_DEPLOYMENT_APP}"
spec:
volumes:
- name: stackage-server-cron-volume
secret:
secretName: ${CRON_DEPLOYMENT_NAME}-secret
containers:
- name: stackage-server-cron
image: "${DEPLOYMENT_IMAGE}"
imagePullPolicy: Always
env:
- name: PGSTRING
valueFrom:
secretKeyRef:
name: "${DEPLOYMENT_NAME}"
key: PGCONN
command:
- bash
- "-c"
- |
set -eux
source /secret/aws.sh
mkdir -p /work
cd /work
while true
do
date
stack update
/usr/local/bin/stackage-server-cron
sleep 5m
done
resources:
# NOTE: This differs between prod and ci.
# Once we migrate to helm we'll be able to set it
# per environment.
requests:
cpu: 150m
memory: 2048Mi
limits:
cpu: 300m
memory: 4096Mi
volumeMounts:
- name: stackage-server-cron-volume
readOnly: true
mountPath: /secret
imagePullSecrets:
- name: registry-key