有没有一种方法可以在 GitHub Actions 中禁用 GitHub 托管的 runner?

6

由于安全原因,我们需要明确禁用 GitHub 托管的 Runner,最好是针对整个组织。请问有什么方法可以做到吗?

3个回答

0

在安装runner时,会部署一个名为svc.sh的脚本以及其他脚本。

您可以使用以下命令手动停止runner:

$ sudo ./svc.sh

Usage:
./svc.sh [install, start, stop, status, uninstall]
Commands:
   install [user]: Install runner service as Root or specified user.
   start: Manually start the runner service.
   stop: Manually stop the runner service.
   status: Display status of runner service.
   uninstall: Uninstall runner service.

## Stopping the runner would be
$ sudo ./svc.sh stop

如果您使用ansible控制您的运行配置,则可以根据要求自动化选择性运行器的设置。


0

我曾经也有同样的担忧。我想出了一个主意(还没有实践过),但这个方法有些麻烦...

对于任何在.github/workflows/*.yaml中的内容,都要检查yaml文件,确保其中包含自建的信息;如果没有,则拒绝合并/提交。


self-hosted 是默认标签,自托管的 Runner 可以被赋予其他标签或通过 Runner 组进行定位。最好检查是否存在像 ubuntu-latestwindows-latest 这样的托管标签。 - undefined

0
我们需要明确禁用 GitHub 托管的 Runner。
答案似乎是否定的。您无法禁用 GitHub 托管的 Runner
您只能控制已添加到组织或企业的更大的 Runner 的访问权限
但这仅适用于 GitHub 团队或 GitHub 企业云计划,并且更大的 Runner 功能目前正在组织和企业的测试版中。

对于 自托管 的运行器,您可以选择以下方式:


删除(作为“停用”表单)/重新创建 GitHub runner:

由于似乎没有一个全局设置,您可能需要编写一个脚本过程,该过程将:


停止并禁用启动自托管 Runner 的服务

但这不适用于 GitHub 托管的 Runner。


我不想删除自托管的运行程序。 - Sl4dy
@Sl4dy 我理解:我没有看到直接禁用它的方法,因此我的建议是这样的。 - VonC

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接