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.

Description
This repository contains an Ansible playbook and configuration files to automate the deployment and configuration of a Gitea Runner on a Rocky Linux 10 VM.
Readme 50 KiB
Languages
INI 100%