我知道我知道。到处都有一百万个线程在讨论映射驱动器的问题。我已经准备好其中的许多,但我似乎仍然可以解决这个问题或找到解决方案。
我有一个构建服务器/持续集成服务器(运行 CruiseControl.NET 的 Win 2003),它监听我们的源代码控制服务器。当检测到更改时,构建服务器会获取新代码,对其进行编译、测试,如果成功,则将文件复制到我们的 Web 服务器之一。有 6 个 Web 服务器 - 3 个 Windows 2003 盒子,3 个 LAMP 盒子。每个操作系统都有一个单独的开发、登台和生产箱。所有 6 个 Web 服务器都映射到构建服务器上的不同驱动器。我有一个 Windows 启动脚本,它调用了一些“NET USE”命令,这些命令为部署做好了准备。
CCNET 是监听 SVN 的服务。然而,CCNET 调用 NAnt 来执行所有的实际处理和任务(编译、测试、复制)。
当我手动映射驱动器并手动运行 NAnt 脚本时,一切正常。当启动脚本映射驱动器并且 CCNET 触发 NAnt 时,驱动器无处可寻。我认为问题与用户帐户有关。CCNET 在 LOCAL SYSTEM 帐户下运行。我不知道启动脚本在哪个帐户下运行。显然手动执行在我的帐户下运行。
最奇怪的是,在过去的某些时候,一切都运行良好。我不确定发生了什么变化。如何使映射的驱动器对所有用户和服务可见?(此外,欢迎对此设置/过程的任何部分提出任何其他批评)