Files
ansible-gitea-runner/readme.md
2025-10-26 20:04:02 +01:00

2.6 KiB

Gitea Runner Automation with Ansible

This repository contains an Ansible playbook and configuration files to automate the deployment and configuration of a Gitea Runner on a Fedora Rawhide Cloud VM.

To deploy a Fedora Rawhide Cloud virtual machine, please go to this repository.

Repository Structure

├── ansible.cfg # Ansible configuration settings 
├── inventory.ini # Host inventory definition 
├── setup.yml # Main playbook for basic system setup 
├── update.yml # Playbook to ensure system is up-to-date 
├── runner_setup.yml # Playbook for Gitea Runner installation and configuration

Prerequisites

  1. Ansible installed on your control machine
  2. Access to a Fedora Rawhide Cloud VM with IP 10.17.3.250
  3. SSH key authentication configured with ~/.ssh/terraform_key
  4. Root privileges or sudo access on the target VM
  5. Gitea registration token (to be placed in runner_setup.yml)

How to Use

  1. Install Ansible (if not already installed):

    # For CentOS/RHEL/Fedora
    sudo yum install ansible
    
    # For Ubuntu/Debian
    sudo apt update && sudo apt install ansible
    
  2. Ensure SSH key exists:

    ls ~/.ssh/terraform_key
    
  3. Set registration token in runner_setup.yml:

    registration_token: "your_actual_token_here"
    

Obtain the token from: https://git.phyllo.me/user/settings/actions/runners

For a runner to have the global scope, one needs to generate a token with a Gitea superuser

  1. Run the playbooks:

    ansible-playbook update.yml
    ansible-playbook setup.yml
    ansible-playbook runner_setup.yml
    

What This Does

This automation will:

  • Connect to the specified Fedora Rawhide Cloud VM
  • Update the system packages and reboot if required
  • Install necessary dependencies
  • Set hostname to fedora-rawhide10
  • Create a dedicated gitea-runner user
  • Download and install Gitea Runner
  • Configure systemd service for automatic startup
  • Register the runner with Gitea using the provided token
  • Start the Gitea Runner service
  • The result is a fully configured Gitea Runner that will automatically start on system boot, ready to execute Gitea Actions workflows.

Troubleshooting

If you encounter issues:

  • Verify SSH connectivity to the target VM
  • Ensure Ansible can reach the specified IP address
  • Check that ~/.ssh/terraform_key has correct permissions (600)
  • Review output logs for specific error messages
  • Make sure the registration token is valid

For additional help with Ansible configuration, consult the official Ansible documentation.