Jenkins系列 - 1.开始了
先考虑什么呢?
你要拿Jenkins来做什么呢?你要用它来实现什么?你的环境是什么?需要管理怎样的集群?
通常,我们一开始有一个大概的方向,但面对的任务是模糊的,使用Jenkins,解放我们懒惰的双手,让一切按时有序的进行是我们的目的。
Jenkins能做的事情多,范围广,这一次从我公司的角度来介绍一下常见的Jenkins应用场景, 童鞋们可以考量一下需要思考的东西。
- 统一的代码库(cvs)
我司用的git, 准备repo地址,用户名,密码
- 自动构建
机制?是有代码改动就构建还是定时呢?如果是定时那么什么时间?频率?
- 构建的方式
我司java程序,采用ant构建
- 自动测试
测试用例如何执行,需要准备什么样的环境来运行Case
- 面向用户群体
manager需要一个汇总结果的report界面,而qa需要构建结束通知以及运行测试用例结果的链接
- 机器的管理
共有多少Server供CI使用?他们分别对应做什么事情?比如我司使用linux/windows各一台专门做build,然后部署artifact到其他server做test。 这样,build server的性能及存储是个需要提前准备的事情,网络的配置也要考量
- 使用Jenkins的群体
我司的CI主要是供qa使用的。开发,manager会以访客身份浏览内容。运行,owner全部由qa承担,权限设计可以在开始就有个雏形
- 结果的展现
不要以为任何不用定制的report可以满足你的老板,而一个漂亮的report少不了数据的支撑,提前考虑如何持久化你的运行结果,以符合你要求的格式
- 数据的备份
Jenkins提供备份恢复的插件。请提前考虑如何组织CI用到的脚本,把他们放在一个不易丢失(CVS)或易备份(特定的文件夹)里面
- 其他定制化内容的考量
接下来做什么呢
心中有数后,开始做最常规的工作,将你已知的资源加入Jenkins
- 配置你的server
- 让你的server们尽量不分彼此是最理想的状况。分区/路径,所装软件的版本/路径,请记住统一管理需要降低差异,这样你就不会去费时间解决在一个Server上装了jdk1.8所编译的东东到1.7的server上面用不了的尴尬问题
- 在“系统设置”里,确定全局的环境变量。
- 在“系统设置”里,确定常用工具位置。
- 添加你的server 关于怎么添加网上有很多教程,请保证同一类型的Server远程工作目录相同
不会讲述hello world
是的,这不是一个手把手从零开始的教程,接下来会介绍一些最佳实践。至于基础的东东,网上随便一搜就有啦~
comments powered by