我遇到了一个问题,我可以将项目添加到CC.rb完全正常但是当我启动该服务时,每次检查Subversion以获取更新版本时,我都会收到“拒绝访问”消息。
我正在运行--trace并从项目的工作目录中运行它正在尝试的确切命令:
svn --non-interactive log --limit 1 --revision HEAD:1 --verbose --xml
会导致回复按预期恢复。
有人能指出我正确的方向吗?
更新
移动到http为https似乎是很多头痛的根源,但这没有帮助。
我还攻击了源代码,用上面的命令传递了我的用户名和密码,这也没有帮助。
答案 0 :(得分:1)
如果您使用SSL,则运行该脚本的用户帐户具有SSL的缓存证书权限。
这适用于cruisecontrol.net,这是一种在Windows中作为非常特定的用户运行的服务。您可能需要弄清楚ruby.exe的模拟规则,以确定它是作为网络服务运行,还是可以让它自己运行。
这是一个关于如何使cc.rb作为Windows服务运行并且行为类似于cc.net的链接,尽管重量仍然较轻。抱歉错误链接它实际上在nabble,你需要cygwin。
答案 1 :(得分:0)
如果您使用最新版本的CruiseControl.rb从他们的git repo中取出,它应该可以解决您的问题(至少它对我有用)。
git命令是:
git clone git://rubyforge.org/cruisecontrolrb.git
如果您在Windows上运行,则可能需要安装git。你可以在这里获得msysgit:http://code.google.com/p/msysgit/downloads/list
希望这有帮助。
答案 2 :(得分:0)
自从我使用CruiseControl.rb以来已经有一段时间,但我确实记得它使用存储在机器上的通用凭据来验证/访问SVN存储库。这很好,因为它们不需要每次都输入,但是当其中一个开发人员(或其他一些进程)使用与CruiseControl所期望的不同凭据连接到该机器的SVN repo时会引起很多麻烦。您可以查看是否发生这种情况。我相信这可能已在最新版本中修复,或者至少在队列中作为功能/错误修复。