【Jenkins】配置及使用|参数化|邮件|源码|报表|乱码

目录

一、Jenkins

二、Jenkins环境搭建

1、下载所需的软件包

2、部署步骤

3、其他

三、Jenkins全局设置

[(一)Manage Jenkins------Tools系统管理->全局工具配置](#(一)Manage Jenkins——Tools系统管理->全局工具配置)分别配置JDK、Maven、Allure、Git,可以配置路径或者直接选择版本安装

[1、jdk 配置](#1、jdk 配置)

2、maven配置

[3、Allure Commandline](#3、Allure Commandline)

4、Git配置

[(二) Manage Jenkins -> System](#(二) Manage Jenkins -> System)

Jenkins配置邮件发送

1、下载邮件插件

2、配置系统管理员邮箱地址:

[3、配置Extended E-mail Notification:](#3、配置Extended E-mail Notification:)

四、Jenkins创建任务及配置

[1、源码管理 Source Code Management](#1、源码管理 Source Code Management)

2、构建触发器

[2.1 build periodically](#2.1 build periodically)

[2.2 poll scm](#2.2 poll scm)

[2. 3 时间表达式](#2. 3 时间表达式)

3、丢弃旧的构建

4、参数化

[项目------一般设置------参数化构建 This project is parameterized](#项目——一般设置——参数化构建 This project is parameterized)

字符参数、选项参数、布尔参数用的相对多一些

[5、构建 执行命令](#5、构建 执行命令)

6、构建后的操作

7、Jenkins配置邮件发送

1、配置收件人及邮件内容

[Post-build Actions -> Editable Email Notification](#Post-build Actions -> Editable Email Notification)

2、设置触发器

3、邮件可读权限------勾选匿名用户具有可读权限

、jenkins中文乱码解决方案

解决方式一:环境变量配置

方式二:Jenkins全局设置


一、Jenkins

基于 Java 开发的持续集成工具,开源免费,官网下载: https://jenkins.io/download/

  • 持续、自动地构建/测试软件项目。
  • 更好地实现整个CI/CD流程。

二、Jenkins****环境搭建

通过docker搭建的方式可见【这篇笔记】

1、下载所需的软件包

2、部署步骤

  1. 下载war包:jenkins.war
  2. 部署到tomcat(jenkins.war包放到tomcat的webapps目录)
  3. 启动Tomcat(进入到tomcat的bin目录下,找到startup.bat脚本执行启动即可)
  4. 验证:http://localhost:8080/jenkins/

3、其他

  • 获取密码

在第一次使用jenkins的时候默认会生成一个密码文件%JENKINS_HOME%\secrets\initialAdminPassword

打开文件,复制其中的初始登录的密码,粘贴然后登录

修改密码:系统管理--》管理用户

  • 启动后:Jenkins提示离线

打开jenkins->系统管理->管理插件->高级

或打开链接:http://ip:端口/jenkins/pluginManager/advanced

将升级站点http://updates.jenkins-ci.org/update-center.json换成http://mirror.esuni.jp/jenkins/updates/update-center.json

重启Tomcat

三、Jenkins全局设置

(一)Manage Jenkins------Tools系统管理->全局工具配置

分别配置JDK、Maven、Allure、Git,可以配置路径或者直接选择版本安装

1、jdk 配置

如果机器上已经装了jdk,直接指定JAVA_HOME目录即可

2、maven配置

如果机器上有下载maven,指定一个MAVEN_HOME目录即可。

3、Allure Commandline

4、Git配置

(二) Manage Jenkins -> System

Jenkins配置邮件发送

1、下载邮件插件

进入Manage Jenkins -> Plugin Manager,下载Email Extension插件

2、配置系统管理员邮箱地址:
3、配置Extended E-mail Notification:

密码不是邮箱密码是要生成授权码

四、Jenkins创建任务及配置

  • 新建------Freestyle project 自由风格的项目
  • 新建------构建一个maven项目**(如果没有这个选项,你需要在** Jenkins里面安装Maven插件)在管理插件中下载maven插件:maven intergration

1、源码管理Source Code Management

subversion/Git -> 填写项目repository url+credentials(用户名+密码)验证

2、构建触发器

构建触发器是Jenkins启动一个Job构建的条件,当条件满足时,Job启动。可以设置为测试人员commit后自动编译(比如5分钟update一次svn,如果有提交则执行构建),或定时构建(比如每天晚上0点定时构建)

2.1 build periodically

隔一段时间build一次,不管版本库代码是否发生变化。

2.2 poll scm

隔一段时间比较一次源代码如果发生变更,那么就build。否则,不进行build。

2. 3 时间表达式

时间表达式是由五部分组成,每一部分中间由空格隔开,如下:

MINUTE HOUR DOM MONTH DOW

  • MINUTE 分钟值 (0--59)

  • HOUR 时钟值(0--23)

  • DOM 日期 (1--31)

  • MONTH 月份 (1--12)

  • DOW 一周中的某一天(0--7) 0和7都代表周天

每一部分还可以设置为以下的值

  • *:指所有的值

  • M-N:指一个范围区间内的值

  • M-N/X 或 */X:指(在一个范围内/所有)满足间隔X的值

  • A,B,...,Z:列举了这一部分所有的值

举例

  1. 每天的晚上八点钟 0 20 * * *

  2. 每月的第10号晚上零点 0 0 10 * *

  3. 每天晚上的八点10分到15分 10-15 20 * * *

  4. 每间隔10分钟 */10 * * * *

  5. 每间隔1小时 * */1 * * *

  6. 前三十分钟内每间隔5分钟 0-30/5 * * * *

  7. 每天的20,21,23点执行 0 20,21,23 * * *

3、丢弃旧的构建

4、参数化

项目------一般设置------参数化构建 This project is parameterized
字符参数、选项参数、布尔参数用的相对多一些

比如:需要打印的时候,打印出参数,控制台打印------参数/{参数}

5、构建 执行命令

maven项目后续的操作和freestyle项目一样的,包括参数化构建、报表等都没有区别;

主要区别是,mvn项目的命令行只能执行mvn命令,直接命令就是clean test

freestyle项目,可以执行所有命令,包括mvn,echo等等;执行时候不能省略mvn,需要写成mvn clean test

6、构建后的操作

配置job任务------add post-build action

选择allure report

设置下allure-results目录的路径(相对路径,基于项目)

报表展示

在任务页面的左边菜单里会出现allure report选项,点击即可访问到allure报告

可将此url地址设置到邮件内容中发送给相关人

7、Jenkins配置邮件发送

1、配置收件人及邮件内容
Post-build Actions -> Editable Email Notification

2、设置触发器

3、邮件可读权限------勾选匿名用户具有可读权限

五、jenkins中文乱码解决方案

解决方式一:环境变量配置

系统管理->系统设置

Name:JAVA_TOOL_OPTIONS

Value:-Dfile.encoding=UTF-8

**方式二:**Jenkins全局设置

系统管理->系统设置

添加"全局属性"

设置key:LANG value:zh_CN.UTF-8

相关推荐
HHoao1 小时前
Ubuntu启动后第一次需要很久才能启动GTK应用问题
linux·运维·ubuntu
小灰兔的小白兔1 小时前
【Ubuntu】Ubuntu常用命令
linux·运维·ubuntu
winds~1 小时前
ubuntu中软件的进程管理-结束软件运行
linux·运维·ubuntu
bush41 小时前
使用root账号ssh登录虚拟机ubuntu
运维·ubuntu·ssh
叫我龙翔2 小时前
【Linux】进程间关系与守护进程
linux·运维·服务器·计算机网络
S hh3 小时前
【Linux】进程地址空间
java·linux·运维·服务器·学习
苹果醋33 小时前
大模型实战--FastChat一行代码实现部署和各个组件详解
java·运维·spring boot·mysql·nginx
梁诚斌4 小时前
VSOMEIP代码阅读整理(1) - 网卡状态监听
运维·服务器·网络
深情废杨杨4 小时前
服务器几核几G几M是什么意思?如何选择?
运维·服务器
康熙38bdc4 小时前
Linux 进程优先级
linux·运维·服务器