123 lines
3.0 KiB
YAML
123 lines
3.0 KiB
YAML
apiVersion: v1
|
|
kind: Namespace
|
|
metadata:
|
|
name: gitea-runner
|
|
---
|
|
apiVersion: v1
|
|
kind: Secret
|
|
metadata:
|
|
name: runner-secret
|
|
namespace: gitea-runner
|
|
stringData:
|
|
token: "m7uOZcE8st7MtvjI2YThQy6em5GoCs2TPMXSnvdV"
|
|
---
|
|
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: runner-config
|
|
namespace: gitea-runner
|
|
data:
|
|
config.yaml: |
|
|
log:
|
|
level: info
|
|
runner:
|
|
file: .runner
|
|
capacity: 1
|
|
timeout: 1h
|
|
labels:
|
|
- "ubuntu-latest:docker://node:20-bookworm"
|
|
- "ubuntu-22.04:docker://node:20-bookworm"
|
|
container:
|
|
network: ""
|
|
privileged: true
|
|
options: ""
|
|
workdir_parent: /workspace
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: gitea-runner
|
|
namespace: gitea-runner
|
|
spec:
|
|
replicas: 1
|
|
selector:
|
|
matchLabels:
|
|
app: gitea-runner
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: gitea-runner
|
|
spec:
|
|
containers:
|
|
- name: runner
|
|
image: gitea/act_runner:latest
|
|
env:
|
|
- name: DOCKER_HOST
|
|
value: tcp://localhost:2376
|
|
- name: DOCKER_TLS_VERIFY
|
|
value: "1"
|
|
- name: DOCKER_CERT_PATH
|
|
value: /certs/client
|
|
command: ["sh", "-c"]
|
|
args:
|
|
- |
|
|
while ! nc -z localhost 2376; do sleep 1; done
|
|
act_runner register --no-interactive \
|
|
--instance http://gitea-http.gitea.svc.cluster.local:3000 \
|
|
--token "$(cat /secret/token)" \
|
|
--name k3s-runner \
|
|
--config /config/config.yaml \
|
|
--labels "ubuntu-latest:docker://node:20-bookworm,ubuntu-22.04:docker://node:20-bookworm"
|
|
act_runner daemon --config /config/config.yaml
|
|
volumeMounts:
|
|
- name: secret
|
|
mountPath: /secret
|
|
readOnly: true
|
|
- name: config
|
|
mountPath: /config
|
|
readOnly: true
|
|
- name: certs
|
|
mountPath: /certs
|
|
readOnly: true
|
|
- name: data
|
|
mountPath: /data
|
|
resources:
|
|
requests:
|
|
cpu: 100m
|
|
memory: 128Mi
|
|
limits:
|
|
cpu: 500m
|
|
memory: 512Mi
|
|
- name: dind
|
|
image: docker:27-dind
|
|
securityContext:
|
|
privileged: true
|
|
env:
|
|
- name: DOCKER_TLS_CERTDIR
|
|
value: /certs
|
|
volumeMounts:
|
|
- name: certs
|
|
mountPath: /certs
|
|
- name: dind-storage
|
|
mountPath: /var/lib/docker
|
|
resources:
|
|
requests:
|
|
cpu: 100m
|
|
memory: 256Mi
|
|
limits:
|
|
cpu: 2000m
|
|
memory: 2Gi
|
|
volumes:
|
|
- name: secret
|
|
secret:
|
|
secretName: runner-secret
|
|
- name: config
|
|
configMap:
|
|
name: runner-config
|
|
- name: certs
|
|
emptyDir: {}
|
|
- name: data
|
|
emptyDir: {}
|
|
- name: dind-storage
|
|
emptyDir: {}
|