詹金斯条件部署

时间:2015-05-28 11:39:49

标签: maven svn deployment jenkins jenkins-plugins

我正在使用Jenkins创建夜间构建并将它们部署到我的maven存储库。为了减少开发人员的日常带宽,我想更改部署逻辑,以便仅在检测到参考我们最新部署的更改时才部署它。

我发现一些看起来很合适的插件,但由于我不太介入Jenkins的使用能力,我想问一下是否有“简单”的方法来实现它?

在执行部署过程之前,我考虑过一些简单的测试: 检查项目代码或依赖项中是否有更改

=> NO:那么什么都不应该部署

=>是:部署新版本

我只是在Conditional BuildStep插件上搞砸了。但我不确定这个插件是否适合我们的方法。我不想弄乱整个配置。

仅供参考:我使用的是Jenkins 1.608,Tortoise SVN和deploy-Plugin 1.1

非常感谢每一个答案和帮助!

1 个答案:

答案 0 :(得分:0)

  • 将您的工作设置为每晚运行(当前配置)
  • 设置条件构建步骤(shell或批处理,取决于您的操作系统),它将检查存储库中的修订号,并与工作区中的当前修订号进行比较。
  • 如果不高,请退出构建。
  • 如果更高,继续照常建造

修改
为了避免构建甚至被触发,这是一个理论上的解决方案。

  • 安装 Poll SCM Now 插件,这将立即添加"民意调查"按钮到作业,轮询SCM的更改。如果发现了更改,则会触发构建,否则不会发生任何事情。
  • 为匿名用户配置轮询权限(否则您需要在后续步骤中实施登录/令牌)
  • 将作业配置为不经常轮询SCM(例如一年一次)
  • 为夜间计划配置cron作业(或Windows中的计划任务)
  • 让cron / task执行curlwgethttp://JENKINS_URL/JOB_URL/poll