版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Jenkins发布机优化及权限控制操作手册版本号:1.0刘良金二一四年七月编印关于本文档主题发布机优化及Jenkins权限控制操作手册说明本文档用于详细阐述平台发布机优化操作,实现各系统、各环境“一键发布”的配 置过程,以提高架构组工作效率的目的;Jenkins配置基于角色的项目权限,提高基于Jenkins+maven+svn版本的相对安全性。适用对象管理人员:项目总监、部门经理、项目经理、质量经理、技术经理;开发人员:程序员、测试员、文档员;发布员:版本发布员、Jenkins管理员;修订历史版本早节类型日期作者说明1.01、2C2014-7-8刘良金说明:类型一创建(C)、修改(U)、删除(
2、D)、增加(A);第一章Jenkins 简介1.1 Jenkins 简介Jenkins是一个CI工具。它可以根据设定持续定期编译,运行相应代码;运行UT或集成测试;将运行结果发送至邮件,或展示成报告,这样做的最终目的是:让项目保持健康的状态。如果任何Checkin Break 了 Build,每个人都会在最短的时间内通知到,然后问题被Fix。接下来的开发将建立在一个健康正确的基础上,而不是任由问题累积,最后失控。Jenkins和Cruisecontrol都是CI工具,二者在CI中发挥的作用完全一致。 而Jenkins作为新一代的CI工具,渐渐开始取代 Cruisecontrol。二者都是jav
3、a程序,但:1. Jenkins提供更为友好的用户界面,而Cruisecontrol在界面方面糟糕的几乎等于没有。2. Jenkins内置的功能提供了极大的便利,不论是新建一个build,还是日常使用,你需要做的大部分时候仅仅是在用户界面上点击而已。在Cruiseco ntrol 新建build是通过创建config.xml来完成的。它仅仅提供非常有限的功能,很多时候 你会发现,需要自己完成很多工作。3. Jenkins作为一个欣欣向荣的开源项目,有大批的Plugin。当你发现需要一个Jenkins本身并不提供的功能是,搜索一下Plugin,总会有收获。非常多的流行工具如 JBehave,Co
4、bertura 都提供 Jenkins 插件。而针对 Cruisecontrol的 Plugin却很少。4. Jenkins友好的用户界面让学习成本很少,可以在最短的时间内开始工作。1.2 Jenkins管理员帐号Jenkins已经集成安装在 0.221服务器上,访问地址如下:21:8083/je nkins/目前维护的帐号有:序号用户名密码备注1admi n管理员2admi n管理员3prod管理员4zhangsan生产(prod)环境发布帐号5zhangsan生产(prod)环境发布帐号6lishitest和stage发布帐号需要Jenkins帐号的可以邮
5、件系统组开通。第二章Jenkins Job 管理2.1 Jenkins欢迎页面用admin管理员帐号登录系统后,首页显示如下:Jciikuis"MEi A jj im Mi|uj(|THE: dM-Bii ijuqII .f l£U« 11 It Ji首页显示分为三个功能模块区:1. 功能权限菜单;2. 任务状态;3. Job列表;2.2 创建 Job Build点击左上角"新Job ",出现界面如下:mi1填写任务名称,例如"test_build ”,选中"构建一个 maven2/3项目”,点击"ok”,出现界面
6、如下:选择jdk配置、源码管理选择"Subversion ”,填写SVN Repository URL,例如:“EC-TEST 表示prj/pom.xml "(相对于svn地址库中的位置),“ Goals and opti ons ”填写为“ clea n in stallsvn :/79/zt-ecommercial/projects/bra nch/EC-TESTEC工程分支,这里根据实际情况修改,在Build“ ROOT POM填写pom.xml文件路径表示项目构件,填写完毕后点击“保存”保存Job。说明:填写完svn路径后需要输入用户名密码 使
7、用mp'svn.mp该账号;2.3 执行 Job Build点击Job “ Name查看Job基本信息,如下图所示:在Job列表中点击立即构建执行Build,如下图如示:Prcjact t«st_buildE二昨怦怛斗暑二匚左肘Ixi直£匪;,1 如 Q .时亍I 7 i 】ia_ iK *8忙 jl! “ L,:UM 齐(宙8 Tu"。.3蛊1勺口1力矿宵fcjyt*鼻第聘点击 Build History可以查看 Build Log 。2.4 创建 Job Deploy点击左上角“新Job ”,选中“构建一个自由风格的软件项目”,点击“ok”,选择jdk
8、配置、源码管理选择“ None",在构件中选择“ Execute shell ”,在Comman(中填写Shell脚本例如:ssh ztds2 'bash -x -s' < /home/cyl/testDeploy.sh保存Job。sh脚本表示通过ssh方式在远程服务器上执行脚本testDeploy.sh 文件。testDeploy.sh脚本范例如下:#!/bi n/shsource /home/ztds/.bash_profiletomcat_pid='/usr/sbi n/lsof -n -P -t -i :8080'#
9、根据端口号监听进程ID-n "$tomcat_pid" && kill -9 $tomcat_pid#kill Tomcat 进程curren t_date=ROOT.'date +%Y-%m-%d'cd /home/ztds/tomcat7/webappscp -f -r ROOT /home/ztds/backup/$curre nt_date#以当前日期备份工程rm /home/ztds/tomcat7/webapps/ROOT.war#删除原有工程rm -fr /home/ztds/tomcat7/webapps/ROOT#删除原有工
10、程scpcvl21:/home/cvl/.je nki ns/jobs/prodbuild/workspace/applicati on s/steel/web/target/ec.war /home/ztds/tomcat7/webapps/ROOT.war#远程拷贝新Build工程cd /home/ztds/tomcat7/bi n/./startup.sh >/dev/null 2>&1 &#启动Tomcat并退出说明:1. 脚本中的端口和路径根据实际环境修改;2. 发布服务器(221)用户(cyl)和远程服务器用户(ztds)必须建立双
11、向ssh免密码登 录服务,此步骤系统组协助完成;3. testDeploy.sh脚本文件上传到发布服务器(221) /home/cyl/路径下;4. testDeploy.sh上传后,执行 dos2unix testDeploy.sh 转码;第三章用户权限控制3.1 Jenkins角色管理由于Jenkins默认的权限管理体系不支持用户组或角色的配置,因此需要安装第三发插件来支持角色的配置,本文将使用Role Strategy Plugi n 。it用管理员帐号登录 Jenkins,"系统管理”->“ Manage and Assign Roles ”页面:点击Manage Ro
12、les,进入角色管理页面:Jeiikiusn Manago and Assignaf*»| - uh «屯 Hr dWUHUM*可以创建全局角色、项目角色,并可以为角色分配权限。Managa and Assign Rolesrnlr51i廿LTEGfa 自 Fier*££*旦 ccnJtRmac*l taud 一&ILE 口corrl-gLro7 adrriri巫 12 匕曰 13 口 E E E E S « _JrL3LKba-鬣 h pvs- mcE4 CT-P r- n2 呆3B0r 1B0f 0 -'diiLlEl回厲呂
13、“1 1巳庄书衣 (Pllmd.*ulBU 尽如rt*«W 11ip Nd旳ru.m如上图,分别创建了admin、jobRead两个全局角色,EC-prod、EC-stage、EC-test三个项目角色。项目角色与全局角色的区别就是,项目角色只能管理项目,不能管理Jenkins的权限配置。添加项目角色时,需要制定匹配项目的模式,如上图中的Pattern,官方文档介绍该选项支持正则表达式,如"prod. ”表示所有以prod开头的项目,“(?i)prod.* ”表示以prod开头的项目并且不区分大小写,如以ABC开头的项目可以配置为"prod|prod.* &quo
14、t;,也可以使用"test|stage|prod ”直接匹配多个项目。3.2创建用户在分配角色之前需要先创建用户。在系统管理页面点击“管理用户”进入管理用户页面:Users|h IUMf 1#4WTZzW"*八*恒垃關z®1-Uz®£O£z®:jndz®on g inc:TSji * a jq Mi Xm*:h odu fiorwia iij£c.-=crM£>d uM-ri nBdh |u* itaA ktthi c&nviix on iKna kiJrsx liiai ac-d
15、ir>£i :mXstm* A&U % KK£«4Sign up点击新建使用者可以创建新用户,如果之前有项目与scm版本管理系统(如svn、git等)连接并获取源码构建过,Jenkins会从svn中读取到一些用户信息,可以在查看用户菜单中看到下图的这些用户:駅aw I* r- a H .J:2T3. 电 HiLiav川户-common点击用户id或名称都可以修改用户信息。3.3 分配角色(Assign Roles )K.BFManage and Assign liH i丄#話話9在Man age and Assig n Roles 页面选择 Assi
16、g n Roles 可以为用户分配所属角色,可以分配全局角色和项目角色:Global roesUser/groupadminjobRead ad minI s 1E 1參 ecadmin团O JaB圍j鮭 liuliangjina >2yB画d罔 1AnonymousHE寸User/ffnoup to addFrojct rol亡eUser/groupEC-prodE-stageEC-t«stu fengchao1HQ些 liulingjinVHB1住I2YJH7An onymousEB 'User/group to addSlave r«l
17、7;Add ser/groijp,Anonyrnous L*User/grou口 to addApplyAa<j如上图,将不同的用户分别分配给不同的角色,这样用户就可以具有角色所拥有的权限。第四章深入了解该插件从2011年10月发布1.1.2版本后就不再维护了,因此会有一些小问题,但不影响使用,比如在分配角色后点击保存按钮时有可能会发生异常,浏览器点击后退按钮后重新提交就可以操作成功。另外如果配置失败导致不能登录,可以通过修改配置文件恢复初始设置。首先了解一下配置文件。进入Jenkins安装目录,用户配置信息和角色配置信息都以配置文件的形式存储。上图中users目录存放了各个用户的配置信息,每个用户都会创建与用户名相同的文 件夹,文件夹中包含 con fig.xml文件。如果发生用户不能登录的情况,可以尝试以下几种方法解决:1、方法1删除用户相关的目录;修改 $Je nkin s_home/c on fig.xml文件:<useSecurity>
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年职业技能生态环境监测专业技术员知识考试题库与答案
- 山东省滨州市(2024年-2025年小学五年级语文)人教版阶段练习(上学期)试卷及答案
- 2024年教育技术:20加减法的课件开发
- 《接触网施工》课件 4.4.2 接触线中心锚结安装
- 2024年展望:未来汽车发展趋势
- 文书模板-延迟解冻申请书
- 2023医院卫生院临床技能操作手册
- 2024年新解:复数的几何意义
- 《壶口瀑布》教案设计:2024新思路
- 2024年春季服装设计原理教案
- 浙江省温州市地图矢量PPT模板(图文)
- 上海市建设工程项目管理机构管理人员情况表
- 北师大版二年级数学上册第九单元《除法》知识点梳理复习ppt
- 空气能室外机保养维护记录表
- DB37∕T 5162-2020 装配式混凝土结构钢筋套筒灌浆连接应用技术规程
- 9-2 《第三方过程评估淋蓄水检查内容》(指引)
- 部编版七年级初一语文上册《狼》公开课课件(定稿)
- 2015路面工程讲义(垫层+底基层+基层+面层+联合层+封层、透层与黏层)
- 《现代汉语修辞》PPT课件(完整版)
- TTJCA 0007-2022 住宅室内装饰装修工程施工验收规范
- 构造柱工程施工技术交底
评论
0/150
提交评论