如何通过Jenkins和SVN实现持续交付

问题描述:

我正在阅读连续交付,或承诺源控制目录触发CI构建的原理/实践,如果构建失败,则所有开发都会冻结,直到提交者修复为止问题,重新提交并修复构建。我真的,真的是喜欢这种心态。如何通过Jenkins和SVN实现持续交付

我们使用詹金斯我们的CI服务器和SVN的SCM(这是公司规定的“标准”技术,所以随着技术的选择,在这里没有余地)。

我想知道如何才能做到这一点。我已经为Jenkins安装了Subversion插件和Tagging Subversion插件,但是没有看到我可以在哪里设置SVN触发器来启动构建,并且这两个插件的文档都没有表明它们甚至具有此功能。

甚至有一次我明白这一点,我需要一种方法来冻结SVN在构建失败的情况下(让其他开发商不保持代码检查和重新触发构建失败)。

我在这里问太多了吗?或者我只是错过了正确的插件?提前致谢!

+0

当上了答案有帮助吗? – 2012-04-17 14:20:30

Subversion插件包含有关如何使用它的内联帮助。转到作业配置 - >源代码管理 - >检查颠覆。您将看到Subversion插件的表单条目,单击表格条目旁边的?标记。

冻结编译:我不认为你应该靠硬“锁”(如SVN触发阻止提交)。通过Email-Ext Plugin,您可以配置发送各种构建事件的电子邮件。例如,Jenkins可以通过电子邮件发送给'匪徒'(人员,他们的提交违反了构建)。根据我的经验,有人应该不时检查构建系统,以检查谁破坏了构建并“ping”它们。

我需要一种方法来冻结SVN在构建失败

的情况下,虽然我认为这是不好的做法,但......口味可不同。防止犯的防弹方法是

预提交挂钩运行之前提交交易 提升到一个新的修订。通常情况下,这个钩子是用来保护 对那些不允许因内容或位置提交(例如, 您的网站可能需要将所有承诺一定的分支包括bug跟踪一个 票号,或者传入日志消息 是非空的)。

如果pre-commit钩子程序返回一个非零值,所述 提交将中止,提交事务被移除,以及任何 打印到标准错误返回到客户端。在成功打造

  • 其中,与詹金斯互动,返回非零退出代码和描述性文本,同时建立失败,零