1.Jenkins简单配置
Jenkins服务器连接配置
进入Jenkins,点击管理Jenkins,系统配置,进入系统配置页面;
下拉到ssh的位置,点击新增;
填写服务器ip等,点击高级,勾选使用密码选项,填写密码,完成后点击测试连接按钮,查看连接情况。
Jenkins通过git拉取代码,使用maven构建项目配置
新建item,选择构建maven项目,并填写构建项目的名称。Jenkins服务器要提前安装好maven和git。
如果Jenkins没有maven插件,可以联网自行下载,如果国内下载不了,可以参考导入插件的方式安装:https://blog.csdn.net/tcy1429920627/article/details/108850273
点击确定后,进入修改项目配置的页面,下拉到源码管理,填写源码拉取地址,并配置访问用户。
配置完成后,会自动识别用户,效果如下。
如果还有错误,可能是Jenkins的git路径不正确,需要到 "系统管理" -> "Global Tool Configuration" 全局工具配置-> "Git" -> "Path to Git executable",在此处填入 Jenkins所在的服务器 "whereis git"查询出的地址 + "/bin/git" (如上面"whereis git"的地址为"/usr/local/git",则应该填入 "/usr/local/git/bin/git") 并保存。
项目构建时其他的参数根据自己的情况选择。
配置maven条件及参数
Root POM选项为构建时的pom文件,可以在项目中添加多个pom,适用于不同情况maven构建打包。
Goals and options选项是maven构建时的命令,根据自己项目情况填写。
构建完成后,传输文件到指定服务器,并执行命令操作
Run only if build succeeds:只有在构建成功后才会执行;选择图中的选项,添加服务器。
Name:通过上文配置服务器的位置,获取到服务器列表,然后进行选择。
Source files:是项目构建完jar包的相对路径(可以先构建查看构建后文件的位置,自行修改)
在jenkins打包服务器上面的绝对路径是:/root/.jenkins/workspace/test/eureka/target/eureka.jar
Remove prefix:是当上传到目标服务器时,需要移除jar包之前的路径。
Remote directory:是打算把文件上传到服务器什么位置。
Exec command:是传输完文件后,执行什么命令行及操作。
命令行说明(适用于java项目,其他项目可以参考进行改造)
进入指定的文件夹:cd /app/xxxx/dev/jar/test
启动jar(jar_start.sh 是自己编写的shell脚本,脚本中引用到了jar_stop.sh<启动之前先杀死旧的进程>):sh bin/jar_start.sh /app/xxxx/dev/jar/test eureka.log eureka.jar
打印启动日志(如果启动成功自动停止,否则超时自动停止,stop_tailf.sh命令后的&很重要,表示后台执行,不需要等该命令执行完成后再执行下一条命令):
sh bin/stop_tailf.sh /app/xxxx/dev/jar/test eureka.log &
sh bin/tailf.sh /app/xxxx/dev/jar/test eureka.log
2.Jenkins动态传参,联动下拉选择条件
Jenkins添加下拉选项,动态传参数
下拉参数配置、动态传参(其他选项动态传参类似):在项目配置中选择下图中的选项,编辑自己想要的信息。编辑好之后,效果如下。
该参数可以通过maven打包传到项目中(-DportTest接收到数据后,会修改pom.xml中的<portTest></portTest>中,供项目使用),也可以在执行命令时动态使用。
联动下拉、选择上传服务器
首先先创建普通的下拉,参考上文,然后选择下图参数选项,配置参数和效果如下图
选择条件控制上传服务器,到ssh配置的位置,最下边有个‘高级’,点击。
勾选Parameterized publishing,并填写选择的变量名称
点击服务器配置中的高级。
勾选Label,填写选项对应的值(当配置多台服务器时,通过选择的选项对应的值,可以判断选择,构建完成后会对哪台服务器进行操作)
希望本文对你有帮助。