macos_github_actions_runner

macos-github-actions-runner

Эта роль установит самоорганизованный GitHub Actions runner как на уровне организации, так и на уровне репозитория на MacOS/MacOSX. Она выполнит чистую установку, переустановку по желанию, переустановку, если служба не работает, или удаление. Вдохновлено ansible-github_actions_runner, но модифицировано для работы на MacOS.

Требования

Эта роль должна использоваться только на MacOS 10.13 (High Sierra) или более новых версиях.

Требуются следующие переменные окружения:

  • PERSONAL_ACCESS_TOKEN - PAT GitHub с областью repo, если добавляется runner репозитория, или областью admin:org, если добавляется runner организации.

Требуются следующие переменные:

  • github_account - Название аккаунта GitHub с учетом регистра. Это может быть имя пользователя GitHub или название организации GitHub.
  • access_token - Это опционально и заменяет требуемую переменную окружения PERSONAL_ACCESS_TOKEN.

Переменные роли

По умолчанию (из defaults/main.yml):

# Пользователь runner - пользователь, под которым работает локальная служба runner
runner_user: "vagrant"

# Директория, куда будет установлен локальный runner
runner_dir: ~/actions-runner

# Версия GitHub Actions Runner
runner_version: "latest"

# Если найдено на сервере, удалить существующую службу runner и установить ее снова
reinstall_runner: no

# Не выводить логи Ansible, которые могут содержать конфиденциальные данные (токен регистрации)
hide_sensitive_logs: yes

# Адрес GitHub
github_url: "https://github.com"

# API GitHub
github_api_url: "https://api.github.com"

# Личный токен доступа для вашего аккаунта GitHub
access_token: "{{ lookup('env', 'PERSONAL_ACCESS_TOKEN') }}"

# Является ли это runner для организации или нет?
runner_org: no

# Имя, которое будет присвоено этому runner в GitHub (имя хоста по умолчанию)
runner_name: "{{ hostname }}"

# Метки для применения к runner
runner_labels: []

# Рабочая директория для runner
runner_work_dir: "_work"

# Дополнительные аргументы для передачи к `config.sh`
runner_extra_config_args: ""

Зависимости

Нет

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

Чтобы настроить самоорганизованный runner GitHub на уровне репозитория:

- name: Установить GitHub Actions Runner
  hosts: macs
  user: ansible
  become: yes
  vars:
    - github_account: github-access-user
    - github_repo: my_awesome_repo
  roles:
    - role: nick-invision.macos_github_actions_runner

Чтобы настроить самоорганизованный runner GitHub на уровне организации:

- name: Установить GitHub Actions Runner
  hosts: macs
  user: ansible
  become: yes
  vars:
    - github_account: github-access-user
    - runner_org: true
  roles:
    - role: nick-invision.macos_github_actions_runner

Чтобы настроить самоорганизованный runner GitHub с различными заменами:

- name: Установить GitHub Actions Runner
  hosts: macs
  user: ansible
  become: yes
  vars:
    - github_account: github-access-user
    - runner_org: true
    - runner_labels:
        - some-label
    - runner_version: 2.277.0
  roles:
    - role: nick-invision.macos_github_actions_runner

Лицензия

MIT

О проекте

Deploy Github Actions self-hosted runner on MacOS

Установить
ansible-galaxy install nick-invision/ansible-role-macos-github-actions-runner
Лицензия
mit
Загрузки
425
Владелец