【转载:https://www.cnblogs.com/code-juggler/p/9177805.html】
1. 准备环境
首先,需要jdk是必须要安装好的。本人使用的linux是centos,直接使用yum安装。
先找到合适的版本://至少1.8
yum search java | grep jdk
然后运行安装:
yum install 合适版本全称
安装maven(看个人使用的项目构建工具自行选择)
yum install maven
安装git(看个人项目管理工具自行选择)
yum install svn
2. 安装jenkins
前期准备工作结束后,就可以安装jenkins了。安装jenkins其实非常简单。首先下载jenkins的安装包。传送门:https://jenkins.io/download/ 。 按照自己的系统选择下载。
centos的下载后,是一个rpm包。选择合适路径存放并进行安装即可。本。然后启动服务:
root@CC-54373D ~]# rpm -ivh jenkins-2.195-1.1.noarch.rpm
warning: jenkins-2.195-1.1.noarch.rpm: Header V4 DSA/SHA1 Signature, key ID d50582e6: NOKEY
Preparing... ########################################### [100%]
1:jenkins ########################################### [100%]
[root@CC-54373D ~]# service jenkins restart
Shutting down Jenkins [FAILED]
Starting Jenkins [ OK ]
启动后,输入http://localhost:8080,然后按照指导安装即可。其中,插件的选择,建议按照自选,选择自己需要的插件安装。 至此,jenkins就安装成功了。
访问时如下图,需要等待一会准备就绪,进入后续配置页面:
3. 关于插件
个人用到常用的几个插件,在此说明一下。
3.1 Locale Plugin
配置成中文,需要用到Locale Plugin插件,下载地址:https://updates.jenkins-ci.org/download/plugins/locale/
3.2 Publish over SSH
如果你部署的项目跟jenkins不在同一台机器上,那么你会用到这个插件的。该插件就是通过ssh将打包好的文件发布到远程服务器上,并执行命令。该插件的详解以及使用方法官方文档比较详细,传送门:https://wiki.jenkins.io/display/JENKINS/Publish+Over+SSH+Plugin 。
在这里说一下个人碰到的问题。图文并茂形式:
3.3 Role-based Authorization Strategy
如果团队使用jenkins,那你肯定需要做权限管理的。不同项目组的人员只能编辑、构建不同项目组的项目。这个插件就是这个功能。
首先,安装该插件。然后想要使用,需要先在全局安全配置中选择安全策略:
按如下图选择:
选择完之后,系统管理下,就会多出如下图的选项:
进入后,如下释义:
其中内部配置不再多少,只说一点,角色管理:
project roles是要配置的项目角色,角色新增时,可以按照正则表达式模糊匹配项目。如图,个人比较喜欢该种匹配模式:.*(?i)xxx.* 。释义: .* 为任意个字符,(?i)为后边的字符忽略大小写。这样就可以按项目名特点,分组配置角色。具体配置可看官方文档:https://wiki.jenkins.io/display/JENKINS/Role+Strategy+Plugin
4.内置环境变量
使用区分:Windows:%BUILD_ID%,Linux:${BUILD_ID};如果在linux下出现获取不到的问题,可能是版本太旧,可以尝试下$BUILD_ID的写法
5. 其他
1. jenkins执行完后,会杀死该build id启动的进程。因此,如果不想启动脚本被干掉,可以再shell中将build id给改掉,这样jenkins就找不到了,嘿嘿。。。
BUILD_ID=DONTKILLME
2. 接入RobotFramework后,打开报告失败:Opening Robot Framework log failed
临时解决方案
jenkins系统管理—>运行命令行,在文本里输入
System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "")
点击运行就可以解决,但是jenkins重启的话这个就需要再次输入
彻底解决方案
方法一:在之前的启动方式:java -jar jenkins.war,现在需要加上一些参数
windows系统:
java -Dhudson.model.DirectoryBrowserSupport.CSP= -jar jenkins.war
mac和linux:
nohup java -Dhudson.model.DirectoryBrowserSupport.CSP= -jar jenkins.war &
用了nohup,这样不用担心进程窗口关闭Jenkins也关闭的问题。
方法二:
修改jenkins.xml如下
<arguments>-Xrs -Xmx256m -Dhudson.model.DirectoryBrowserSupport.CSP= -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar "%BASE%jenkins.war" --httpPort=8080 --webroot="%BASE%war"</arguments>