0

我们在 Windows Server 上使用 GitHub Action Self Hosted Runners 来构建和部署私有存储库。就上下文而言,它们是 .NET 项目。

我们采用的一种模式是将工作流分解为多个作业(检查、恢复、构建、测试和部署)。其中一些作业可以并行运行,有些需要其他作业完成才能开始。

我试图在同一台机器上的同一个 Runner Group 中设置两个 Runner。我的期望:

  1. 能够同时运行多个工作流(每个工作流一个运行器)
  2. 能够同时在单个工作流中运行多个作业(每个工作流多个运行器)

Self Hosted Runners 有自己的文件夹:_work这是$Env:GITHUB_WORKSPACE要点。
当我尝试上面的 #2 时,我看到两个跑步者都在同一个工作流程上工作,但他们使用的是各自的_work文件夹。第一个运行者将检查一个 repo 到它的文件夹,第二个运行者会出错,因为它在其文件夹_work中找不到 repo 。_work

可能的解决方案:
A)将_work目录移动到两个运行者都可以访问的根文件夹
B)重新映射$Env:GITHUB_WORKSPACE每个工作流

我不相信这些解决方案中的任何一个都有效,我错过了什么?这里有更好的技术来使用多个自托管运行器吗?
如果我的第一期望是每个工作流程有一名跑步者,我什至会很高兴。

4

0 回答 0