About runner groups
要在组织级别,使用 GitHub Team 计划的组织可以使用运行器组。
运行器组用于收集运行器集,并围绕它们创建安全边界。 随后可以确定允许哪些组织或存储库在这些计算机集上运行作业。组织所有者可以配置访问策略,用于控制组织中的哪些存储库有权访问运行器组。
当你授予对运行器组的访问权限时,可以看到组织的运行器设置中列出的运行器组。 或者,你可以为运行器组分配更精细的存储库访问策略。
在创建新运行器时,除非另有指定,否则它们将自动分配给默认组。 运行器每次只能在一个组中。 可以将运行器从一个运行器组移动到另一个运行器组。 有关详细信息,请参阅“将运行器移动到组”。
有关如何将作业路由到特定组中的运行器的信息,请参阅“选择作业的运行器”。
Managing access to your runners
Note: Before your workflows can send jobs to 大型运行器s, you must first configure permissions for the runner group. See the following sections for more information.
Runner groups are used to control which repositories can run jobs on your 大型运行器s. You must manage access to the group from each level of the management hierarchy, depending on where you've defined the 大型运行器:
- Runners at the enterprise level: 默认情况下,组织中的存储库无权访问企业级运行器组。 若要向存储库授予对企业运行器组的访问权限,组织所有者必须配置每个企业运行器组,并选择要授予访问权限的存储库。
- Runners at the organization level: 默认情况下,向组织中的所有存储库授予对组织级运行器组的访问权限。 若要限制哪些存储库具有访问权限,组织所有者必须配置组织运行器组并选择要授予访问权限的存储库。
For example, the following diagram has a runner group named grp-ubuntu-20.04-16core
at the enterprise level. Before the repository named octo-repo
can use the runners in the group, you must first configure the group at the enterprise level to allow access to the octo-org
organization. You must then configure the group at the organization level to allow access to octo-repo
.
Creating a runner group for an organization
警告:如果使用固定 IP 范围,建议仅对专用存储库使用 大型运行器。 公共存储库的分支可能会通过创建在工作流中执行代码的拉取请求,在 大型运行器 上运行危险代码。
所有组织都有单个默认运行器组。 使用 GitHub Team 计划的组织可以创建其他组。 组织管理员可以允许单个仓库访问运行器组。 有关如何使用 REST API 创建运行器组的信息,请参阅“操作”。
如果在注册过程中未指定任何组,则运行器会自动添加到默认组。 稍后可以将运行器从默认组移动到自定义组。 有关详细信息,请参阅“将运行器移动到组”。
创建组时,你必须选择一个策略,用于定义哪些存储库有权访问运行器组。
-
在 GitHub.com 上,导航到组织的主页。
-
在组织名称下,单击 “设置”。 如果看不到“设置”选项卡,请选择 下拉菜单,然后单击“设置” 。
-
在左侧边栏中,单击 “操作”,然后单击“运行器组” 。
-
在“运行器组”部分,单击“新建运行器组”。
-
为运行器组输入名称。
-
分配存储库访问策略。
可以将运行器组配置为可供特定的存储库列表或组织中的所有存储库访问。默认情况下,只有私有存储库可以访问运行器组中的运行器,但你可以覆盖此操作。 如果配置企业共享的组织的运行组,则不能覆盖此设置。
-
单击“创建组”以创建组并应用策略。
Changing which repositories can access a runner group
警告:如果使用固定 IP 范围,建议仅对专用存储库使用 大型运行器。 公共存储库的分支可能会通过创建在工作流中执行代码的拉取请求,在 大型运行器 上运行危险代码。
For runner groups in an organization, you can change what repositories in the organization can access a runner group.
-
导航到运行器组所在的组织的主页。
-
单击 “设置”。
-
在左侧边栏中,单击 “操作”,然后单击“运行器组” 。
-
在组列表中,单击要配置的运行器组。
-
在“存储库访问”下,使用下拉菜单单击“所选组织”。
- 在下拉菜单右侧,单击 。
- 在弹出窗口中,使用复选框选择可以访问此运行器组的存储库。
-
单击 “保存组”。
Changing the name of a runner group
-
导航到运行器组所在的组织的主页。
-
单击 “设置”。
-
在左侧边栏中,单击 “操作”,然后单击“运行器组” 。
-
在组列表中,单击要配置的运行器组。
-
在“组名称”下的文本字段中输入新的运行器组名称。
-
单击“ 保存”。
Moving a runner to a group
如果在注册过程中没有指定运行器组,新运行器会自动分配到默认组,然后可以移到另一个组。
-
在 GitHub.com 上,导航到组织的主页。
-
在组织名称下,单击 “设置”。 如果看不到“设置”选项卡,请选择 下拉菜单,然后单击“设置” 。
-
在左侧边栏中,单击 “操作”,然后单击“运行器” 。
-
在“Runners(运行器)”列表中,单击您要配置的运行器。
-
选择“运行器组”下拉列表。
-
在“Move runner to group(将运行器移动到组)”中,选择运行器的目的地组。
Removing a runner group
若要删除运行器组,必须首先从组中移动或删除所有运行器。
-
导航到运行器组所在的组织的主页。
-
单击 “设置”。
-
在左侧边栏中,单击 “操作”,然后单击“运行器组” 。
-
在组列表中,在要删除的组右侧,单击 。
-
若要删除组,请单击“删除组”。
-
查看确认提示,然后单击“删除此运行器组”。