Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。
开发第一步、提交第二步、编译第三步、测试第四步、发布第五步
有了Jenkins的帮助,在这5步中,除了第1步,后续的4步都是自动化完成的,具体的,当你完成了提交,Jenkins会自动运行你的编译脚本,编译成功后,再运行你的测试脚本,这一步成功后,接着它会帮你把新程序发布出去,特别的,在最后一步,你可以选择手动发布,或自动发布,毕竟发布这件事情,还是需要人为的确认一下比较好。
Jenkins简单使用介绍
1. 下载地址:
Jenkins的官方网站:http://jenkins-ci.org/
目前最新版本的Windows版:http://mirror.xmission.com/jenkins/windows/jenkins-1.504.zip
2. 安装
Windows版的安装方式,直接按照安装包提示即可。此版本自带服务器,安装之后,就可以直接访问。
如果下载的是.war文件,可以用tomcat进行配置。并且安装java,使用Java -jar jenkins.war命令。
3. 启动服务
在服务中,启动jenkins。
4. 访问
使用 http://localhost:8080/ 访问,默认端口为8080,可以修改。
二、权限
1. 插件管理
Jenkins提供了大量的插件,其中在对用户进行管理配置这块推荐使用“Role-basedAuthorization Strategy”
如下图在“系统管理”界面下,点击“管理插件”进入插件安装界面。Jenkins的插件安装管理配置都很简单,通过web直接全能搞定。
插件管理界面如下图所示:
勾选需要的插件,到页面最下面有两个按钮“Install without restart” “Download now and install after restart”,根据需要点选提交开始安装。
2. “Role-basedAuthorization Strategy”的启用:
点击“系统管理”点击“系统设置”,如下图所示:“安全域”选择使用Jenkins专有用户数据库,可以在初始化的时候勾选“允许用户注册”,以后为了安全,请关闭该项;“授权策略”选择使用“Role-Based Strategy”。
配置完成save后在“系统管理”下新增选项“Manage and Assign Roles”。点击“管理用户”新建账户后即可进行账户,群组的安全策略配置。
3. 管理组权限设置,构建权限设置:
点击“Manage and AssignRoles”,先选择“Manage Roles”如下图所示,在Global roles这里创建权限分组,如admin是最高管理员权限,拥有所有权限,readonly只有读权限等,这里可以根据具体情况设置多个分组,不同权限;然后设置“Project roles”,Role to add 填写分组名称,Pattern填写分组的规则。例如这个分组叫test,他的规则就是构建名为“test.*”的所有构件,然后在“Job”区里勾选相关权限。设置完成点保存即可。
4. 用户权限分配:
点击“Assign Roles”如下图所示,在“Global roles”下“User/group to add”栏中输入添加的用户名,然后勾选管理组。记得把默认的匿名用户“Anonymous”的默认admin权限去掉,在添加管理员之后,否则不需登录就能控制整个Jenkins的权限;在“Project roles”下“User/group to add”栏中输入添加的用户名,然后勾选对应构建权限名。设置完保存即可。
三、创建Job
1. 创建
点击新Job,输入一个job名称,选择一个项目的类型。
Job的一些属性配置
源代码管理可以与一些SVN等代码管理软件,直接管理
构建时候的命令,一般简单的命令可以使用批处理即可,当然也支持脚本语言。
建议每个命令集中,语句不要太多,或太过复杂。如果很复杂可以使用脚本语言,或写成批处理文件,进行调用。
构建后操作,可以完成之后发送邮件,生成文档,运行下一个构建项目等操作。比如创建一些可以分布进行的项目。
2. 开始构建
Job建立好之后,在界面上就,能够选择该项目了。点击该项目进入,项目操作界面。可以进行立即构建,构造中项目前面的圆点在闪烁。停止闪烁,构建完成。
3. 构建完成
构建完成后,如果前面的圆圈是蓝色,说明构建成功,如果是红色或黄色,说明构建失败或有问题。可以点击build History中,本次任务的链接,进行查看本次构建的详情。
4. 查看错误
在详情界面中,点击控制台输出,可以看见一些编译过程中的信息,可以在其中发现构建错误的原因。
Jenkins安装和配置
一、作用
项目中一直在用Jenkins,但自己对这部分的开发参与的不是很多,最近准备毕设的时候才开始慌了,倒腾了大半天,之前也有人问我,就准备整理了下相关知识,也便以后回顾。
我们在做项目的时候简单来说一般会有这五个步骤,开发—》提交—》编译—》测试—》部署。人工的流程走就是把项目同步到Git,再用 SSH 登录服务器把项目pull下来,再migrate数据库,运行单元测试和迁移静态资源,项目每天都会有若干个commit,在多人开发中带来许多的不便。
Jenkins管家
为了减轻人为的操作,就可以使用Jenkins来对项目进行持续集成。它可以帮你在写完代码后,一键完成开发过程中的一系列工作,就比如上面五个步骤中,除了第一步,后续的四步都可以自动化完成。具体的,当你完成了提交,Jenkins会自动运行你的编译脚本,编译成功后,再运行你的测试脚本,这一步成功后,接着它会帮你把新程序发布出去,完成部署。
Jenkins是一个持续集成工具,如大家所说相当于一个调度平台,如果你的目的只是自动化部署的话,直接自己写脚本或者用Ansible、Salt、Puppet、Chef、Fabric等自动化部署工具就行如果你是想在job中加入自动话部署流程的话,可以先写好自动化部署脚本然后在Jenkins构建任务的Execute Shell中调用相应的Script。
重复单一易出错的操作将慢慢被机器所取代,具体到软件开发中就是,每次打包送测等操作是可以交给机器去自动执行的。以前打包给测试的流程是,测试拿了好几个手机过来,开发一一安装,然后送给测试慢慢测试。使用了持续集成之后将变成,开发本地提交代码,Jenkins等持续集成工具监测到代码变化,自动编译打包,生成开发包,测试直接拿着开发包安装测试即可。Jenkins做的操作其实很简单,它只是将我们平时做的每一步重复的操作自动化了而已。
二、安装(ubuntu16.04)
Jenkins是开源的,使用Java编写的持续集成的工具
首先需要先安装Java,再执行以下步骤
添加LTS版本PPA
$ wget -q -O - http://pkg.jenkins-ci.org/debian-stable/jenkins-ci.org.key | sudo apt-key add -
$ sudo sh -c ‘echo deb http://pkg.jenkins-ci.org/debian-stable binary/ 》 /etc/apt/sources.list.d/jenkins.list’
更新源并安装Jenkins
$ sudo apt-get update
$ sudo apt-get install jenkins
安装后,Jenkins默认在8080端口上启动,如果8080被用,可以配置其他,比如配置为8088
编辑 /etc/default/jenkins 并更新HTTP_PORT到8088。
HTTP_PORT=8088
启动Jenkins服务
$ sudo service jenkins start
关闭Jenkins服务
$ sudo service jenkins stop
这时已经安装成功,可以在浏览器访问localhost:8088
首次进入,首先要输入一个密钥来进入Jenkins,密钥可以在 /var/lib/jenkins/secrets/initialAdminPassword 获取
复制命令行的密码粘过来
选择相应的选项来安装插件,选择系统推荐即可
installplugins.png
会有失败的情况,我搜了下,说不影响,很多由于从国外的网站下,失败很正常,直接进行下一步,后面也可以再安装
接下来可以为Jenkins设置一个管理员帐户,以后就可以用它登录到Jenkins了
填写即可
Jenkins安装向导成功完成后,就可以看到这个页面啦
weblcome.png
三、安装插件
Jenkins提供了非常多的插件,几乎你想要的插件全有,前提是你能找的到~官网提供了插件搜索功能,选择Plugins页就可以各种搜索了。
manage jenkins
plugins
search plugins
安装完成之后重启Jenkins
这里推荐我们使用的几个插件
要用Jenkins对项目进行持续集成,首先要在插件管理中下载好Github Plugin,使得Jenkins能操作Github中的仓库
Dashboard插件可以用来定义自己的Jenkins主页 Dashboard View
homepage.png
Wall display 用来将jobs的状态更加直观地显示在大屏幕上。
display
Jenkins内置的邮件功能,它可根据构建的结果,发送构建报告,给当前的committer (用git做代码管理) Email Extension Plugin 的配置
开发人员build project 之后,build结果无论是成功还是失败,都要及时的通知组内其他成员了解最新情况,邮件通知这时候就派上用场作者:半生不熟_链接:http://www.jianshu.com/p/1a7f46896c40來源:简书著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
评论
查看更多