自动化持续集成Jenkins

使用Jenkins配置自动化构建
http://blog.csdn.net/littlechang/article/details/8642149

Jenkins入门总结
http://www.cnblogs.com/itech/archive/2011/11/23/2260009.html

Jenkins + sonar 的系统,用来执行自动构建、自动部署、自动测试,代码质量评估的整套平台,用来做敏捷。
持续集成是个简单重复劳动,人来操作费时费力,使用自动化构建工具完成是最好不过的了。

后期应该搞单元测试,自动化测试,自动部署
做分布式,服务器集群的时候没有自动化工具是很难运转的
软件开发过程自动化原理及技术(完整示例)
http://www.cnblogs.com/beer/p/5005344.html
-----------------------------

持续集成 的好处,可以使用一个制造业的例子来描述:
1913年,福特将 流水线 应用到汽车组装中,第一条流水线使每辆T型汽车的组装时间由原来的12小时28分钟缩短至10秒钟,生产效率提高了4488倍!
在现代软件工业领域也需要这样:先自动化,然后持续集成,才可以实现快速迭代,以产生巨大的生产力,符合现代人对软件工程的预期。

====================================
自动化方案
1.自动化单元测试
核心函数---- 自动化 单元测试
界面功能---- 手动 功能性自测
自动化测试涉及到自动化代码的编写,这部分的额外付出成本是在 回归测试 的时候收回的,回归的次数越多,边际成本就越小。
所以只有相当稳定下来的功能才有回归的价值。

2.自动化打包构建
实现无人值守的自动化。基本上现在各种语言都有自己相应的成熟的打包构建工具。
例如:前端grunt可以完成的自动化任务有:
去除掉js源码里面的注释,压缩js,混淆js,合并文件
通过写好相应的配置文件,运行grunt的相应参数命令,可以很好地实现开发构建阶段的自动化工作流。

3.自动化发布
自动化发布的具体实现技术手段有很多种。
可以使用 Git 这样的版本管理工具,使用调用shell命令,或者第三方操作库实现代码的自动化部署。
使用Jenkins配置自动化构建。

例如:jQuery静态js发布方案使用整体文件上传到公网服务器的方式(使用fabric工具),基本流程:
扫描自动化构建的目录
使用fabric上传文件到N台指定的服务器的相应目录
使用fabric操控N台服务器设置静态文件的权限

4.自动化检测发布结果
对发布结果进行检测,一个 开环 的系统的结果往往是存在不可预知的,往往是不可信的。
特别是在远程发布的时候,网络环境稳定性、服务器的硬件配额(磁盘容量已满)、web服务器配置(权限问题)都会成为发布失败的原因。
只有形成 闭环 才会形成可靠的交付。
发布的目的不是执行发布的流程,而是最终能够让开发产出物能够提供正常的服务。

========================================
Shell、Mysql数据库入门、Http协议缓存实战Varnish,Lamp及Lnmp组合进阶管理、
自动化运维工具ansible、系统自动化部署工具cobbler、Zabbix监控工具、负载均衡集群及其应用实战(Lvs+nginx)、高可用集群及其实战(Keepalived)

zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供柔软的通知机制以让系统管理员快速定位/解决存在的各种问题。

最新文章

  1. 新开了一个ABP交流的QQ群(579765441 ),欢迎加入
  2. spring有三种启动方式
  3. tc674div1b
  4. Mybatis架构学习
  5. [原创]在Docker上部署mongodb分片副本集群。
  6. SQL Server安全(9/11):透明数据加密(Transparent Data Encryption)
  7. apache 虚拟主机详细配置:http.conf配置详解
  8. andriod fragment调用Activity函数方法
  9. WinForm AutoComplete 输入提示、自动补全
  10. DedeCMS全版本通杀SQL注入漏洞利用代码
  11. Android HttpClient GET或者POST请求基本使用方法(转)
  12. 【VMware虚拟机】【克隆问题】在VMware 9.0下克隆CentOS6.5虚拟机无法识别eth网卡
  13. Delphi获取系统服务描述信息
  14. Java设计模式(三)原型模型 适配器型号
  15. MySQL中的事务
  16. Servlet读取文件的最好的方式
  17. 动态游标(例如表名作为参数)以及动态SQL分析
  18. Linux背背背(6)
  19. 【MySQL】5.7 复制
  20. Zabbix3.0.4监控Windows的CPU使用百分比并在CPU使用率超过90%触发报警

热门文章

  1. zero-shot learning(ps:每天演好一个情绪稳定的成年人)
  2. MySQL在linux上的二进制安装方法
  3. UDR rsync
  4. 图论——topsort
  5. 洛谷P2657 windy数 [SCOI2009] 数位dp
  6. Jsoup爬虫解析
  7. myeclipse maven工程调试调试
  8. python接口测试中安装whl格式的requests第三方模块
  9. git客户端msysGit和TortoiseGit使用
  10. Winsock网络编程