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", "/scripts/runner-entrypoint.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: 500Mi cpu: 500m limits: memory: 500Mi cpu: 500m volumeMounts: - name: runner-scripts mountPath: /scripts - 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 volumes: - name: runner-scripts configMap: name: runner-scripts volumeClaimTemplates: - metadata: name: runner-data-pvc spec: accessModes: - ReadWriteOnce resources: requests: storage: 100Mi --- 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: 2 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: [] volumes: [] volumeClaimTemplates: []