DeadSwitch 44ee61424b
All checks were successful
Test the role / test-the-role (push) Successful in 7s
More specific example in the readme.
2026-02-18 15:20:05 +01:00
2026-02-18 15:16:19 +01:00
2026-02-11 08:56:31 +01:00
2026-02-11 08:56:31 +01:00
2026-02-18 15:16:19 +01:00

Role That Installs act_runner For Gitea

ds_act_runner

This Ansible role installs and registers an act_runner instance to Gitea.

Requirements

  • Debian 12+ or compatible
  • Docker Engine installed
  • root permissions or sudo access

Variables

Variable Type Comment
act_runner_user string User that owns the service
act_runner_group string Group that owns the service
act_runner_binary_url string Download URL
act_runner_checksum_url string Binary SHA256 checksum
act_runner_labels list act_runner labels
act_runner_vars dict Variables for the config file
act_runner_instance string Gitea server URL/IP
act_runner_registration_token string Runner Gitea registration token
act_runner_name string The name of the instance
act_runner_install_deps boolean Install npm and nodejs on the runner
act_runner_vars:
  file: /home/{{ act_runner_user }}/.{{ act_runner_name }} # Runner PID & lock file
  privileged: true                                         # Privileged or non-privileged container
  force_pull: false                                        # Force pull at every run

Example Playbook

The following playbook deploys two act_runner instances:

- name: Deploy the act_runner service
  hosts: gitea
  become: true

  vars:
    act_runner_user: act_runner
    act_runner_group: act_runner
    act_runner_binary_url: https://dl.gitea.com/act_runner/0.2.13/act_runner-0.2.13-linux-amd64
    act_runner_checksum_url: https://dl.gitea.com/act_runner/0.2.13/act_runner-0.2.13-linux-amd64.sha256
    act_runner_registration_token: "{{ sops_act_runner_registration_token }}"
    act_runner_instance: https://gitea.tomsitcafe.com

  roles:
    - role: ds_act_runner # Non-privileged global runner
      vars:
        act_runner_name: gitea-runner-non-privileged
        act_runner_labels:
          - debian-13
          - non-privileged
        act_runner_vars:
          file: /home/{{ act_runner_user }}/.{{ act_runner_name }}
          privileged: false
          force_pull: false
 
    - role: ds_act_runner # Personal privileged runner with personal token
      vars:
        act_runner_name: gitea-runner-privileged
        act_runner_labels:
          - debian-13
          - privileged
        act_runner_vars:
          file: /home/{{ act_runner_user }}/.{{ act_runner_name }}
          privileged: true
          force_pull: false
        act_runner_registration_token: "{{ sops_act_runner_registration_token_private }}"

License

MIT

[ Fear the Silence. Fear the Switch. ]

Description
This Ansible role installs and registers an act_runner to the Gitea service.
Readme 50 KiB
Languages
Jinja 100%