juntekim.com/mist_infra/arc/forgejo/deployment.yaml
2026-03-12 20:33:43 +00:00

87 lines
2.1 KiB
YAML

apiVersion: v1
kind: Namespace
metadata:
name: forgejo-runners
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: forgejo-runner-data
namespace: forgejo-runners
spec:
accessModes:
- ReadWriteOnce
storageClassName: rook-ceph-block
resources:
requests:
storage: 1Gi
---
apiVersion: v1
kind: Secret
metadata:
name: forgejo-runner-secret
namespace: forgejo-runners
type: Opaque
stringData:
token: "RPAjk4Jdc42By5vSxnULPPPrjU0goPLQIiKgwOIo"
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: forgejo-runner
namespace: forgejo-runners
spec:
replicas: 1
selector:
matchLabels:
app: forgejo-runner
template:
metadata:
labels:
app: forgejo-runner
spec:
initContainers:
- name: register
image: gitea/act_runner:latest
command:
- sh
- -c
- |
if [ ! -f /data/.runner ]; then
act_runner register --no-interactive \
--instance https://git.juntekim.com \
--token "RPAjk4Jdc42By5vSxnULPPPrjU0goPLQIiKgwOIo" \
--name mist-runner \
--labels "self-hosted,linux,x64"
else
echo "Runner already registered, skipping."
fi
workingDir: /data
volumeMounts:
- name: runner-data
mountPath: /data
containers:
- name: runner
image: gitea/act_runner:latest
command: ["act_runner", "daemon"]
workingDir: /data
env:
- name: DOCKER_HOST
value: tcp://localhost:2375
volumeMounts:
- name: runner-data
mountPath: /data
- name: dind
image: docker:dind
securityContext:
privileged: true
env:
- name: DOCKER_TLS_CERTDIR
value: ""
volumeMounts:
- name: runner-data
mountPath: /data
volumes:
- name: runner-data
persistentVolumeClaim:
claimName: forgejo-runner-data