我们正在运行TeamCity。我已经将BuildAgent安装到Windows机器上,它作为服务运行。我没有在本地系统帐户下运行它,而是决定以专用用户身份运行它。过去,该机器用于构建我们的解决方案,此用户已经安装并可访问所有必需的工具。
大多数建筑和测试工作正常。但我有一些前期和后期步骤进行行政工作。这些步骤使用外部命令,如attrib和xcopy(像往常一样,位于System32中)。当使用专用用户启动时,BuildAgent无法执行这些操作。如果我将System32的完整路径添加到这些命令,它们也可以正常工作。很明显,这似乎是一个环境问题。
使用本地系统帐户启动时,将按预期执行这些步骤。 (还有其他原因不使用本地系统帐户,所以不幸的是,这不是解决办法。)
从控制台运行BuildAgent的后备工作也很好。但是,由于在使用本地系统帐户时也可以将BuildAgent作为服务运行,因此我正在寻找一种方法来修改专用用户(权限或环境),以使其能够将BuildAgent作为服务运行。
我错过了什么?
答案 0 :(得分:0)
当代理作为服务启动时,请检查PATH变量是否包含正确的值。您可以考虑使用cmd.exe / c
包装对该工具的调用