Jenkins|简单Job配置|启动脚本|测试报告
1、Jenkins安装
操作环境:Ubuntu
jenkins针对windows,ubuntu,MacOS平台都提供了安装包,但是个人觉的还是没有通用Java包(.war)好用。下载地址:https://jenkins.io/download/ 。启动方式:
java -jar jenkins.war
启动成功后,在浏览器地址栏中输入:http://localhost:8080/ 。然后根据提示输入初始密码,创建管理员用户。最后等待插件安装完毕即可,这个过程比较长,耐心等待,如果出现网络原因导致安装失败,重试即可。
2、Jenkins启动脚本
jenkins启动方法:java -jar jenkins.war。jenkins停止方法:查询jenkins的进程ID,然后kill。重启则是先停止在启动,如果停止,启动次数频繁的话,这些操作很麻烦。为此下面先编写启动脚本,根据传入的参数执行分别执行启动,停止,重启操作。·
[ 1、jenkins启动脚本 ]:Jenkins.sh
#!/bin/bash
args=$1
jenkinsWarPath="/home/stephen/downLoad"
function isRuning(){
local jenkinsPID=`ps -ef|grep jenkins|grep -v grep|awk '{print $2}'`
if [ -z ${jenkinsPID} ];then
echo "0"
else
echo ${jenkinsPID}
fi
}
#停止jenkins
function stop(){
local runFlag=$(isRuning)
if [ ${runFlag} -eq "0" ];then
echo "Jenkins is already stoped."
else
`kill -9 ${runFlag}`
echo "Stop jenkins sucess."
fi
}
#启动jenkins
function start(){
local runFlag=$(isRuning)
echo "${runFlag}"
if [ ${runFlag} -eq "0" ];then
`/usr/bin/java -jar ${jenkinsWarPath}/jenkins.war &` > /dev/null
if [ $? -eq 0 ];then
echo "Start jenkins sucess."
exit
else
echo "Start jenkins fail."
fi
else
echo "Jenkins is running row."
fi
}
#重启jenkins
function restart(){
local runFlag=$(isRuning)
if [ ${runFlag} -eq "0" ];then
echo "Jenkins is already stoped."
exit
else
stop
start
echo "Restart jenkins sucess."
fi
}
#根据输入的参数执行不同的动作
#参数不能为空
if [ -z ${args} ];then
echo "Arg can not be null."
exit
#参数个数必须为1个
elif [ $# -ne 1 ];then
echo "Only one arg is required:start|stop|restart"
#参数为start时启动jenkins
elif [ ${args} = "start" ];then
start
#参数为stop时停止jenkins
elif [ ${args} = "stop" ];then
stop
#参数为restart时重启jenkins
elif [ ${args} = "restart" ];then
restart
else
echo "One of following args is required: start|stop|restart"
exit 0
fi
Jenkins.sh 运行结果:
stephen@stephen-K55VD:~/quikStart$ ./Jenkins.sh start
5265
Jenkins is running row.
stephen@stephen-K55VD:~/quikStart$ ./Jenkins.sh stop
Stop jenkins sucess.
stephen@stephen-K55VD:~/quikStart$ ./Jenkins.sh restart
Jenkins is already stoped.
stephen@stephen-K55VD:~/quikStart$ ./Jenkins.sh start
0
4月 21, 2019 5:46:50 下午 org.eclipse.jetty.util.log.Log initialized
信息: Logging initialized @2698ms to org.eclipse.jetty.util.log.JavaUtilLog
4月 21, 2019 5:46:50 下午 winstone.Logger logInternal
信息: Beginning extraction from war file
3、节点配置
在系统管理-->节点管理下新建节点,配置节点名称,远程工作目录,远程主机ip以及认证信息,我这里执行的是Python脚本,java相关的无需配置。
4、任务配置
jenkins首页新建任务,输入名称,选择:构建一个自由风格的软件项目。在Restrict where this project can be run的label处输入上一步骤创建的节点名称并回车。
选择定时构建,配置时刻表。时刻表共有五个参数,分别表示:分钟,小时,天,月,星期。 H/02 * * * * 表示每隔两分钟执行一次任务。
MINUTE HOUR DOM MONTH DOW
MINUTE Minutes within the hour (0–59)
HOUR The hour of the day (0–23)
DOM The day of the month (1–31)
MONTH The month (1–12)
DOW The day of the week (0–7) where 0 and 7 are Sunday.
build处选择添加build step -->执行shell:填写要执行的命令名称。
BuildTest.sh脚本的作用是从github上拉取测试代码并执行,内容如下:
#!/bin/bash
buildPath="/home/stephen/buildTest"
if [ -e ${buildPath} ];then
cd ${buildPath}
rm -rf ${buildPath}/*
else
mkdir -p /home/stephen/buildTest
fi
git clone https://github.com/Slience007/pyunitest.git
python3.6 ${buildPath}/pyunitest/run.py
执行已经配置完成的任务:点击任务名称,点击立即构建。任务运行完毕后,点击console output,运行结果如下:
5、集成HTML测试报告
Jenkins首页,系统管理-->插件管理页面安装插件:HTML Publisher plugin,Groovy,Startup Trigger。插件安装成功后,编辑已经配置好的任务,Add Build step添加系统级别Groovy脚本。添加如下命令并保存。
System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "")
Post-build Actions选择插件HTML Publisher plugin,配置HTML测试报告的路径,文件名称和显示名称。如下图所示。
保存上述配置,立即构建任务,点击测试报告,查看结果:
Jenkins|简单Job配置|启动脚本|测试报告的更多相关文章
- HBase配置&启动脚本分析
本文档基于hbase-0.96.1.1-cdh5.0.2,对HBase配置&启动脚本进行分析 date:2016/8/4 author:wangxl HBase配置&启动脚本分析 剔除 ...
- Spark配置&启动脚本分析
本文档基于Spark2.0,对spark启动脚本进行分析. date:2016/8/3 author:wangxl Spark配置&启动脚本分析 我们主要关注3类文件,配置文件,启动脚本文件以 ...
- Redis 3 在CentOS 6.5上安装笔记,含启动脚本
Redis的强大就不多说了,直接上菜. 第1步:下载.编译.安装 cd /opt wget http://download.redis.io/releases/redis-3.0.5.tar.gz . ...
- hadoop启动脚本
记录一下一个简单的hadoop启动脚本 就是启动zookeeper集群,hadoop的HDFS和YRAN的脚本 start-cluster.sh 关于关闭的脚本,只需要顺序换一下,然后将start改为 ...
- Jenkins的安装、启动和配置
一.Jenkins的安装 1.前提条件:已经成功安装了JDK,因为jenkins是一款基于Java的持续集成工具. 2.准备工具:下载一个jenkins的war包. 3.启动方法:如把jenkins. ...
- (转)mysql5.6.7多实例安装、配置的详细讲解分析及shell启动脚本的编写
一.mysql安装 1.下载mysql数据库源码包: wget http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.27.tar.gz 2.安装mys ...
- Jenkins简单入门:下载-安装-配置-构建
Jenkins简单配置流程 官网下载地址:https://jenkins.io/index.html 1.下载安装Jenkins (1)点击Download Jenkins进入下载页 (2)根据自己运 ...
- gitlab6 nginx配置和启动脚本
gitlab6 nginx配置和启动脚本 cheungmine 2013-10 最近把gitlab安装到了ubuntu12.04.3的虚拟机上了.参考: https://github.com/gitl ...
- Centos 配置开机启动脚本启动 docker 容器
Centos 配置开机启动脚本启动 docker 容器 Intro 我们的 Centos 服务器上部署了好多个 docker 容器,因故重启的时候就会导致还得手动去手动重启这些 docker 容器,为 ...
随机推荐
- Java 读书笔记 (四) 常量
常量在程序运行时不能被修改. 在Java中使用final 关键字来修饰常量 ,声明方式和变量类似: final double PI=3.1415927 常量名也可以用小写,但为了便于识别,通常使用大写 ...
- Java8-6-Predicate接口详解
转自https://segmentfault.com/a/1190000012256677 Predicate函数式接口的主要作用就是提供一个test方法,接受一个参数返回一个布尔类型,Predica ...
- Elasticsearch笔记五之java操作es
Java操作es集群步骤1:配置集群对象信息:2:创建客户端:3:查看集群信息 1:集群名称 默认集群名为elasticsearch,如果集群名称和指定的不一致则在使用节点资源时会报错. 2:嗅探功能 ...
- python接口自动化(二十四)--unittest断言——中(详解)
简介 上一篇通过简单的案例给小伙伴们介绍了一下unittest断言,这篇我们将通过结合和围绕实际的工作来进行unittest的断言.这里以获取城市天气预报的接口为例,设计了 2 个用例,一个是查询北京 ...
- SSRS报表服务随笔(rdl报表服务)-报表数据:使用第三方控件生成条形码
因为工作需要,需要将订单号显示成条形码,比如数据库存储的20190106A,我需要把这个转换为Code128来显示出来 在国内我没有找到这方面的教程,最后还是一个人自己摸索出来的 在这里我是使用的是B ...
- centos7开放端口和防火墙设置
centos7开放端口和防火墙设置. 查看防火墙状态: firewall-cmd --state 如果显示: not running 打开防火墙服务: systemctl start firewall ...
- Mybatis增删改查,Demo整合
第一步:MyBatis的Jar包引入mybatis-3.2.7.jarmysql-connector-java-5.1.8.jar MyBatis的pom.xml依赖 <dependencies ...
- Unity 用ml-agents机器学习造个游戏AI吧(1)(Windows环境配置)
前言:以前觉得机器学习要应用于游戏AI,还远得很. 最近看到一些资料后,突发兴致试着玩了玩Unity机器学习,才发觉机器学习占领游戏AI的可能性和趋势. Unity训练可爱柯基犬Puppo 机器学习训 ...
- 你需要知道的这几种 asp.net core 修改默认端口的方式
一般情况下,aspnetcore发布后的默认端口是5000,这个大家都知道,而且默认骨架代码中没有看到任何让你输入的ip地址和端口号,但作为程序员的我们,不希望 被框架所管制,那如何实现默认端口的修改 ...
- 一文助您成为Java.Net双平台高手
写在前面:本文乃标题党,不是月经贴,侧重于Web开发差异,或细节或概述,若有不对之处,还请各位读者本着友好互助的心态批评指正.由于博客园中.Neter较多(个人感觉),因此本文也可以作为.Neter到 ...