目录

一、Jenkins的前置知识

1.Job

2.plugin

3.Workspace

一、Jenkins的一些重要配置

1.Global Tool Configuration-全局工具配置

 二、Jenkins的使用

1.Jenkins拉取Git仓库代码

2.Jenkins配置定时任务

3.Jenkins邮件发送

3.Jenkins中构建项目部署Gitee+Maven+Jenkins

3.1安装Maven Integration plugin插件

3.2新建-构建一个maven项目

3.3源码管理-选择git

3.4Build

3.5构建环境:选择发布到远程服务器上

3.6构建后操作:邮件通知相关测试人员和开发人员,版本发布的情况; 

三、邮件


JDK和jenkins安装

jenkinsfile 内嵌自动以方法 jenkins如何使用_jenkins

云服务器安装Maven

jenkinsfile 内嵌自动以方法 jenkins如何使用_jenkins

一、Jenkins的前置知识

1.Job

在Jenkins中,都是以Job为单位来完成一件事情的

2.plugin

需要下载相关的插件来完成需要的工作

3.Workspace

/var/lib/jenkins 目录下为Jenkins的安装目录,Jenkins的工作空间就在里面

一、Jenkins的一些重要配置

1.Global Tool Configuration-全局工具配置

Maven配置

jenkinsfile 内嵌自动以方法 jenkins如何使用_jenkinsfile 内嵌自动以方法_03

 JDK配置(选择自己云服务器上的路径)

jenkinsfile 内嵌自动以方法 jenkins如何使用_取值_04

 二、Jenkins的使用

1.Jenkins拉取Git仓库代码

jenkinsfile 内嵌自动以方法 jenkins如何使用_远程服务器_05

jenkinsfile 内嵌自动以方法 jenkins如何使用_取值_06

jenkinsfile 内嵌自动以方法 jenkins如何使用_Jenkins_07

保存完成后返回主页找到刚才创建的Job

jenkinsfile 内嵌自动以方法 jenkins如何使用_取值_08

jenkinsfile 内嵌自动以方法 jenkins如何使用_Jenkins_09

jenkinsfile 内嵌自动以方法 jenkins如何使用_Jenkins_10

jenkinsfile 内嵌自动以方法 jenkins如何使用_jenkinsfile 内嵌自动以方法_11

 查看云服务器中Jenkins的工作空间,查看是否拉取代码成功

# 进入工作目录
cd /var/lib/jenkins/jobs/Job1/workspace

# 查看代码是否拉取成功
ls

jenkinsfile 内嵌自动以方法 jenkins如何使用_jenkins_12

2.Jenkins配置定时任务

jenkinsfile 内嵌自动以方法 jenkins如何使用_jenkins_13

日程表的参数

第一个参数代表的是分钟 minute,取值 0~59;

第二个参数代表的是小时 hour,取值 0~23;

第三个参数代表的是天 day,取值 1~31;

第四个参数代表的是月 month,取值 1~12;

最后一个参数代表的是星期 week,取值 0~7,0 和 7 都是表示星期天。

jenkinsfile 内嵌自动以方法 jenkins如何使用_取值_14

jenkinsfile 内嵌自动以方法 jenkins如何使用_jenkins_15

如果是周一周三周五可以使用 1,3,5注意这里的逗号是英文输入法

3.Jenkins邮件发送

jenkinsfile 内嵌自动以方法 jenkins如何使用_取值_16

jenkinsfile 内嵌自动以方法 jenkins如何使用_取值_17

jenkinsfile 内嵌自动以方法 jenkins如何使用_取值_18

jenkinsfile 内嵌自动以方法 jenkins如何使用_远程服务器_19

jenkinsfile 内嵌自动以方法 jenkins如何使用_jenkinsfile 内嵌自动以方法_20

jenkinsfile 内嵌自动以方法 jenkins如何使用_取值_21

可以先测试是否能发送邮件

jenkinsfile 内嵌自动以方法 jenkins如何使用_取值_22


想要用qq邮箱发信息,需要在QQ邮箱中开启SMTP服务

jenkinsfile 内嵌自动以方法 jenkins如何使用_取值_23

jenkinsfile 内嵌自动以方法 jenkins如何使用_远程服务器_24


3.Jenkins中构建项目部署Gitee+Maven+Jenkins

前提:已经把源代码上传到Gitee,SSH配置完成,邮件发送配置完成

3.1安装Maven Integration plugin插件

jenkinsfile 内嵌自动以方法 jenkins如何使用_Jenkins_25

3.2新建-构建一个maven项目

jenkinsfile 内嵌自动以方法 jenkins如何使用_jenkins_26

3.3源码管理-选择git

Repository URL:填写码云上项目的仓库地址

Credentials:填写码云的验证方式,即账户名和密码

Branches to build:填写拉取代码的分支

jenkinsfile 内嵌自动以方法 jenkins如何使用_jenkins_27

3.4Build

jenkinsfile 内嵌自动以方法 jenkins如何使用_取值_28

3.5构建环境:选择发布到远程服务器上

代码编译完后,需要把生成的war包传到项目部署服务器上,选择 Send files execute commands over SSH after the build runs

Name:选择已经配置好的服务器

Source files:填写需要上传的文件以及文件所在的路径

Remove prefix:去掉要上传的文件的路径

Remote directory:登陆到远程服务器上的目录

Exec command:在远程服务器上执行的命令

cd /root/apache-tomcat-8.5.60/apache-tomcat-8.5.60/apache-tomcat-8.5.60/bin

sh shutdown.sh

sh startup.sh

jenkinsfile 内嵌自动以方法 jenkins如何使用_远程服务器_29

3.6构建后操作:邮件通知相关测试人员和开发人员,版本发布的情况; 

jenkinsfile 内嵌自动以方法 jenkins如何使用_jenkins_30

jenkinsfile 内嵌自动以方法 jenkins如何使用_远程服务器_19

jenkinsfile 内嵌自动以方法 jenkins如何使用_jenkins_32

最后在浏览器输入:http://公网地址/war包名称/就可以访问成功">http://公网地址/war包名称/就可以访问成功

三、邮件

<!DOCTYPE html>    
<html>    
<head>    
<meta charset="UTF-8">    
<title>${ENV, var="JOB_NAME"}-第${BUILD_NUMBER}次构建日志</title>    
</head>    
    
<body leftmargin="8" marginwidth="0" topmargin="8" marginheight="4"    
    offset="0">    
    <table width="95%" cellpadding="0" cellspacing="0"  style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif">    
        <tr>    
            本邮件由系统自动发出,无需回复!<br/>            
            各位同事,大家好,以下为${PROJECT_NAME }项目构建信息</br> 
            <td><font color="#CC0000">构建结果 - ${BUILD_STATUS}</font></td>   
        </tr>    
        <tr>    
            <td><br />    
            <b><font color="#0B610B">构建信息</font></b>    
            <hr size="2" width="100%" align="center" /></td>    
        </tr>    
        <tr>    
            <td>    
                <ul>    
                    <li>项目名称 : ${PROJECT_NAME}</li>    
                    <li>构建编号 : 第${BUILD_NUMBER}次构建</li>    
                    <li>触发原因: ${CAUSE}</li>    
                    <li>构建状态: ${BUILD_STATUS}</li>    
                    <li>构建日志: <a href="${BUILD_URL}console">${BUILD_URL}console</a></li>    
                    <li>构建  Url : <a href="${BUILD_URL}">${BUILD_URL}</a></li>    
                    <li>工作目录 : <a href="${PROJECT_URL}ws">${PROJECT_URL}ws</a></li>    
                    <li>项目  Url : <a href="${PROJECT_URL}">${PROJECT_URL}</a></li>    
                </ul>    
 
<h4><font color="#0B610B">失败用例</font></h4>
<hr size="2" width="100%" />
$FAILED_TESTS<br/>
 
<h4><font color="#0B610B">最近提交(#$SVN_REVISION)</font></h4>
<hr size="2" width="100%" />
<ul>
${CHANGES_SINCE_LAST_SUCCESS, reverse=true, format="%c", changesFormat="<li>%d [%a] %m</li>"}
</ul>
详细提交: <a href="${PROJECT_URL}changes">${PROJECT_URL}changes</a><br/>
 
            </td>    
        </tr>    
    </table>    
</body>    
</html>