使用不同代理的 TeamCity 多步构建
TeamCity multiple step build using different agents
我们刚刚扩展了我们的 TeamCity 足迹,因此我们现在有多个代理 运行 在不同的服务器上(它们过去都在同一台服务器上)。
我们 运行 遇到的问题是在具有多个步骤的构建过程中,其中最后一步取决于上一步创建的工件。似乎所有的构建步骤都没有使用同一个代理。因此,当 Build Agent 1 在 C:\BuildAgent\work5e028597a0a18d\src\\obj\octopacked 中创建工件时,最后一步似乎无法找到它,因为最后一步似乎在另一个代理 Build agent 2 上 运行 ,当然在那台服务器上没有那个工件。
我是否只需要为工件使用 UNC 路径,还是我在这里遗漏了什么?我认为一个构建配置将始终使用相同的构建代理,但似乎并非如此。
如有任何帮助,我们将不胜感激。
此致,
点开发
如果您正确发布构建工件,那么不同的代理将能够正确解析它们。我的直觉是它们没有被发布,或者它们可能也没有被正确使用。
1. 确保您使用以下字段发布您的工件,但正如我所见,您使用的是 Octopack,那么这应该会自动发布。可能还值得检查标志 /p:OctoPackPublishPackagesToTeamCity=false
是否未在编译步骤
中作为构建参数传递
2. 在依赖构建配置中,确保您正确使用工件
这将确保 .nupkg
在启动此构建配置的代理的工作目录中可用。如果不存在,请查看生成工件的步骤以确保它已发布。
希望对您有所帮助
我们刚刚扩展了我们的 TeamCity 足迹,因此我们现在有多个代理 运行 在不同的服务器上(它们过去都在同一台服务器上)。
我们 运行 遇到的问题是在具有多个步骤的构建过程中,其中最后一步取决于上一步创建的工件。似乎所有的构建步骤都没有使用同一个代理。因此,当 Build Agent 1 在 C:\BuildAgent\work5e028597a0a18d\src\\obj\octopacked 中创建工件时,最后一步似乎无法找到它,因为最后一步似乎在另一个代理 Build agent 2 上 运行 ,当然在那台服务器上没有那个工件。
我是否只需要为工件使用 UNC 路径,还是我在这里遗漏了什么?我认为一个构建配置将始终使用相同的构建代理,但似乎并非如此。
如有任何帮助,我们将不胜感激。
此致,
点开发
如果您正确发布构建工件,那么不同的代理将能够正确解析它们。我的直觉是它们没有被发布,或者它们可能也没有被正确使用。
1. 确保您使用以下字段发布您的工件,但正如我所见,您使用的是 Octopack,那么这应该会自动发布。可能还值得检查标志 /p:OctoPackPublishPackagesToTeamCity=false
是否未在编译步骤
2. 在依赖构建配置中,确保您正确使用工件
这将确保 .nupkg
在启动此构建配置的代理的工作目录中可用。如果不存在,请查看生成工件的步骤以确保它已发布。
希望对您有所帮助