k3s-infra/infrastructure/gitea/actions.deployment.yaml

93 lines
2.3 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: actions-runner
spec:
selector:
matchLabels:
app: actions-runner
template:
metadata:
labels:
app: actions-runner
spec:
hostname: kube-runner
serviceAccountName: actions-runner
containers:
- name: actions-runner
image: actions-runner
resources:
requests:
memory: "128Mi"
cpu: "500m"
limits:
memory: "2Gi"
cpu: "2"
env:
- name: DOCKER_HOST
value: tcp://localhost:2376
- name: DOCKER_CERT_PATH
value: /certs/client
- name: DOCKER_TLS_VERIFY
value: "1"
- name: GITEA_INSTANCE_URL
value: "https://git.kluster.moll.re"
- name: GITEA_RUNNER_REGISTRATION_TOKEN
valueFrom:
secretKeyRef:
name: actions-runner-secret
key: runner-token
# - name: GITEA_RUNNER_LABELS
# value: ubuntu-latest:docker://node:16-bullseye,ubuntu-22.04:docker://node:16-bullseye
- name: ACTIONS_RUNNER_POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: ACTIONS_RUNNER_REQUIRE_JOB_CONTAINER
value: "true"
- name: ACTIONS_RUNNER_CONTAINER_HOOKS
value: /home/runner/k8s/index.js
- name: ACTIONS_RUNNER_CLAIM_NAME
value: runner-workdir
- name: GITEA_RUNNER_LABELS
value: k8s
volumeMounts:
- name: runner-workdir
mountPath: /home/runner/_work
- name: runner-data
mountPath: /data
volumes:
- name: runner-workdir
persistentVolumeClaim:
claimName: runner-workdir
- name: runner-data
persistentVolumeClaim:
claimName: runner-data
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: runner-data
spec:
resources:
requests:
storage: 5Gi
storageClassName: "nfs-client"
volumeMode: Filesystem
accessModes:
- ReadWriteMany
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: runner-workdir
spec:
resources:
requests:
storage: 5Gi
storageClassName: "nfs-client"
volumeMode: Filesystem
accessModes:
- ReadWriteMany