Kubernetes manifests: replace jobs with cronjobs

This commit is contained in:
Marian Steinbach 2018-11-28 22:19:03 +01:00
parent 678f319e73
commit eac5feb4f5
5 changed files with 116 additions and 66 deletions

View File

@ -0,0 +1,39 @@
apiVersion: batch/v1beta1
kind: CronJob
metadata:
name: green-spider-createjobs
spec:
# Monday, Wednesday, Friday at 1:05 UTC
schedule: "5 1 * * 1,3,5"
jobTemplate:
spec:
parallelism: 1
template:
spec:
containers:
- name: spider
image: quay.io/netzbegruenung/green-spider:latest
imagePullPolicy: Always
args:
- "--credentials-path=/secrets/datastore-writer.json"
- "--loglevel=info"
- jobs
volumeMounts:
- name: secrets
mountPath: "/secrets"
readOnly: true
resources:
requests:
cpu: 500m
memory: 200M
restartPolicy: OnFailure
volumes:
- name: secrets
secret:
secretName: green-spider
items:
- key: datastore-writer.json
path: datastore-writer.json
- name: shared
emptyDir: {}

View File

@ -0,0 +1,36 @@
apiVersion: batch/v1beta1
kind: CronJob
metadata:
name: green-spider-screenshotter
spec:
# Saturday at 1:05 UTC
schedule: "5 1 * * 6"
jobTemplate:
spec:
parallelism: 1
template:
spec:
containers:
- name: screenshotter
image: quay.io/netzbegruenung/green-spider-screenshotter:latest
imagePullPolicy: Always
volumeMounts:
- name: secrets
mountPath: "/secrets"
readOnly: true
resources:
requests:
cpu: 800m
memory: 4000M
# No restarts, as this would mean to start over.
# TODO: Maintain a queue and change this.
restartPolicy: Never
volumes:
- name: secrets
secret:
secretName: green-spider
items:
- key: datastore-writer.json
path: datastore-writer.json
- key: screenshots-uploader.json
path: screenshots-uploader.json

View File

@ -1,29 +0,0 @@
apiVersion: batch/v1
kind: Job
metadata:
name: green-spider-screenshotter
spec:
template:
spec:
containers:
- name: screenshotter
image: quay.io/netzbegruenung/green-spider-screenshotter:latest
imagePullPolicy: Always
volumeMounts:
- name: secrets
mountPath: "/secrets"
readOnly: true
resources:
requests:
cpu: 800m
memory: 4000M
restartPolicy: Never
volumes:
- name: secrets
secret:
secretName: green-spider
items:
- key: datastore-writer.json
path: datastore-writer.json
- key: screenshots-uploader.json
path: screenshots-uploader.json

View File

@ -0,0 +1,41 @@
apiVersion: batch/v1beta1
kind: CronJob
metadata:
name: green-spider-spider
spec:
# Monday, Wednesday, Friday at 1:25 UTC
schedule: "25 1 * * 1,3,5"
jobTemplate:
spec:
parallelism: 2
template:
spec:
containers:
- name: spider
image: quay.io/netzbegruenung/green-spider:latest
imagePullPolicy: Always
args:
- "--credentials-path=/secrets/datastore-writer.json"
- "--loglevel=info"
- spider
volumeMounts:
- name: secrets
mountPath: "/secrets"
readOnly: true
- name: shared
mountPath: /dev/shm
resources:
requests:
cpu: 800m
memory: 5000M
restartPolicy: OnFailure
volumes:
- name: secrets
secret:
secretName: green-spider
items:
- key: datastore-writer.json
path: datastore-writer.json
- name: shared
emptyDir: {}

View File

@ -1,37 +0,0 @@
apiVersion: batch/v1
kind: Job
metadata:
name: green-spider-spider
spec:
parallelism: 1
template:
spec:
containers:
- name: spider
image: quay.io/netzbegruenung/green-spider:latest
imagePullPolicy: Always
args:
- "--credentials-path=/secrets/datastore-writer.json"
- "--loglevel=info"
- spider
volumeMounts:
- name: secrets
mountPath: "/secrets"
readOnly: true
- name: shared
mountPath: /dev/shm
resources:
requests:
cpu: 900m
memory: 2000M
restartPolicy: OnFailure
volumes:
- name: secrets
secret:
secretName: green-spider
items:
- key: datastore-writer.json
path: datastore-writer.json
- name: shared
emptyDir: {}