-
Notifications
You must be signed in to change notification settings - Fork 8
/
deployment.yml
61 lines (61 loc) · 1.67 KB
/
deployment.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
apiVersion: apps/v1beta1
kind: Deployment
metadata:
name: self-hosted-runner
spec:
replicas: 2
template:
metadata:
labels:
app: self-hosted-runner
spec:
containers:
- name: self-hosted-runner
image: gcr.io/PROJECT_ID/IMAGE:TAG
imagePullPolicy: Always
env:
- name: GITHUB_REPO
valueFrom:
secretKeyRef:
name: self-hosted-runner-creds
key: GITHUB_REPO
- name: TOKEN
valueFrom:
secretKeyRef:
name: self-hosted-runner-creds
key: TOKEN
- name: DOCKER_HOST
value: 127.0.0.1
- name: DOCKER_BUILDKIT
value: "1"
lifecycle:
preStop:
exec:
command:
[
'/bin/bash',
'-c',
'RUNNER_ALLOW_RUNASROOT=1 ./config.sh remove --token $(curl -sS --data "" -H "Authorization: Bearer $TOKEN" https://api.github.com/repos/$GITHUB_REPO/actions/runners/remove-token | jq -r .token)'
]
resources:
limits:
memory: "512Mi"
cpu: "250m"
# Docker-in-Docker not recommended for production
- name: dind
image: docker:18.09-dind
resources:
requests:
memory: "256Mi"
cpu: "250m"
limits:
memory: "512Mi"
cpu: "250m"
securityContext:
privileged: true
volumeMounts:
- name: dind-storage
mountPath: /var/lib/docker
volumes:
- name: dind-storage
emptyDir: {}