一、Jenkins 简介
当每月发布次数变得越来越多时,如超过 200 次,发布工作人员的工作量会翻倍,此时由人工发布操作失误引起的风险会变得越来越大。为了提高项目的发布效率,也为了降低由人工操作失误带来的风险,需要引进持续集成工具。
Jenkins 是一个用 Java 语言编写的开源持续集成工具,最开始被称作 Hudson。Jenkins 在持续集成领域市场份额中居于主导地位,被各种大小规模的团队用于用各种语言实现的各类项目中,语言包括.NET、Java、Ruby、Groovy、Grails、PHP 等。选择 Jenkins 的理由如下:
易于使用:Jenkins 的用户界面简单、直观、友好,发布工作人员只需要通过简单的 UI 操作就可以替代原来繁琐的发布工作。
拥有良好的扩展性:提供数以百计的开源插件可供使用,而且几乎每周会有新的开源插件贡献进来,这些插件的安装都十分快捷和简单。
发展良好:Jenkins 开源社区的规模变得越来越大、活跃度也变得越来越高,发展速度非常快。
二、Jenkins 插件及相关工具
1、Jenkins:持续集成工具。
2、Git:源代码管理工具,是目前流行的分布式版本控制系统。需要安装的 Jenkins 插件有:
3、TFS:可选,源代码管理工具。
4、MSBuild:Visual Studio 中自带的一个程序编译组件。需要安装的 Jenkins 插件是 MSBuild Plugin 插件。
5、FTP:可选,通过 FTP 把编译好的发布文件部署到应用服务器中。需要安装的 Jenkins 插件是 Publish Over FTP 插件。
6、Jenkins 角色及权限管理:需要安装的 Jenkins 插件是 Role-based Authorization Strategy 插件。
7、Python 脚本:自写的 Python 脚本放在 Jenkins 服务器中。可以实现 Jenkins 把编译好的发布文件部署到远程应用站点服务器,以及实现回滚操作 Rollback。
8、PxExec.exe 工具:装在 Jenkins 服务器中,利用这个工具,可以在远程服务器中执行命令如 xcopy。
10、回滚操作 Rollback:需要安装的 Jenkins 插件是 Build with Parameters,用于指定哪个项目回滚到哪个备份版本。
三、Jenkins 关键配置
3.1、邮件配置
Email 是 Jenkins 最基本的通知技术。什么情况下,需要 Jenkins 发送电子邮件通知?例如,在一个构建失败(例如因为编译错误)后。
3.2、角色及权限管理
首先设置全局角色和项目角色,其中 Pattern 是用来设置构建作业名的命名规范,例如:规定了构建作业名的命名规范是{发布环境}.{产品线英文名全称}.{项目名},那么要发到生产环境、属于 Trip 产品线的所有构建作业,其 Pattern 设置的值为【(?i)prod.trip.*】,表示构建作业名必须以 prod.trip 开头,而且不区分大小写,用于发布到生产环境。
然后,分别为 Jenkins 账号分派全局角色和项目角色:
上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。