Jenkins是一个持续集成服务器,能够代替人进行很多复杂枯燥重复性的工作,是一个优秀的自动化构建工具。
下载地址:http://jenkins-ci.org/,选择Windows的native package进行下载。安装过程与所有的windows安装程序一样,简单和傻瓜。不说了。
安装完成之后会自动创建一个windows服务:jenkins,默认使用的端口是8080,在安装了jenkins的机器上打开http://localhost:8080/,看到类似下面的界面(这里我创建了两个job),说明jenkins已经安装成功。
如果需要修改默认的端口,打开安装目录下的jenkins.xml文件,修改
从Jenkins首页进入到“系统管理”-->“管理插件”,点击“可选插件”,在右上角搜索“Git”,勾选Gitplugin, GitHubPlugin ,GitClientPlugin,RobotFrameworkplugin,点击“立即安装”。如果你的git仓库是private的还需要安装SSHSlavesplugin , SSHCredentialsPlugin ,否则git不成功,有的版本已经默认装了这些。
我们启动Jenkins服务的这台机器在Jenkins里叫做master,而其他的连到master上的机器(物理机、虚拟机都可以)都是slave,也叫节点。
点击“系统管理”——>“管理节点”,就看到如下界面(我已经添加了一个slave节点,叫作Mylaptop):
点击“新建节点”,输入节点名称“192.108.1.100”,并选择“Dumb Slave”,点击“OK”,将出现下面的页面:
上图有几个需要注意的地方:
a、executors:表示在slave上可以并行执行几个线程,也可以点后面的问号看说明。建议设置为1。
b、远程工作目录:在slave上创建jenkins工作目录的路径,我一般设置为C:\jenkins。
c、标签:可以给slave加上一个或多个标签,通过标签选择slave。
d、启动方法:启动slave的方法,推荐选第二个Launch slave agents via Java Web Start。
注意:如果是用来执行RF自动化测试案例的slave,严禁选择windows service的方式,否则后果自负。
设置好之后点保存。如图:
点击新建的slave节点,将显示下面的页面:
切换到准备作为slave的机器上,在浏览器中输入jenkins服务器的地址,例如:http://{jenkinsIP}:{port}/computer/,点击对应的slave节点进入页面(页面和上图一样)。
点击图中的launch按钮,他会提示你下载该文件slave-agent.jnlp。按照提示下载该文件,并保存在本地。为了能成功launch这个slave,要确保下面两点:
1、将slave-agent.jnlp用notepad打开后,确认其中的URL是可用的Jenkins地址。这个文件的内容可能像下面这样:
http://jenkins:8080/computer/192.168.1.100/">Slave Agent for 192.168.1.100 Jenkins project http://jenkins:8080/jnlpJars/remoting.jar"/> e529e13fd41accb41186aabdf5fa49eb37b3d5c50018353e600634b994f46027 192.168.1.100 -url http://jenkins:8080/ -url http://10.86.12.66:8080/
要把其中的url换为jenkins服务器的地址http://{jenkinsIP}:{port}
2、另外,slave-agent.jnlp 是用javaws来运行的,因此slave机器上必须安装java并设置好环境变量。
现在,我们在slave-agent.jnlp点击右键,选择“Launch”。之后会弹出一个页面:
如果上面的正常的话,过一会几分钟后,这个界面应该就会变成下面的界面,就是多了一个File菜单,下拉这个File菜单就有一个选项他会提示你是否想设置为一个自启动的服务。可能将当前的slave设置成一个服务,每次机器重启的时候都自动启动slave服务,这样就不能每次都去启动这个slave agent了。
上面的操作我们都是在匿名用户下进行的设置,上面设置的前提是我们没有在jenkins的系统管理-->Configure Global Security ,没有勾选“启用安全”。
如果勾选了“启用安全”,一定要进入系统管理 -> Configure Global Security 中给anonymous用户的slave部分的设置权限,否则jenkins slave agent的窗口中显示Connected一会之后有可能出现了Terminated的状态。
现在我们的jenkins环境就搭建好了。我们进入到jenkins的节点管理里面,可以看到刚才添加的slave节点已经没有红色的叉叉了。