Jenkins 条件项目

标签 jenkins

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

      dbinit
      /     \
export       import

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

我查看了以下插件:

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

构建后任务 - 根据日志输出执行 shell 脚本。这将进入 dbinit 项目。问题是我希望将导入/导出作业与 dbinit 分开。如果我可以从 shell 调用另一个作业,这就会起作用

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

谁能告诉我如何克服这些插件中已发现的问题? 或者还有其他我忽略的路线吗?

非常感谢,

罗里

最佳答案

如果 jenkins 1.481 或更高版本不能提供您需要的任何内容,并且参数化触发器可以工作,那么只需使用 1.480,然后等待问题得到解决(肯定会得到解决,这是非常受欢迎的插件)。

关于 Jenkins 条件项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12782617/

相关文章:

node.js - 编写 Jenkins 管道共享库以发布到 Nexus NPM 存储库

jenkins - Protractor 无法作为 Jenkins Job 正确运行

ssl - Jenkins 在测试电子邮件通知时抛出 "java.io.EOFException: SSL peer shut down incorrectly"

continuous-integration - 将 SourceMonitor 集成到 Jenkins CI 系统中

curl - 使用 cURL 将 jenkins 作业从一个 View move 到另一个 View 的命令

SVN 1.8,当 SVN (1.7) 更新时,数据库已损坏 : 'sqlite: data base image malformed (S11)' , 并且重新索引不起作用'

Jenkins 中的 Python 单元测试?

python - psycopg2.errors.ConnectionFailure : SSL SYSCALL error: EOF detected

Jenkins 管道和信号量

docker - 如何配置Jenkins容器运行Maven容器以使用代理