Jenkins - 构建步骤之间的条件

时间:2011-05-16 14:05:57

标签: build hudson build-automation jenkins

我想使用Jenkins构建一个Maven项目。但是,只有在SVN存储库中的某个文件发生更改(并包含特殊键)时才必须构建项目。

所以我的计划是创建一个包含两个构建步骤的作业:

  • 第一步执行检查“条件”的shell或python脚本。

  • 第二步是实际的Maven构建

如果步骤1中的条件检查返回“true”,则必须调用第二步。

是否有可能这样做?好吧,如果条件不满足,我想我可以在第一个脚本中返回退出代码1。这将立即停止构建,但作业将标记为“失败”。因此,这不是一个好主意,因为红色图标会让我的用户感到恐慌; - )

有关此问题的其他想法吗?

干杯, 弗兰克

1 个答案:

答案 0 :(得分:3)

我们使用自己的Jenkins设置做类似的事情。

我们有一个"触发器"定期监控SVN的工作。当SVN发生更改时,触发器作业将执行其构建步骤。其中一个构建步骤检查代码的某些方面,并决定构建是否必要。如果有必要,它使用CURL来启动" build"项目。 "构建" project获取源代码并进行构建 - 它不需要弄清楚它是否需要构建 - 它总是这样做。

将两个任务分开也可以轻松触发手动构建,而不必担心应该构建逻辑并且停止构建。