我正在使用 ArtifactDeployer 插件将构建作业工件部署到远程位置(Windows 共享 SMB)。然而,詹金斯从未成功过。抛出错误,例如:
[ArtifactDeployer] - 从操作后开始部署... [ArtifactDeployer] - [错误] - 部署失败。无法创建目录...构建步骤 [ArtifactDeployer] - 将工件从工作区部署到远程目录的构建结果更改为 FAILURE
本地部署工作正常。
Jenkins 机器操作系统是 Windows 7 32 位 Prof. Jenkins 使用本地系统帐户作为服务运行。
我尝试使用另一个帐户,我的用户帐户,但服务无法启动(Windows 错误 1069:由于登录失败,服务没有启动)。网络服务帐户确实运行了,但 Jenkins 抛出了无法访问 .NET 框架的错误。
手动尝试远程复制时,效果很好。我可以创建目录并写入它。当然是在同一台机器上。
我在 Jenkins 中尝试了两种不同的远程引用:1) \\targetdirectory 2) I:\ - 通过将驱动器号映射到 Windows 中的远程目录没有成功...
有什么提示或建议吗?谢谢!
2012 年 2 月 15 日更新:仍然没有解决此问题的解决方案或解决方法。这不仅是插件,我还使用“执行 Windows 批处理命令”遇到了这个问题。我发现了一个我想分享的错误报告。
解决方案
我找到了解决方案。您必须授予域中计算机的访问权限,而不是该计算机的用户。如果你回头看,这似乎很合乎逻辑。
第二种解决方案是使用域用户帐户运行服务。上面我使用本地用户.\user
而不是DOMAIN\user
.