我的链接解决方案中涉及的项目是初始化数据库、导入数据库和导出数据库。如果初始化成功,则应调用“导出”。如果失败,则应调用“导入”。
dbinit
/ \
export import
从逻辑上讲,这很简单;但是,由于我缺乏 Jenkins 经验,这引起了相当大的悲痛。
我查看了以下插件:
Conditional BuildStep - 这基本上会在构建中添加一个“if”语句。我对此进行了调查,认为可以将导出/导入项目协作到一个项目中,使用条件来决定采取哪种行动。如果我能够检查上游构建的条件(成功或失败),这可能会起作用
Post Build Task - 根据日志输出执行 shell 脚本。这将进入 dbinit 项目。这样做的问题是我希望将导入/导出作业与 dbinit 分开。如果我可以从外壳调用另一个工作,这将起作用
参数化触发器- 这可能是完美的。这基本上可以通过根据构建的状态决定运行哪个作业来解决问题。但是,在撰写本文时,此插件无法在 Jenkins 版本 1.481 或更高版本中正常运行。这个问题是一个月前提出的(参见错误链接,日期为 2012 年 9 月 12 日),但仍未解决,因此我仍在寻找另一种解决方案。
谁能告诉我如何克服这些插件中发现的问题?还是我忽略了另一条路线?
非常感谢,
罗里