【问题标题】:Jenkins automation詹金斯自动化
【发布时间】:2014-06-11 10:44:45
【问题描述】:

在 jenkins 中是否有任何方法,一旦我们检测到失败的构建,作业将 perforce 代码恢复到最后成功的构建更改列表并再次触发构建。

流动 - 1. 所以一旦我们构建失败 - 通知将发送给开发团队,可能会导致构建失败

  1. 将最近的代码恢复为上一个工作代码并提交

  2. 启动构建。

【问题讨论】:

    标签: jenkins perforce


    【解决方案1】:

    这是可能的,但我看不出有任何理由或用例这样做,因为它不是正确的工作流程并且可能会造成混淆。 但是,如果您决定这样做,则需要执行以下步骤: 示例如何使用 Perforce 源代码控制来做到这一点。 作业设置中的步骤:

    1. 在构建触发器之前,您需要保存最新的更改列表编号 $P4_CHANGELIST - 1 Jenkins 的 Perforce 插件:Perforce plugin for Jenkins
    2. 构建
    3. 获取最后一个错误代码 Get last error code from the: batch
    4. 如果代码 != 0 则签出并构建 changelsit $P4_CHANGELIST - 1

    【讨论】:

      【解决方案2】:

      Jenkins 不是生产服务器。它运行任务并且没有我知道的用于此目的的选项。

      你的源代码是什么?网络应用程序?其他的 ? 您正在执行哪些步骤? 你在执行一些自动测试吗?

      我的假设是您进行了一些可能使构建无效的测试。

      应该运行这些测试: * 在模拟服务器上以防止在您的服务器上部署 * 或其他地方

      这样,如果构建失败,则不会部署任何内容。

      如果构建成功,您可以正常部署您的项目。

      如果这没有回复您的答案,请提供所需的信息,以了解更多您的工作流程。

      【讨论】:

        【解决方案3】:

        如果您使用 Nexus 或 Artifactory 等工件存储库来管理项目工件,那么当检测到故障时,您始终可以重新部署应用程序的先前工作版本。

        您没有取消任何可能破坏构建的签入代码,但您正在保留您的测试环境。您可以配置 Jenkins 以通知签入最新错误更改集的用户,他们可以解决问题。

        Jenkins 还提供了丰富的 API,允许您删除作业、启动作业、获取有关以前运行的作业的信息。您可以利用其中一些服务以及您的工件存储库来实现您描述的体验。

        【讨论】:

          猜你喜欢
          • 2012-12-07
          • 2017-06-15
          • 1970-01-01
          • 1970-01-01
          • 2012-03-05
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-01-29
          相关资源
          最近更新 更多