利用jenkins打造通过自定义参数更新svn 指定文件任务

jenkin可以执行很多构建任务,有时候我们需要在执行构成中同构shell对服务器进行操作
而且还需要进行参数的传入

比如:我要利用svn进行本地代码的更新,单又不是所有代码的更新,只更新指定的1个或这个文件,怎么实现呢。

jenkins有很多插件,其中插件Extended Choice Parameter Plug-In就可以定义参数,没有安装的可以去插件管理进行搜索安装,
,结合jenkin参数化构建任务就可以在构建任务的时候让使用者输入参数,我这的的参数就是文件路径。先看一下效果。

点击任务构建按钮后提示输入要更新的文件路径,每个参数在定义的时候可以添加参数说明。

详细的构建过程:

安装

在细节构建任务的时候,勾选【General】中的【参数化构建构成】,选择【String Parameter】选择

定义你要在后面执行shell的时候要使用的参数名,我这里是file_uri,以及默认值,默认值可以保持空白不填,描述

可以简单描述你要改参数的作用。此处定义过参数之后,在后面的【构建】环境中就可以调用该参数了,而且该参数是需要

人工在执行任务的时候手动指定,本例中为手动指定要更新的svn文件。

如何调用该参数:

如图,我再【构建】环境使用了另个远程执行shell命令的插件去执行shell 脚本,在脚本中

我使用$file_uri 调用参数,然后保存任务。这样我们在执行任务的时候,就会先提示你输入file_uri参数的内容,即定义

file_uri参数,定完完成后,后面即可调用。

执行任务:

输入要更新的文件,点击【开始构建】即可开始任务。

最后可以在控制台输出查看构建结果。

时间: 2024-10-12 12:43:12

利用jenkins打造通过自定义参数更新svn 指定文件任务的相关文章

JAVA中自定义日志输出到指定文件

虽然JAVA日志包提供的功能已经很方便,但是假如我们有新的需求如:将日志文件保存到我们希望的位置并在日志文件名中添加日期且保存指定时间内的日志文件:按照自己希望的格式输出日志内容.对于这些需求我们只要扩展java.util.logging.StreamHandler(Handler的子类),java.util.logging.Formatter创建自定义的处理器及格式化器即可以实现.下面是个例子,它分别创建了Handler及Formatter的子类,以便实现将日志文件保存到我们需要的位置,及在日

利用jenkins+svn进行项目自动部署(本机自动篇)

测试环境:centos6.5_x64 java jenkins svn+apache tomcat 实现目的: 利用jenkins实现,当svn有代码更新时,Jenkins自动将代码更新到tomcat应用目录下,并重启tomcat生效 第一步:环境搭建 svn+apache安装: tomcat安装:(不多说) jenkins安装,直接将war包放入tomcat的webapps目录下运行即可,官网下载 wget 启动后输入http://ip:port/jenkins到如下界面,即安装成功 第二步:

SpringBoot08 请求方式、参数获取注解、参数验证、前后台属性名不一致问题、自定义参数验证注解、BeanUtils的使用

1 请求方式 在定义一个Rest接口时通常会利用GET.POST.PUT.DELETE来实现数据的增删改查:这几种方式有的需要传递参数,后台开发人员必须对接收到的参数进行参数验证来确保程序的健壮性 1.1 GET 一般用于查询数据,采用明文进行传输,一般用来获取一些无关用户信息的数据 1.2 POST 一般用于插入数据 1.3 PUT 一般用于数据更新 1.4 DELETE 一般用于数据删除 技巧01:一般都是进行逻辑删除(即:仅仅改变记录的状态,而并非真正的删除数据) 2 参数获取注解 2.1

更新svn版本后,在更新代码报错

Eclipse 导入项目与 svn 插件关联全过程记录 今天想整理一下相关项目的前端代码以及目录结构,故利用svn客户端(TortoiseSVN 1.7.2)从trunk上新建了一个branches,然后checkout到本地. 打开Eclipse,点击 File -> Import -> General -> Existing Projects Workspace -> Next -> 选中 select root directory,点击 Browse 浏览,确认项目本地

android AppWidget的使用以及利用TimerTask实现widget的定时更新

第一步:首先是Widget的定义声明: 在资源文件下的xml文件夹中建立文件example_appwidget_info.xml: <?xml version="1.0" encoding="utf-8"?> <appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android" android:initialLayout="@lay

利用jenkins做项目的自动化部署

最近领导要求上海本地的项目需要使用进jenkins实现自动化部署,以便可以直接将项目移交给运维的同学,减轻开发的工作量.记录下这次爬坑的过程. 一.前言 Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括: 1.持续的软件版本发布/测试项目. 2.监控外部调用执行的工作. 上面是我从百科上down下来的,老实说没看懂,这是个什么玩意啊?其实以我现在的理解和应用,最多的便是部署了,其他功能待研究╮(╯_╰)╭ 撸主目前在上海一个不知名国企打工,我们现在项目的发布流

CS231n 卷积神经网络与计算机视觉 7 神经网络训练技巧汇总 梯度检验 参数更新 超参数优化 模型融合 等

前面几章已经介绍了神经网络的结构.数据初始化.激活函数.损失函数等问题,现在我们该讨论如何让神经网络模型进行学习了. 1 梯度检验 权重的更新梯度是否正确决定着函数是否想着正确的方向迭代,在UFLDL中我们提到过,计算时梯度公式如果计算错误是不容被察觉的,我们需要比较分析法得到梯度与数值法得到的梯度是否相似,下面是一些技巧: 1.1 centered formula 高等数学中我们知道导数的近似公式: df(x)dx=f(x+h)?f(x)h 以及下面的centered formula: df(

批处理更新svn

很多软件都有命令行支持,即可以直接在Windows命令提示符下输入软件提供命令来执行,完成软件的一些功能. 比如输入svn help 可以查看svn支持的命令行 想要更新svn资源需要用到命令svn update –r version path,如:svn update –r 100 “E:\\res” 执行后更新了E盘下res目录的资源到200 svn revision 如果想要更新虚拟机上共享目录的资源则记住用户名密码登陆过一次后,直接将path替换为对应的共享目录即可,如svn updat

根据jenkins更新Log检查文件更新并比较两文件内容

开发人员经常将一些接口的参数POST更改成get 进行测试,后面忘记后就直接提交代码,jenkins更新后出现各种问题,在代码构建过程中匹配下相关配置文件. 下面是根据jenkins更新Log检查文件更新并比较两文件内容 #!/bin/sh if grep "routes/web.php" /var/lib/jenkins/jobs/${JOB_NAME}/lastSuccessful/log > /dev/null 2>&1 then echo "Upd