1

我正在使用 TeamCity(Win XP 上的 8.0.3)在 DOS 命令 shell 中简单地执行 VBS 脚本文件。该脚本与 SVN 交互以从各种存储库中导出各种文件并将它们放置到本地计算机上的某个位置。

当我在 DOS 命令外壳(即在 TeamCity 之外且独立于 TeamCity)中“手动”运行此脚本时,该脚本可以成功执行而不会出现问题。在与 SVN 的交互方面,脚本只是执行svn export命令,我不提供--usernameor --password。如果需要凭据,则 SVN 将强制我输入这些凭据,以便脚本在 DOS 窗口中继续执行,它确实如此。显然,在此 Windows 将缓存凭据之后,以便下次我选择运行此脚本时,它会正常工作,因为我假设它已经知道凭据。

现在,鉴于 TeamCity 服务器和 TeamCity 代理与我手动运行脚本时位于同一台计算机上,因此当 TeamCity 执行该脚本时,该脚本将不起作用。

特别是,脚本在尝试执行svn export命令时立即挂起

svn export -r HEAD "PATH_TO_FILE_IN_SVN_REPO" "PATH_TO_FILE_ON_LOCAL_MACHINE"

我试图在我的脚本中添加--non-interactive我的SVN export命令,但这只是给了我

svn:'[subversion-url]'的选项:授权失败:无法对服务器进行身份验证:拒绝基本质询(http://[subversion-host])

根据我的调查,我认为该脚本是由 TeamCity 使用另一个名为“默认用户”的用户执行的,该用户位于“C:\Documents and Settings\Default User\”下,当我尝试在该用户下手动运行脚本时,然后脚本挂起,当我按下 时Ctrl+C,我可以看到脚本正在等待我的用户帐户 AD 密码。

我试图强制 TeamCity 使用我本地缓存的 Windows 凭据,但无济于事。

请帮忙!!我在这里没有想法:|

提前致谢。

4

0 回答 0