-
Notifications
You must be signed in to change notification settings - Fork 1
前端持续集成之 hudson 解决方案
hui edited this page Nov 6, 2013
·
3 revisions
Hudson + weblint + totoro + cabtus + 展现平台
负责任务的执行和调度. 并根据结果做出通知.
hudson 本身的扩展机制非常强大, 而且有很多开源插件, 通过这些插件我们可以很好的完成相关任务, 下面就介绍一些我们用到的一些主要插件
- Job Dsl 批量任务创建和更新.
- Git plugin git 项目支持
- HTML Publisher Plugin 支持报告的输出(catbus.json, totoro.json)
- Gitlab Hook gitlab hook 的支持
- NodeJS Plugin 支持 NodeJs 脚本的执行和 NodeJs 的升级安装
- Email-ext plugin 邮件自定义 还有很多小的功能都是通过插件来实现的, 目前看来应该能满足我们的需求, 后续有需要我们也可以开发自己的插件.
我们目前把任务分为两大类:
-
业务job 就是我们日常产品项目
-
tools job 主要包括我们服务环境更新, 项目创建和更新需要的 job.
一个桥梁性质的工具, 他可以把我们日常用到的一些工具和 hudson 粘合起来.
weblint totoro
weblint catbus
后续可以很方便的进行扩展.
前端测试工具
前端代码质量检查工具
arale, alipay, 支付宝相关业务都是通过这个方式进行接入。 具体是通过提供一个 json 的文件, hudson 会定期分析这个文件,如果发现有新的模块加入,就会自动的创建相应的项目。具体的 json 数据可以可以参看 http://spmjs.org/repository/arale/
通过提供一个表单,和 hudson 平台打通,从而规避 hudson 过于复杂的操作。 后续也可以重新定制相关的展现页面。 目前 hudson 提供了很好的数据访问服务,我们可以很容易的拿到相关数据。