gpt4 book ai didi

svn - 将 Cruise Control .NET 作为服务运行

转载 作者:行者123 更新时间:2023-12-01 01:38:14 26 4
gpt4 key购买 nike

我已经配置和测试 CCNet 一段时间了,现在使用 Virtual PC 来托管它。一切都很顺利,并决定将配置转移到服务器位置 - 这与预期的一样好。一些调整和踢,我让它像以前一样运行。

问题是我们现在需要将 CCNet 作为服务运行,但事实证明这是有问题的。

我已经配置了一个域级用户,其访问权限与我相同(毕竟,控制台应用程序已经以我的身份运行了大约 3 个月),并将服务配置为在该用户下运行。

我启动了服务,它挂了! [我不会用强制服务停止和关闭保持打开的套接字的细节来烦你]。当我最终能够再次运行控制台时,我执行了“运行方式”并输入了“cruisecontrol”用户详细信息,单击“确定”,发现通过 https 访问 SVN 时出现问题。我通过将 IE 作为“cruisecontrol”运行,导航到存储库并接受/安装证书来对它进行排序。
接下来,当我将控制台应用程序作为“cruisecontrol”运行时,它会在以下几行之后挂起:

2009-01-15 16:55:50,994 [Pepsi Webservices:DEBUG] Running Subversion with arguments : log --xml --limit 1 https://ash-dev-005.[path to trunk]


2009-01-15 16:55:51,478 [Pepsi Webservices:DEBUG] Authentication realm: https://ash-dev-005.[path to repository] Subversion Repositories

超时后,我可以关闭控制台,正常运行(即像我一样)并且运行良好。我尝试以“cruisecontrol”用户身份登录服务器并尝试运行控制台,但结果相同。

现在,事情是这样的:今天早上我以“cruisecontrol”用户的身份登录到服务器并打开了一个命令窗口。我导航到我的项目的主干并输入“svn update”并提示输入密码。

这并不奇怪,但该提示上方的行是上面的“身份验证领域:...”行!查看日志文件,果然在进程被 CCNet 杀死后,会提示输入密码。 CCNet/SVN 是否等待密码输入然后超时?如果是这样,为什么不使用配置文件中的那个?

我输入了密码,更新继续进行,没有任何问题(因此 Cruisecontrol 用户确实有权从服务器访问存储库)。我再次输入命令并且没有第二次提示所以我尝试打开一个新的命令窗口并重新运行命令 - 仍然没有提示输入密码所以我注销并重新登录(作为 Cruisecontrol)并再次尝试但仍然没有提示.

好消息是,当我以 Cruisecontrol 用户身份运行控制台应用程序时(无论是作为 Cruisecontrol 登录还是仅使用 Run As),一切似乎都没有问题。

那么我的问题是什么?
那么,为什么 CCNet 不使用配置文件中的密码?
在命令提示符中输入密码如何解决问题(并且它会持续存在)?

任何建议/见解表示赞赏。

最佳答案

嗯 - 我可能已经在这里回答了我自己的问题(或者没有,只有时间会证明)。

出于某种原因,CCNet 似乎没有在配置文件中使用凭据(不知道为什么)。当它调用 SVN 时,它会等待输入密码,即使用户看不到它,然后在没有得到密码时超时。

通过从命令行访问 SVN,密码提示是可见的并且可以输入,而且密码缓存在 %app_data%\Subversion\auth\svn.simple 中,该用户的加密文件内。这就是后续命令不提示输入密码以及控制台应用程序可以毫无问题地运行的原因。

我现在要配置 CCService,所以希望这会像控制台应用程序现在一样工作。

如果你有过类似的经历,请告诉我。与此同时,我可能会向 ThoughtWorks 提出这个问题。

关于svn - 将 Cruise Control .NET 作为服务运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/449970/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com