首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何利用Jenkins和SVN实现连续交付

如何利用Jenkins和SVN实现连续交付
EN

Stack Overflow用户
提问于 2012-03-23 15:31:30
回答 2查看 1.7K关注 0票数 0

我正在阅读连续交付,或者说提交源代码控制目录会触发CI构建的哲学/实践,如果构建失败,那么所有的开发都会冻结,直到提交者修复问题、重新提交和修复构建。我真的,真的很喜欢这种心态。

我们使用Jenkins作为CI服务器,SVN用于SCM (这些是公司指定的“标准”技术,因此这里没有技术选择的余地)。

我在想我怎么能做到这一点。我已经为Jenkins安装了Subversion插件和标记Subversion插件,但是我不知道在哪里可以设置SVN触发器来启动构建,而且这两个插件的文档都没有表明它们具有这种功能。

即使我弄明白了这一点,我也需要一种方法来在构建失败时冻结SVN (这样其他开发人员就不会一直签入代码并重新触发失败的构建)。

我在这里要求太多了吗?还是我只是错过了正确的插件?提前感谢!

EN

回答 2

Stack Overflow用户

发布于 2012-03-23 15:51:29

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

冻结构建:我认为您不应该依赖硬“锁”(例如防止提交的SVN触发器)。使用电子邮件-Ext插件,您可以配置为在各种构建事件上发送电子邮件。例如,Jenkins可以将电子邮件发送给‘罪犯’(人员,其提交破坏了构建)。在我的经验中,应该有人不时地检查构建系统,检查谁破坏了构建并“ping”他们。

票数 1
EN

Stack Overflow用户

发布于 2012-03-24 10:31:22

如果生成失败,我需要一种冻结SVN的方法。

虽然我认为这是很糟糕的做法但是..。口味可能会不同。防止提交的防弹方法是

  • active 预提交钩 (我自己使用的重点)

预提交钩子是在提交事务提升到新的修订版之前运行的。通常,此钩子用于防止由于内容或位置而不允许的提交(例如,您的站点可能要求所有提交到某个分支的都包括来自bug跟踪器的票证号,或者传入的日志消息是非空的)。 如果预提交钩子程序返回一个非零退出值,则提交将被中止,提交事务将被删除,并且输出到stderr的任何内容都会被封送回客户端

  • 通过与Jenkins的交互,返回非零退出代码和描述性文本,而生成失败时返回零,在成功构建时返回零。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9842004

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档