寻找一种方法 运行 池中所有自托管代理的工作流,用于 Github 操作

Looking for a way to run a workflow on all self-hosted agents in a pool for Github actions

我正在尝试 运行 所有代理的维护工作流程。 这是一个类似于“docker system p运行e”的清理工作。我希望每周日晚上在所有自托管代理(大约 12 个代理)上运行 运行s。 我注意到工作流程可以 运行 安排事件。这很棒。 但是我没有找到让所有自托管代理都进入 运行 工作流程的方法。有什么建议吗?

我认为这个问题更多是关于您的操作系统,而不是关于 GitHub 方面的工作流程。可以按照工作流程执行,但是您的代理需要在主机操作系统上,或者可以访问 Docker 套接字。 (我不知道您是如何托管它们的)。无论哪种方式,都可能不安全,具体取决于主机是否也用于其他用途。

作为 GitHub 文档 are stating,您应对您的操作系统负责。

一般来说,您可以使用 cron 安排维护工作,这可能是最常用的一种。如何安装它,取决于您的操作系统。

要添加计划的工作,运行 命令 crontab -e,select 编辑器并在末尾添加行:

0 3 * * 0 /usr/bin/docker system prune -f 至 运行 03:00 每周日上午。

但是,如果您真的想使用工作流,您可以阅读 here. 上的一些文档 它指出,“标签允许您将工作流作业发送到特定类型的自托管 运行 ners,基于他们的共同特征。”因此,您可以为每个 运行 具有不同标签的人创建特定的维护工作。这需要许多预定作业,因为 运行 用户不打算为同一作业启动多次。