Jenkins介绍
随着软件开发复杂度的不断提高,团队开发成员之间如何更好地协同工作以确保软件开发的质量已经成为开发过程中不可回避的问题。尤其是近些年来,敏捷(Agile)在软件工程领域越来越火,如何在不断变化的需求中快速适应和保证软件的量显得尤其重要。
Jenkins
持续化集成(Continuous Integration,简称 CI)正是针对这类问题的一种软件开发实践。它倡导团队开发成员必须经常集成他们的工作,甚至每天都可能进行多次集成。而每次的集成都是通过自动化的构建来验证的,包括自动编译、发布和测试,从而尽快地发现集成错误,让团队成员能够更快地开发内聚的软件。下面以笔者经历的项目为例进行描述。首先,解释一下集成。我们所有项目的代码都是托管在 SVN 服务器上的。每个项目都要有若干个单元测试,并有一个所谓的集成测试。集成测试就是把所有的单元测试运行一遍,以及进行其他一些能自动完成的测试。只有在本地计算机上通过了集成测试的代码才能上传到 SVN 服务器上,这样可以保证上传的代码没有问题。所以,集成就是指集成测试。再说持续。不言而喻,持续就是指长期对项目代码进行集成测试。既然是长期,那么肯定是自动执行的,否则人工执行没有保证,而且耗费人力。对此,需要有一台服务器,它会定期地从 SVN 中检出代码并编译,然后运行集成测试,每次集成测试结果都会记录在案。完成这个工作的就是下面要介绍的 Jenkins 软件。当然,它的功能远不止这些。在我们的项目中,执行这个工作的周期是 1 天。也就是说,服务器每天都会准时地对 SVN 上的最新代码自动进行一次集成测试。
持续交付(Continuous Delivery)指的是频繁地将软件的新版本交付给质量团队或用户以供评审。如果评审通过,代码就进入生产阶段。持续交付可以看作持续集成的下一步。它强调的是不管怎么更新,软件是随时随地可以交付的。持续部署(Continuous Deployment)是持续交付的下一步,指的是代码通过评审以后,自动部署到生产环境。持续部署的目标是,代码在任何时候都是可部署的,可以进入生产阶段。持续部署的前提是能自动化完成测试、构建、部署等步骤。Jenkins,原名 Hudson,2011 年改为现在的名字,它是一个基于 Web 界面平台开源的、可扩展的持续集成、交付、部署(软件/代码的编译、打包、部署)的工具。Jenkins 能实时监控集成中存在的错误,提供详细的日志文件和提醒功能,还能用图表的形式形象地展示项目构建的趋势和稳定性。
Jenkins 官方网站的网址是 https://jenkins.io/。Jenkins 官网文档的网址是https://jenkins.io/doc/。
在线安装,执行命令等待,安装完成。
yuminstall jenkins -y
1.2 配置JDK
首先需要有JDK.
打开配置文件,添加本地JDK路径至配置文件中,如下图
vi /etc/init.d/jenkins
1.3 修改配置
如修改端口,用户等;默认端口是8080,用户是jenkis
打开配置文件,修改端口(根据自己需要);修改用户为root(即不为jenkis创建用户)
vi/etc/sysconfig/jenkins
1.4 重新加载启动服务
重新加载
重启线程brsystemctl daemon-reload
重启jenkins服务
systemctlrestart jenkins
1.5 检查Jenkins服务状态
systemctlstatusjenkins
启动成功如下图:
2. 首次登陆配置
2.1 管理员密码获取
根据修改的端口,进行访问。访问成功后如下图:
输入如下命令查看密码
more /var/lib/jenkins/secrets/initialAdminPassword
复制该密码填入文本框即可,点击继续
2.2 安装插件
选择安装推荐的插件,下一步,等待安装完成即可,中途若出现失败,多安装几次,或者直接跳过,进行系统再安装也行。插件安装成功后,进行用户创建界面
2.3 设置第一个用户
设置完成后,点击保存并完成。
2.4 示例配置
Jenkins安装教程(图文)
1.在线安装
执行命令查看密码:
cat /var/lib/jenkins/secrets/initialAdminPassword
插件安装选择推荐插件:
插件安装完成以后将会创建管理员账户:
点击保存并完成,就可以使用Jenkins了。
二、配置
1. 设置中文
1)安装插件 — Locale plugin
2)添加zh_CN
点击系统管理 —> 系统设置 —> 找到Locale设置:
2. 重新构建
1)Rebuilder 重新构建
2)Safe Restart 安全的重启Jenkins
3. linux注册到Jenkins上
Jenkins使用心得