1
0
Fork 0
home-stack-kustomize/kustomize/bases/gitea/runner-statefulset.yaml

122 lines
3.4 KiB
YAML

apiVersion: apps/v1
kind: StatefulSet
metadata:
name: runner-amd64
labels:
app.kubernetes.io/name: gitea
app.kubernetes.io/component: runner
app.kubernetes.io/arch: amd64
spec:
serviceName: runner-amd64
selector:
matchLabels:
app.kubernetes.io/name: gitea
app.kubernetes.io/component: runner
app.kubernetes.io/arch: amd64
replicas: 1
template:
metadata:
labels:
app.kubernetes.io/name: gitea
app.kubernetes.io/component: runner
app.kubernetes.io/arch: amd64
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: kubernetes.io/arch
operator: In
values:
- amd64
containers:
- name: runner
image: gitea/act_runner:nightly
command: ["sh", "-c", "while ! nc -z localhost 2376 </dev/null; do echo 'waiting for docker daemon...'; sleep 5; done; /sbin/tini -- run.sh"]
env:
- name: NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
- name: GITEA_INSTANCE_URL
value: http://gitea-server.$(NAMESPACE).svc
- name: GITEA_RUNNER_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: GITEA_RUNNER_REGISTRATION_TOKEN
valueFrom:
secretKeyRef:
name: runner-config
key: registration_token
- name: DOCKER_HOST
value: tcp://localhost:2376
- name: DOCKER_CERT_PATH
value: /data/certs/client
- name: DOCKER_TLS_VERIFY
value: "1"
resources:
requests:
memory: 200Mi
cpu: 200m
limits:
memory: 200Mi
cpu: 200m
volumeMounts:
- name: runner-data-pvc
mountPath: /data
- name: docker
image: docker:dind
securityContext:
privileged: true
env:
- name: DOCKER_TLS_CERTDIR
value: /data/certs
volumeMounts:
- name: runner-data-pvc
mountPath: /data
volumeClaimTemplates:
- metadata:
name: runner-data-pvc
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: runner-arm64
labels:
app.kubernetes.io/name: gitea
app.kubernetes.io/component: runner
app.kubernetes.io/arch: arm64
spec:
serviceName: runner-arm64
selector:
matchLabels:
app.kubernetes.io/name: gitea
app.kubernetes.io/component: runner
app.kubernetes.io/arch: arm64
replicas: 1
template:
metadata:
labels:
app.kubernetes.io/name: gitea
app.kubernetes.io/component: runner
app.kubernetes.io/arch: arm64
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: kubernetes.io/arch
operator: In
values:
- arm64
containers: []
volumeClaimTemplates: []