前阵子好不容易搭完了基于Python unittest的接口测试框架并写完了大部分用例,手动执行OK后就开始考虑使用Jenkins进行持续自动构建了,于是又开始折腾Jenkins,这里简单做个记录吧。
一、环境
在虚拟机的Ubuntu 64 Server上搭,已经安装了apache、java 8(1.8.0_161)、python(3.5.2)、git等,并配置好了相关环境变量
二、安装
Ubuntu下安装Jenkins可以直接运行以下即可:
sudo apt update
apt install jenkins
三、配置
安装完成后,默认是使用8080端口,在客户端浏览器访问http://server_ip:8080
即可
若需要修改端口,则编辑/etc/default/jenkins
文件,修改HTTP_PORT为你想使用的端口
# port for HTTP connector (default 8080; disable with -1)
HTTP_PORT=8080
jenkins默认使用jenkins
用户运行,若有碰到权限问题,可以尝试改成root,也是修改/etc/default/jenkins
文件(我的没有修改目前也没出现什么问题)
NAME=jenkins
第一次访问jenkins时,会要你输入管理员密码,从/var/lib/jenkins/secrets/initialAdminPassword
查看、复制即可
接着便是安装插件(通常选择安装推荐的插件)、创建用户
登陆后,还可以在系统管理中进行一些全局设置及安全设置等等,这篇就先不讲那么多了
四、创建任务
点击新建任务,我的项目比较简单,直接选择
构建一个自由风格的软件项目
通用设置
之后是添加描述信息和一些通用的设置,根据自己的需要勾选
源码管理
可以选择从Git或SVN拉取项目代码,选择对应项即可
这里需要添加凭证用于登陆验证,点击Add--Jenkins添加
选择对应类型,填写验证信息,我选的是用户名密码登陆,这里只要填用户名和密码就可以了(也有其它的验证方式如SSH、密钥文件等等)
构建触发器
选择构建触发器,若是需要定时触发,则选择定时构建,schedule填写格式为
Minute Hour DayOfMonth Month DayOfWeek
0 8 * * *(表示每天8点执行一次)
0/15 * * * *(表示每15分钟执行一次)
也可以选择其它触发方式,后面有用到再研究
构建环境
配置构建环境,根据需要进行勾选
构建
设置构建步骤,这个项目只需要执行python文件,所以选择shell运行python就可以了,比较复杂的项目也可以添加多个构建步骤
构建后的操作
按需要添加构建完成后需要的操作步骤
最后点击保存就可以了
查看任务
点击任务名可以查看任务详情,可以查看代码、构建历史、修改配置等操作
点击任意构建历史可以查看该次构建的详情、包括查看控制台的输出记录
五、碰到的坑
虽然这次创建的任务简单,不过还是有碰到过坑,记录一下
1、我的虚拟机服务器除了root用户,还有一个普通用户,最初是在普通用户账号下安装的python和第三方模块,结果Jenkins构建时候一直报import error,后面切到root用户直接去跑python才发现root下没有这些模块,坑!只好在root用户下重新pip安装项目中依赖的第三方模块才解决。