一、准备工作
1.jdk:安装并配置环境变量
2.安装jenkins:yum install -y jenkins并启动
3.访问:http://localhost:8080测试是否安装成功,创建用户
二、创建Job,开始构建
这里是用git做版本控制,gradle打包springboot项目的
1.点击左侧"新建任务”:
2.输入名称,点击"构建一个自由风格的软件项目":
3.具体配置:
1>源码管理
2>构建触发器
我这里用的是远程构建,其他构建机制:定时构建、提交构建...尚未了解
这里说一句:在未登陆的会话直接用这个JENKINS_URL/job/atest/build?token=TOKEN_NAME的话是需要登陆才能触发远程构建的,这里推荐一个插件,可以不用登陆就可以进行远程构建,
文章链接https://www.cnblogs.com/Rocky_/p/8297260.html
3>构建环境
这里使用的是Gradle进行打包
点击下面的"高级",指定build.gradle文件的位置
4>构建后操作
1)发邮件
这里使用的是Extended E-mail Notification这个插件
我这里用的是QQ邮箱发送邮件,需要注意的是这几点
这里的密码是QQ邮箱的授权码,需要做下面的操作
然后"生成授权码"
将这里生成的授权码填入这里的password里面
2)send build artifacts over ssh
通过这个插件可以把打包好后的jar包发送到远程服务器,并执行远程服务器的脚本进行部署等操作
下面的ssh server需要在"系统管理"-->"系统设置"
这里的remote directory是必须指定的
点开"高级"
填入对应服务器的访问密码后,点击"Test Configuration"进行测试是否可以连接成功
点击上面"Name"下面的"高级"
勾选这个选项,可以在构建队列的控制台看到向远程发送文件的日志信息
这里需要注意的是source files的路径是相对于Job的工作空间的相对路径,
例如我的工作空间路径是/var/lib/jenkins/workspace/atest,
用gradle打包好后的jar包在/var/lib/jenkins/workspace/atest/build/libs/atest.jar,所以这里只填build/libs/atest.jar
remove prefix:就是移除build/libs/atest.jar的build/libs/,
remote directory:这里的路径是基于上面系统配置里面的publish over ssh里面的remote directory路径的
Exec command:这是在远程服务器上要执行的脚本命令,脚本文件需要是绝对路径,如果用到环境变量的话,
需要执行source /etc/profile,比如我们用java -jar atest.jar 这里就需要在这条命令前面写上source /etc/profile
5>配置完成后保存,准备开始构建
三、开始构建
1>点击"立即构建"
2>点击对应的Job名称,进入构建详情
3>点击"控制台输出”看看构建日志,及出现的问题
构建成功
四、遇到的问题
主要有一个就是各项配置都没问题,但是就是在发送文件到远程服务器的时候不成功,最终重新创建了一个新的Job,并将旧的配置拷贝复制到新的Job后一切就正常了