Jenkins的参数化构建

一、参数化构建日志

1、查看效果

有时候开发需要查看服务器日志,传统的是需要运维登录服务器拉取开发所需要的服务日志,这么做的弊端是:1、如果日志比较大,拉取耗费时间、占用服务器资源。2、占用运维不必要的工作量。3、为了服务器安全考虑,反复的登录服务器,容易被一些内部员工记住服务器密码或秘钥。

废话不多说,先来看效果:

当我们点击上面项目名后面的参数化构建(build with parameters)时,出现下面界面

当我们在N框输入所要看的日志行数,下面日期可以输时间,也可以不输(不输就默认输出现在的日志),然后点击“开始构建”,构建完毕后,就可以看到服务器上的日志显示在Jenkins控制台上

2、Jenkins上配置

然后选择“参数化构建”,然后添加两个“string parameter”,输入下面内容

然后下面的默认即可

然后在构建环境中选择“send files or excute commands over SSH after the build runs”(构建完执行命令),在SSH server中选择要查看日志的服务器

然后在执行命令的地方填上代码“tail -$N /data/tomcat/logs/catalina.out$DATE”,其中的N和DATE就是供后面传参的。

剩下的基本上默认即可

当配置完,保存后,就可以实现刚才手动构建日志的功能 了。

二、参数化构建/回滚项目

1、Jenkins配置

这个功能主要是实现构建时可以选择是构建项目还是回滚项目,接下来下贴上Jenkins上的配置。

简单说就是利用参数化构建,建立choice,choice里面建立两个变量,一个是发布新版,一个是回滚旧版。选择变量类型string parameter来传递要回滚的版本号。构建时选择运行bat脚本,写上判断语句,判断是发布还是回滚。bat脚本里也可以内置pathon脚本,把条件判断写在python脚本,运行命令写上python xx.py即可

选择参数化构建,添加参数中选择“choice”和“string parameter”,然后填上下面内容。

接下来虽然不是参数化构建的重点,但是确实构建的重点。每个公司的构建插件不一样,这里使用的是插件publish over ssh 。

上面截图的内容意思是通过远程连接服务器,移除远程服务器上的war包,然后执行shell目录下的脚本

启用步骤:
构建后操作→Add post-build action→Send build artifacts over SSH
SSH  Server Name:选个一个你在系统设置里配置的配置的名字
Transfer Set Source files:需要上传的文件(注意:相对于工作区的路径。看后面的配置可以填写多个,默认用,分隔)
Remove prefix:移除目录(只能指定Transfer Set Source files中的目录)
Remote directory:远程目录(根据你的需求填写吧,因为我这儿是测试,所以偷懒没有填写。默认会继承系统配置)
Exec command:把你要执行的命令写在里面
(新版本的要求Transfer Set Source files和Exec command都要填写,可以不了他。老版本的允许只填写一个)
高级:
Exclude files:排除的文件(在你传输目录的时候很有用,使用通配符,例如:**/*.log,**/*.tmp,.git/)
Pattern separator:分隔符(配置Transfer Set Source files的分隔符。如果你这儿更改了,上面的内容也需要更改)
No default excludes:禁止默认的排除规则(具体的自己看帮助)
Make empty dirs:此选项会更改插件的默认行为。默认行为是匹配该文件是否存在,如果存在则创建目录存放。选中此选项会直接创建一个目录存放文件,即使是空目录。(个人理解)
Flatten files:只上传文件,不创建目录(除了远程目录)
Remote directory is a date format:远程目录建立带日期的文件夹(需要在Remote directory中配置日期格式)

2、效果

原文地址:https://www.cnblogs.com/dadonggg/p/8444366.html

时间: 2024-10-05 03:09:39

Jenkins的参数化构建的相关文章

jenkins之参数化构建

事件背景: 今天一早接到一个需求,说要jenkins持续集成,输入自定义URL,然后完成回归测试,当时有点蒙,不知道如何下手,听群里的大神思路后豁然开朗,就记录了下 一.先安装插件 插件: [Build with Parameters] [Extended Choice Parameter]: 版本不同,安装后名字可能会有些差异 二.构建一个新的项目,需要满足动态参数化构建的功能 配置; 勾选""参数化构建过程"",然后"添加参数", 通过写入方

【原】jenkins知识点——参数化构建过程(二)

1.项目的general中选择了参数化构建过程 2.构建过程中通过执行shell获取相关选项参数 原文地址:https://www.cnblogs.com/HYanqing/p/11521181.html

gitlab+jenkins+maven+docker持续集成(十)——参数化构建过程之多环境tag构建

同一个项目,要构建到不同的环境,而且对应的分支或tag也不相同,这里就要用到jenkins的参数化构建过程 中的Git Parameter和Choice Parameter, 先看下效果 实现过程 构建过程:Git Parameter -->Name: branch_selector -->Parameter Type :Tag  (这里我选择tag) 构建过程:Choice Parameter 源码管理 这样就可以实现效果,其中我们设置的参数,都可以以变量形式传到我们需要运行的脚本里. 补充

【jenkins参数化构建】将Ant Targets参数化

使用jenkins做持续集成时,Ant Targets经常变动,所以采用参数化构建,将Ant Targets参数化 1.在jenkins的job中增加String Parameter/Persistent String Parameter 2.在构建时选择batch/shell脚本 3.其他 构建不使用jenkins ant plugin的原因: 使用String Parameter/Persistent String Parameter传递ANT_TARGETS参数 如果有多个target,j

Jenkins持续集成——参数化构建

一.String Parameter 由于每次构建的时候指定的SVN路径都不同,如果不使用参数化构建则每次都需要修改配置中的SVN路径,不但不安全也容易出现错误. 将SVN地址设置为字符串参数(string parameter),当开始构建的时候将会提示用户输入参数值(即:SVN地址) 在SVN中引用参数 另外,如果需要自动拉取SVN的tag或git的branch可以使用"List Subversion tags(and more)"和"Git Parameter Plug-

Jenkins参数化构建插件,实现构建前输入自定义参数

插件: [Build with Parameters]:https://wiki.jenkins-ci.org/display/JENKINS/Build+With+Parameters+Plugin [Extended Choice Parameter]:https://wiki.jenkins-ci.org/display/JENKINS/Extended+Choice+Parameter+plugin 基于参数化构建可以做很多事情,比如实现项目自动部署之后的版本回滚:http://www.

Jenkins参数化构建

背景:每次构建项目时都需要去修改一下配置,然后保存,再去立即构建.这样修改容易修改出错误,影响到执行脚本,且每次都要去修改配置,不容易修改,操作也比较麻烦.所以决定将Jenkins修改为参数化构建.下面是步骤. 一.点击配置,勾选参数化构建 二.点击添加参数,有下面这些参数 我用的是Choice和String Parameter两种 Choice:给出多个选项,构建时可以手动选择参数,默认是Coices内的第一行数据 String Parameter:就是一个使用字符串值的参数变量 说明:有一个

Jenkins(三)参数化构建过程

参数化构建是用于和用户提供交互的一种方式,通过选择传入不同的参数,来执行不同的任务,如:选择不同的项目名称并发布到不同的环境.参数化构建是通过Extended Choice Parameter插件来实现和完成的.具体安装配置如下: 1.安装Extended Choice Parameter插件.jenkins--系统管理--插件管理--可选插件--点击安装2.配置相关参数化配置选项3.Extended Choice Parameter插件的相关配置 4.构建执行. 即可查看构建是否完成. 二.通

Jenkins参数化构建(七)

一.配置参数化构建过程 主要用来区分分支,使用传参的方式,将分支名称传入脚本中进行拉取代码. 1.1 最常用的是:字符参数.文本参数.  1.2 添加字符参数和文本参数,并配置变量名称  1.3 配置构建环境,执行shell脚本  1.4 进行构建  1.5 字符和文本的区别就是输入筐的大小,可以手动进行修改.  1.6 查看控制台输出结果,具体构建哪个分支可以进行手动输入. 二.参数化,使用变量的形式 2.1安装Extended Choice Parameter插件  2.2 参数化构建过程选