一尘不染

詹金斯看不到映射的驱动器

jenkins

尝试在Jenkins中执行构建时出现以下错误:

Started by user anonymous
Building in workspace C:\Users\mryan\git\AML
[AML] $ cmd /c call C:\Users\MRYAN~1.ASA\AppData\Local\Temp\hudson3772834793680550098.bat

C:\Users\mryan\git\AML>asc-tree -v cs1 . 
Array @filter_prune missing the @ in argument 1 of push() at C:\asc\asc\win2k/asc-tree. line 293.
asc-tree.: ASC (=Z:\asc) is not a directory!
Build step 'Execute Windows batch command' marked build as failure
Finished: FAILURE

当我打开普通的命令提示符并运行相同的命令(asc-tree -v cs1)时,它可以正常工作。

我在这里查看了一下并尝试在我的环境变量中使用UNC表示法,而不是“
Z:\”,但这给了我与计算机名称而不是驱动器相同的错误。

我还尝试过更改服务以使用我的帐户“登录”详细信息而不是“本地系统帐户”,但这似乎没有实现。

有人有什么想法吗?


阅读 224

收藏
2020-07-25

共1个答案

一尘不染

按照这个答案,我设法使其正常工作。

解决方案可以在Aspera支持的文章中找到:如何将网络共享永久映射到驱动器中的Windows服务

解:

为了将网络共享映射到驱动器中并可以在Windows服务中访问,您需要以NT AUTHORITY \ SYSTEM帐户登录。

为此,请从Microsoft下载Sysinternals Suite,并将其解压缩到目录C:\
TEMP。以下步骤假定您已将SysInternals解压缩到C:\ TEMP,并且所有可执行文件都在其中。

  1. 以管理员身份启动命令提示符。
  2. CD \TEMP
  3. psexec -i -s cmd.exe
    这将启动一个新的命令提示符窗口,并应在该新窗口中执行步骤4。
  4. net use Z: \\servername_OR_IP\sharedfolder /u:username /persistent:yes
    提供有权访问共享文件夹的用户的凭据。

  5. 根据Microsoft的文章:分配计算机启动脚本,创建一个在计算机启动时运行的脚本,其中只有第4行。

2020-07-25