macunha1.github_actions_runner

GitHub Actions 自托管 Runner Ansible 角色

这是一个 Ansible 角色,用于在一个或多个主机上安装和配置 GitHub Actions 自托管 Runner。您可以在同一主机上重复使用它,以支持多个不同的 URL(存储库或组织),以实现最大化的重用。

这个角色的主要目标:

  • _避免浪费_:使用同一主机为多个存储库或组织提供构建环境;
  • _幂等性_:多次执行该角色不会导致任何问题,步骤中有检查以验证是否应该执行;

变量

要查看变量的完整列表,请查看 defaults 文件。理想情况下,所有值都会有注释,描述它们的用途,并通过默认值可以判断类型。

必需变量

以下值是必需的,因为没有它们就无法注册自托管 Runner。

名称 描述
gh_runner_config_url GitHub 存储库或组织的 URL
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 的配置将拥有自己的路径和凭证。因此,它们可以和谐共存而不会相互干扰。

贡献

欢迎提交PR

欢迎提交 issue,提出功能请求,或(更好)向我发送 Pull request,我很乐意与您合作。

如果这个角色对您没有用,或在执行过程中发现了问题,请告知我。

关于项目

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

安装
ansible-galaxy install macunha1.github_actions_runner
许可证
mit
下载
3.9k
拥有者
cat /dev/null > /path/to/github/bio