---
gitea: none
include_toc: true
---

**Zavage act_runner for Gitea**

---------------------------------
Included is what's needed for act_runner to run on servbox host and provide a docker-runner
to Gitea instance. This is systemd units and configuration.

# Installation
1. provision gitea-runner user, with home directory and clone this repo inside of it.
1. Install docker-rootless, provision sid and gid ranges 
    /etc/subuid and /etc/subgid need configured
```
# as root:
echo "gitea-runner:296608:65536" | tee -a /etc/subuid
echo "gitea-runner:296608:65536" | tee -a /etc/subgid

# and verify (su -l gitea-runner):
id =u
whoami
grep ^$(whoami): /etc/subuid
grep ^$(whoami): /etc/subgid
```

1. Install 3 systemd units, 2 user-level and 1-system level to run dbus, docker (rootless), and act_runner
1. Install .bashrc or .profile config for user to connect to dbus, needed for systemd
1. Start and enable the systemd units/services
1. Verify it works

```
su -l gitea-runner
systemctl --user [start/enable/status] docker.service
systemctl --user [start/enable/status] dbus-gitea-runner.service


# system-level: (run as root)
systemctl [start/enable/status] gitea-act-runner.service

# Check:
journalctl --user -u docker.service
journalctl gitea-act-runner.service
```

# Notes
 * Now using arch gitea-runner package (official).
 * Make sure to use /etc/gitea-runner/config.yaml
 * Enable the cleanup timer to clean docker cache every now and then

# See also
 * Mathew Guest: mat@zavage.net
 * https://gitea.com/gitea/act_runner


