【问题标题】:Does ccnet.config support changing an attribute value inside an xml file?ccnet.config 是否支持更改 xml 文件中的属性值?
【发布时间】:2014-03-06 13:05:07
【问题描述】:

我正在使用 Cruisecontrol.net 做 CI,但测试类型是在 xml 文件中配置的不是我想要的。 xml 文件如下所示:

<config>
  <Test type="A"/>
</config>

有什么办法可以把A改成B吗?

【问题讨论】:

  • 您要构建什么样的代码?点网?
  • 是的,我正在构建 DotNet 代码。

标签: cruisecontrol.net


【解决方案1】:

我会稍微改变一下心态。

将 CC.NET 视为“超级花哨的 msbuild.exe 执行器”。

将大部分逻辑写入 msbuild 文件。然后你可以很容易地找到经过验证的 XmlPeek 和 XmlPoke (XmlUpdate) “扩展任务”。

这有一些好处。如果您曾经从 CC.NET 切换到其他东西(例如 TFS),将大部分逻辑放在 msbuild (.proj) 文件中将使转换变得非常容易。

您编写的特定于 CC.NET 的“专有”任务越多,您就越深入。

我同意这个:

  1. 让 CC.NET 下载您的 .proj 文件。
  2. 让 CC.NET 执行 msbuild.exe yourfile.proj。
  3. 让 CC.NET “合并”所有生成的 xml。
  4. 让 CC.NET 运行它的“发布者”(电子邮件是最受欢迎的)

您的 .proj 文件将包含大部分逻辑。

  1. 它将拉下您的其余代码。
  2. 它将构建代码。
  3. 它将压缩文件或创建安装程序等。

这比试图让 CC.NET 做所有事情更好。

我认为没有 CC.NET xml-update 任务。

Msbuild 社区任务有~很多额外的任务来完成你想做的事情。

【讨论】:

【解决方案2】:

是的,有参数。请参阅此页面:

http://cruisecontrolnet.org/projects/ccnet/wiki/Parameters

当有人强制构建时,会弹出一个对话框,允许他们在测试类型 A 和测试类型 B 之间进行选择。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-13
    • 1970-01-01
    • 1970-01-01
    • 2016-11-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多