1

我正在尝试评估 ccnet,我浏览了许多教程/博客,其中详细描述了如何安装 ccnet。然而,他们中的大多数假设 CruiseControl.NET 安装在 Subversion 存储库所在的同一台机器上,或者它是一台服务器机器。
我想知道ccnet是否可以安装在非服务器机器上并预先配置subversion?

4

3 回答 3

3

当然,这不是将 CCNet 安装在服务器上或与存储库相同的机器上的要求。

CCNet 可以作为控制台应用程序或 windows 服务运行,两者都可以在 windows、windows 服务器和带有 Mono 的 linux/mac 上运行。

因此,CCNet 使用本地应用程序进行源代码控制操作(例如 svn.exe 或 git.exe),它还支持与其源代码控制应用程序相同的远程存储库功能。因此,您的 Subversion 存储库可以位于您的 CCNet 机器可以访问的任何地方。

我建议您阅读我们 wiki 中的场景部分

于 2013-07-25T06:18:31.927 回答
2

我永远不会将我的 CC.NET 安装在与我的 SVN 存储库相同的机器上。但这就是我。

  1. 对于本地测试,您可以运行命令行版本,而不是服务。这很有帮助,因为控制台输出实际上可以让您在它运行时了解一些事情。(您在该服务中找不到任何东西,但看到它“正在进行中”很酷)。

  2. 当您安装 CC.NET 时,我会将其安装在“干净”的机器上。我喜欢使用 CC.NET 的方式是把它想象成一个“花哨的 msbuild 包装器”。您的 CC.NET 将从存储库中提取代码,我也喜欢从 svn 中提取 .msbuild 定义文件(意思是,您将其存储在那里),然后让 cc.net 使用“msbuild.exe”任务。您使用的自定义 cc.net 任务越少越好。如果您将 99% 的构建逻辑放入 .msbuild 文件中,那么即使您离开 CC.NET 转而使用 TFS,也不会搞砸自己。

3. 是的,它必须能够在某个身份下“与”SVN“对话”。这个身份需要读(也许写)权限给 SVN。但从 SVN 中提取代码的是身份(帐户)。如果您的源代码是计划的(很可能是计划的),那么您可能必须使用 svn.exe 执行一些命令调用,以“接受(p)永久证书,使用运行 CC.NET 服务的 IDENTITY。

  1. 您可能需要安装一些依赖项。我不会安装 Visual Studio 200x 或 20xx。根据需要下载并安装 SDK 和其他东西。保持构建机器“干净”。记录您安装的内容。
于 2013-07-29T15:39:14.727 回答
1

让 CC.NET在与开发人员相同的环境中运行是一种很好的做法。所以有一个用于 CC.NET 的标准 Win7x64 操作系统很好地反映了开发环境。

CC.NET 可以配置为访问远程或本地 Subversion 存储库,具体取决于您设置的svn 配置

所以答案是:是的!

于 2013-07-29T13:40:26.270 回答