mirror of
https://gitea.com/gitea/act_runner.git
synced 2026-07-18 12:34:39 +08:00
A batch of small, self-contained fixes and docs/example additions. Fixes #625 - align the example config's `force_pull` with the actual default (`false`) Fixes #804 - return an error instead of discarding `os.UserHomeDir()` when defaulting `cache.dir`/`host.workdir_parent` Fixes #571 - send a `gitea-runner/<version>` User-Agent on API requests Fixes #650 - detect an `Unauthenticated` fetch response and exit the daemon with an error instead of retrying forever Fixes #766 - add `exec --eventpath` to supply a JSON event payload file Fixes #256 - add a `bug-report` subcommand that prints version/Go/OS-arch/CPU info Fixes #617 - add `runner.set_act_env` (default `true`) to optionally omit the `ACT=true` env var Fixes #635 - record a failure result (and guard a nil reusable-workflow caller) when the job `if`-expression fails to evaluate Fixes #1005 - remove README docs for config env-var overrides that were already removed from the code Fixes #448 - clarify in `exec --job` help that `--workflows` may be needed to disambiguate Fixes #209 - note that `host`-labelled runners still need Docker for `docker://` actions and service containers Fixes #757 - add a systemd service example with automatic restart Fixes #474 - add a Kubernetes StatefulSet example that persists the `.runner` registration across reschedules Fixes #776 - build the basic (non-dind) docker image for `linux/riscv64` Fixes #628 - build the basic (non-dind) docker image for `linux/s390x`Reviewed-on: https://gitea.com/gitea/runner/pulls/1075 Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com>
35 lines
1.1 KiB
Markdown
35 lines
1.1 KiB
Markdown
# Running the runner as a systemd service
|
|
|
|
[`gitea-runner.service`](./gitea-runner.service) is an example unit for running
|
|
the runner as a background service on a systemd host.
|
|
|
|
## Setup
|
|
|
|
1. Install the `gitea-runner` binary (e.g. to `/usr/local/bin/gitea-runner`).
|
|
2. Create a dedicated user and working directory:
|
|
|
|
```bash
|
|
sudo useradd --system --home-dir /var/lib/gitea-runner --create-home gitea-runner
|
|
```
|
|
|
|
3. Generate a config and register the runner (as the service user), so the
|
|
`.runner` file ends up in the working directory:
|
|
|
|
```bash
|
|
sudo -u gitea-runner gitea-runner generate-config > /etc/gitea-runner/config.yaml
|
|
cd /var/lib/gitea-runner
|
|
sudo -u gitea-runner gitea-runner register --config /etc/gitea-runner/config.yaml
|
|
```
|
|
|
|
4. Install and enable the unit:
|
|
|
|
```bash
|
|
sudo cp gitea-runner.service /etc/systemd/system/gitea-runner.service
|
|
sudo systemctl daemon-reload
|
|
sudo systemctl enable --now gitea-runner
|
|
```
|
|
|
|
Adjust the binary path, config path, working directory and user to match your
|
|
installation. If jobs use the host's Docker daemon, uncomment the
|
|
`docker.service` dependencies in the unit.
|