4

我的链接解决方案中涉及的项目是初始化数据库、导入数据库和导出数据库。如果初始化成功,则应调用“导出”。如果失败,则应调用“导入”。

      dbinit
      /     \
export       import

从逻辑上讲,这很简单;但是,由于我缺乏 Jenkins 经验,这引起了相当大的悲痛。

我查看了以下插件:

Conditional BuildStep - 这基本上会在构建中添加一个“if”语句。我对此进行了调查,认为可以将导出/导入项目协作到一个项目中,使用条件来决定采取哪种行动。如果我能够检查上游构建的条件(成功或失败),这可能会起作用

Post Build Task - 根据日志输出执行 shell 脚本。这将进入 dbinit 项目。这样做的问题是我希望将导入/导出作业与 dbinit 分开。如果我可以从外壳调用另一个工作,这将起作用

参数化触发器- 这可能是完美的。这基本上可以通过根据构建的状态决定运行哪个作业来解决问题。但是,在撰写本文时,此插件无法在 Jenkins 版本 1.481 或更高版本中正常运行。这个问题是一个月前提出的(参见错误链接,日期为 2012 年 9 月 12 日),但仍未解决,因此我仍在寻找另一种解决方案。

谁能告诉我如何克服这些插件中发现的问题?还是我忽略了另一条路线?

非常感谢,

罗里

4

2 回答 2

1

如果 jenkins 1.481 或更高版本没有给你任何你需要的东西,并且参数化触发器可以工作,那么只需使用 1.480,然后等到问题得到解决(它肯定会得到解决,这是非常受欢迎的插件)。

于 2012-10-10T06:32:38.003 回答
0

构建结果触发器对您有帮助吗?

使用 BuildResultPlugin,您可以配置 jobB 来监控 jobA 的构建结果。如果有新的构建结果符合您的条件(不稳定、失败、...),则会安排构建

于 2012-10-14T14:23:36.900 回答