一、参数化构建日志

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 。

上面截图的内容意思是指定Jenkins上工作目录上需要上传到远程服务器的war包,指定Jenkins服务器上构建时需要移除的目录(已构建过的以前的项目),指定远程服务器上源码存放的路径,然后在远程服务器上执行shell目录下的脚本。

下面截图是Jenkins工作目录下项目

启用步骤:
构建后操作→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、效果

当选择deploy时就执行构建新项目,如果选择rollback时就执行回滚操作。

三、分支参数化构建

1、固定分支

有时候我们希望使用固定的几个分支来构建,那么我们把分支名填入即可。

参数化构建中选择“选项参数”,填入分支名

2,不固定分支

有时候,开发想自建分支,这样分支就会很多,而又不想合到现有主分支上测试,那么就需要自定义分支了。

第一步:安装插件

第二步:进到配置项目中,点击“参数化构建过程”,选择git parameter,输入name,然后选择parameter Type为“branch or tag”

配置完保存即可。

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

  1. Jenkins:参数化构建:分支|模块|回滚|打印日志

    @ 目录 多分支 安装Git Parameter Plug-In 配置参数 选择构建分支 分模块 前提 分模块build 参数配置 分模块shell脚本 mvn 的基本用法 分模块运行 Jenkins ...

  2. jenkins之参数化构建

    事件背景: 今天一早接到一个需求,说要jenkins持续集成,输入自定义URL,然后完成回归测试,当时有点蒙,不知道如何下手,听群里的大神思路后豁然开朗,就记录了下 一.先安装插件 插件: [Buil ...

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

    插件: [Build with Parameters]:https://wiki.jenkins-ci.org/display/JENKINS/Build+With+Parameters+Plugin ...

  4. jenkins参数化构建过程

    http://www.cnblogs.com/meitian/p/5492457.html 1,首先增加Jenkisn插件 https://wiki.jenkins-ci.org/display/JE ...

  5. Jenkins参数化构建

    背景:每次构建项目时都需要去修改一下配置,然后保存,再去立即构建.这样修改容易修改出错误,影响到执行脚本,且每次都要去修改配置,不容易修改,操作也比较麻烦.所以决定将Jenkins修改为参数化构建.下 ...

  6. Jenkins 利用Build With Parameters Plugin实现Jenkins参数化构建

    利用Build With Parameters Plugin实现Jenkins参数化构建   by:授客 QQ:1033553122 测试环境 Build With Parameters Plugin ...

  7. Jenkins环境搭建(5)-与Jmeter完成参数化构建和构建前删除操作

    此前介绍过几篇关于Jenkins配置相关的文章,今天再来说说参数化构建和构建前删除已有的报告.在实际测试过程中,是需要测试几套环境的,不使用参数化构建的话,构建脚本就比较麻烦了:自然,已生成的报告,不 ...

  8. 使用插件实现Jenkins参数化构建

    一.插件安装 1.打开插件管理,在此界面可以安装插件 二.参数化 1.在“可选插件”中查找如下两个插件然后安装,安装后重启Jenkins Build With Parameters 输入框式的参数 P ...

  9. Jenkins参数化构建Jenkins从文件中读取运行参数构建版本号

    https://www.cnblogs.com/xiaochengzi/p/8251805.html 安装Extended Choice Parameter插件 选择‘参数化构建过程’ maven c ...

随机推荐

  1. python + opencv: kalman 跟踪

    之前博文中讲解过kalman滤波的原理和应用,这里用一个跟踪鼠标的例程来演示怎么在opencv里用自带的kalman函数进行目标跟踪,文章的内容对做图像跟踪有借鉴意义.文章主要是网络资源进行整理和简单 ...

  2. WPF查找子控件和父控件方法

    一.查找某种类型的子控件,并返回一个List集合 public List<T> GetChildObjects<T>(DependencyObject obj, Type ty ...

  3. 用 #include “filename.h” 格式来引用非标准库的头文件

    用 #include “filename.h” 格式来引用非标准库的头文件(编译器将 从用户的工作目录开始搜索) #include <iostream> /* run this progr ...

  4. c# combobox 绑定报错

    comboBoxPlanResult.DataSource =new BindingSource(o,null);comboBoxPlanResult.DisplayMember ="Key ...

  5. js 查找指定函数的内容

    function test(){  //hahahhahahhahahha }alert(test.toString());

  6. Mac 下,修改plist文件

    /usr/libexec/PlistBuddy -c "Set :CFBundleDisplayName $DISPLAY_NAME" "${PROJECT_TEMP_D ...

  7. ZOJ 3436 July Number(DFS)

    题意   把一个数替换为这个数相邻数字差组成的数  知道这个数仅仅剩一位数  若最后的一位数是7  则称原来的数为 July Number  给你一个区间  求这个区间中July Number的个数 ...

  8. VMware Host Agent服务不能正常启动

    VMware Host Agent服务不能正常启动 原因及解决方法 一直都在用VMWare Server 2.0,其他都还好,就是隔三差五的会有些小问题,比如VMware Host Agent服务不能 ...

  9. linux下如何关闭防火墙、查看当前的状态、开放端口

    从配置菜单关闭防火墙是不起作用的,索性在安装的时候就不要装防火墙查看防火墙状态:/etc/init.d/iptables status暂时关闭防火墙:/etc/init.d/iptables stop ...

  10. delphi中设置listview行高的方法

    第一步.在form中放置一个ImageList: 第二步.将ListView的SmallImages设置为第一步中放置的ImageList: 第三部.将imageList的height设置成自己需要的 ...