github_actions_runner

Роль Ansible для самонастроенного GitHub Actions Runner

Это роль Ansible, которая устанавливает и настраивает самонастроенные Runner'ы GitHub Actions на одном или нескольких хостах. Вы можете повторно использовать её для разных URL (репозиториев или организаций) на одном и том же хосте, чтобы максимально использовать её функциональность.

Основные цели этой роли:

  • избежать растрат: повторно использовать один и тот же хост для предоставления среды сборки для нескольких репозиториев или организаций;
  • идемпотентность: многократное выполнение роли не приведет к сбоям, шаги имеют проверки, которые определяют, нужно ли их выполнять;

Переменные

Полный список переменных см. в файле defaults. В идеале все значения будут содержать комментарии, описывающие их назначение, и по умолчанию вы сможете определить тип.

Обязательные переменные

Следующие значения обязательны, так как без них невозможно зарегистрировать самонастроенный Runner.

Название Описание
gh_runner_config_url URL репозитория или организации GitHub
gh_runner_config_token Токен регистрации GitHub для аутентификации хоста

Пример Плейбука

Простейший случай использования: Конфигурация одного репозитория на одном хосте.

- hosts: foo
  roles:
    - role: macunha1.github_actions_runner
      vars:
        gh_runner_config_labels:
          - linux
          - self-hosted

        gh_runner_config_url: https://github.com/macunha1/ansible-github-actions-runner
        gh_runner_config_token: AC5TNLJP9SBAFNEKKLLBLF264J8XO

Сложный случай использования, для которого была создана эта роль

- hosts: foo
  roles:
    - role: macunha1.github_actions_runner
      vars:
        gh_runner_config_labels:
          - linux
          - self-hosted

        gh_runner_config_url: https://github.com/macunha1/ansible-github-actions-runner
        gh_runner_config_token: AC5TNLJP9SBAFNEKKLLBLF264J8XO

    - role: macunha1.github_actions_runner
      vars:
        gh_runner_config_url: https://github.com/macunha1/another-repository
        gh_runner_config_token: AC5CQV3IJRR2OAFGEFCPJ0WJPJQXO

    - role: macunha1.github_actions_runner
      vars:
        gh_runner_config_url: https://github.com/macunha-acme-corp
        gh_runner_config_token: ACYWUR9MHGR9U58C34W9ZK00UNBF

Обратите внимание, что несмотря на использование одного и того же хоста, каждая из этих конфигураций GitHub Actions Runner будет иметь свой собственный путь и учетные данные. Поэтому они могут существовать в гармонии и не мешать друг другу.

Участие

PRs Welcome

Не стесняйтесь создавать issue с запросами на новые функции или (что еще лучше) отправлять мне Pull request. Я буду рад сотрудничать с вами.

Если эта роль не сработала для вас или если вы обнаружили ошибку во время выполнения, дайте мне знать.

О проекте

Idempotent Ansible role that installs and configures self-hosted GitHub Actions Runners (yeah, plural!)

Установить
ansible-galaxy install macunha1/ansible-github-actions-runner
Лицензия
mit
Загрузки
3675
Владелец
cat /dev/null > /path/to/github/bio