# yaml-language-server: $schema=https://raw.githubusercontent.com/yannh/kubernetes-json-schema/master/v1.29.4/deployment.json apiVersion: apps/v1 kind: Deployment metadata: name: forgejo-runner labels: app: forgejo-runner spec: replicas: 5 selector: matchLabels: app: forgejo-runner strategy: {} template: metadata: labels: app: forgejo-runner spec: restartPolicy: Always volumes: - name: docker-certs emptyDir: {} - name: runner-data emptyDir: {} # Initialise our configuration file using offline registration # https://forgejo.org/docs/v1.21/admin/actions/#offline-registration initContainers: - name: runner-register image: &runnerImg code.forgejo.org/forgejo/runner:5.0.3 command: ["forgejo-runner", "register", "--no-interactive", "--token", $(RUNNER_SECRET), "--name", $(RUNNER_NAME), "--instance", $(FORGEJO_INSTANCE_URL)] env: - name: RUNNER_NAME valueFrom: fieldRef: fieldPath: metadata.name - name: RUNNER_SECRET valueFrom: secretKeyRef: name: forgejo-runner-token key: token - name: FORGEJO_INSTANCE_URL value: https://git.seanomik.net #${SECRET_NEW_DOMAIN} resources: limits: cpu: "0.50" memory: "64Mi" volumeMounts: - name: runner-data mountPath: /data containers: - name: runner image: *runnerImg command: ["sh", "-c", "while ! nc -z localhost 2376