我链接的解决方案涉及初始化数据库、导入数据库和导出数据库。
如果初始化成功,则应调用“导出”。如果失败,则应调用“导入”。
逻辑上来说很简单;然而,由于我缺乏Jenkins经验,这给我带来了相当大的困扰。
我看过以下插件: 条件构建步骤 - 基本上是将一个“if”语句添加到构建中。我使用这种想法进行了调查:将导出/导入项目合并为一个项目,使用条件来决定采取哪种行动。如果我能够检查上游构建(成功或失败)的条件,那么这个方案可能可行。 后置构建任务 - 根据日志输出执行shell脚本。这将进入dbinit项目。但问题在于我希望将导入/导出作业与dbinit分开。如果能从shell中调用另一个作业,那么这个方案就可以实现。 参数化触发器 - 这可能是完美的。这将基本上通过根据该构建的状态来决定运行哪个作业来解决问题。然而,在撰写本文时,此插件与Jenkins版本1.481或更高版本不正确地执行。这个问题在一个月前提出(请参见error link,日期为2012年9月12日),但仍未得到解决,因此我仍在寻找另一种解决方案。
dbinit
/ \
export import
逻辑上来说很简单;然而,由于我缺乏Jenkins经验,这给我带来了相当大的困扰。
我看过以下插件: 条件构建步骤 - 基本上是将一个“if”语句添加到构建中。我使用这种想法进行了调查:将导出/导入项目合并为一个项目,使用条件来决定采取哪种行动。如果我能够检查上游构建(成功或失败)的条件,那么这个方案可能可行。 后置构建任务 - 根据日志输出执行shell脚本。这将进入dbinit项目。但问题在于我希望将导入/导出作业与dbinit分开。如果能从shell中调用另一个作业,那么这个方案就可以实现。 参数化触发器 - 这可能是完美的。这将基本上通过根据该构建的状态来决定运行哪个作业来解决问题。然而,在撰写本文时,此插件与Jenkins版本1.481或更高版本不正确地执行。这个问题在一个月前提出(请参见error link,日期为2012年9月12日),但仍未得到解决,因此我仍在寻找另一种解决方案。
有人可以告诉我如何克服这些插件中的任何已识别问题吗? 还是我忽略了其他路线?
非常感谢,
Rory