【问题标题】:Selectively perform build tasks in a build process在构建过程中选择性地执行构建任务
【发布时间】:2011-09-21 06:01:53
【问题描述】:

我们目前正在使用 CruiseControl.NET 和 NANT 来运行我们的构建过程。它运作良好,但是,我希望能够使我为每个构建运行的任务更加精细,而无需为项目创建更多构建。

例如,举个简单的例子,如果我有一个创建构建,我想在其中执行以下任务: - 建造 - 包裹 - 部署到 QA - 构建发行说明 - 向内部系统发送通知

我不一定想在每次创建构建时都部署到 QA。此外,我不想在仅进行 QA 构建时构建发行说明并发送通知。我可以创建更多构建(创建、为 QA 创建、为发布创建),但是我想看看是否有一个构建系统可以让我在每次执行任务时从任务列表中进行选择构建。

那里有类似的东西吗,或者我可以让 CC.NET 像这样工作吗?

【问题讨论】:

    标签: continuous-integration build-process cruisecontrol.net build-automation nant


    【解决方案1】:

    查看Dynamic parameters 的 CC.NET 1.5+。

    您可以给用户一个选择,然后将值传递给您的 nant 脚本。我认为 CCtray 也支持参数,因此您可以直接从桌面触发构建并将一些值传递给它。

    【讨论】:

    • 完美。我想它必须有这样的东西,但我找不到它。谢谢!
    【解决方案2】:

    看看 Go 发布管理系统 - http://www.thoughtworks-studios.com/go-agile-release-management

    Go™ 提供了一个强大而独特的发布工作流管理系统 - 部署管道 - 可让您了解每个更改的状态,并控制从构建到测试再到发布的更改流程。

    【讨论】:

      【解决方案3】:

      我们有一个主 nant 构建文件,在 ccnet 中,我们调用这个文件并列出要执行的任务。这个 ccnet 项目被重复了几次,我们调用不同的任务并让所有任务在同一个工作文件夹中运行。我们使用 queue="ProjectX" 来确保这些项目中的任何一个都不会同时运行,并且效果很好。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-08-31
        • 1970-01-01
        • 2015-12-04
        • 2017-11-22
        • 2013-09-03
        • 2019-03-28
        • 2014-12-10
        • 1970-01-01
        相关资源
        最近更新 更多