jenkins 如果要按标签发布,需要安装下, Git Parameter Plug-In   的 插件。

之前我们的jar包项目。  我们运行的时候是以下内容。

现在我们对这个jar进行小范围修改。

首先我们修改 pom文件,将版本改成1.0.

然后我们修改主文件。

工程下面的 App.java 文件 。

java2\src\main\java\com\ghz\testweb\App.java   

这里随便改一下。

然后我们将代码提交。

git  add  .
git commit -m "v1.0"
git push origin master

传到git上之后,看到了我们的提交记录。

然后直接打tag就行了。

进去后,打tag,点击创建就行了。

这时我们就有tag了。   然后我们上jenkins  进行配置 。

在general  里面配置。选择参数化构建。

进行配置 。

Name的名字,是自定义的 。标签类型,我们选tag。

其实这步的意思 就是  release  这个变量名  就是tag

填写默认的分支 ,不写 会有问题 。

继续修改, */master 的意思 最新版本,

我们修改对变量 。

$release             #这个release  就是我们前面定义的  paramter的名字

完成,保存一下出来吗,会发现,这build(构建)的 名字已经变了。

点进去,我们发现,前面发的tag已经出现了。

点击构建

完成。

标签的另一种类型。

当我们这边选择了Branch or  tag 时。

在发布时,会将分支也显示出来。

PS:

一般我们线上发布,只用选择  tag 就够了。


war包或者jar包的变量发布

之前我们部署的时候,会将部署完的war包或者jar包,推到远程的机器上面 。

这边会面临一个问题。就是 当war包或者jar包的名字变了之后。 我们执行这条指令会失败。

所以,我们这边需要将这个war包或jar包的名字 写成变量。

我们这边使用方法就是 , 将jar或者war包的名字 打成和 tag的名字一样,这样我们就可以使用release这个变量了。

war包或者jar的名字,我们可以通过 修改工程下的 pom文件在完成 。

实验中我们为了工整点,可以将java的主文件也修改的和tag的名字一样。

然后我们给这个程序打上v1.3的tag。

然后我们进入到 jenkins里面进行配置。

rsync  -avz      ./target/testweb-$release.jar      root@192.168.134.171:/data/java

使用变量名字。

然后我们保存,选择相应版本发布。

完成后查看日志。

推送的是相应版本。

最后我们去node1 的机器上查看。

是ok的。 这样就完成了。

以同样的方法, 我们就可以使用不同的 tag个对应不用的jar包或者war包。 来完成线上的发布。

gitlab的tag

对应 jenkins里面

这样就能线上灵活的发布了。

7.jenkins 按标签发布的更多相关文章

  1. Jenkins指定tag发布到k8s环境

    Jenkins指定tag发布到k8s环境 1.Jenkins配置一个Pipeline 工程 首先要安装插件:https://www.cnblogs.com/Dev0ps/p/9125232.html ...

  2. Jenkins+tomcat自动发布的热部署/重启及遇到的坑解决办法

    一.背景 公司的项目一直手动maven打包.上传服务器.关闭/开启tomcat,整个流程下来耗时耗力,虽然可以将所有流程通过shell脚本一次性解决,但如果可以通过idea的Jenkins插件一键自动 ...

  3. Jenkins 2.26 发布,可扩展的持续集成引擎

    Jenkins 2.26 发布了.Jenkins 主要用于持续.自动地构建/测试软件项目,如CruiseControl与DamageControl,监控一些定时执行的任务.更新内容: Allow Co ...

  4. Jenkins+Harbor+Docker发布

    使用Jenkins发布Docke 需要准备的,docker,jenkins,Harbor docker安装 安装依赖: # yum install -y yum-utils device-mapper ...

  5. 小伙伴想学Jenkins自动构建发布项目,我:安排上了!!

    写在前面 趁着十一长假,很多小伙伴都在悄悄学习,有些是为了能够顺利通过面试,进入大厂升职加薪.有些则是为了进一步巩固和提高自己的专业技能,希望有朝一日能过成为互联网架构师乃至技术专家.这不,就有小伙伴 ...

  6. asp.net core + jenkins 实现自动化发布

    由于部署个人博客系统的服务器只有2G内存,每次利用jenkins编译,发布的时候jenkins老是挂,因此新买了一台轻量应用服务器,专门用于个人博客系统的持续发布任务,下面讲解如何利用jenkins实 ...

  7. Windows下配置Jenkins 实现自动发布maven项目至tomcat(svn+maven+tomcat)

    Jenkins安装完成之后,需要我们对其配置,然后才可以实现自动部署项目. 前提 防火墙开放tomcat的8080端口 Linux(CentOS):firewall-cmd --zone=public ...

  8. jenkins按版本发布maven项目

    1.先为java这个项目创建三个版本 vim pom.xml vim src/main/java/com/ghz/testweb/App.java git add . git commit -m &q ...

  9. 2、jenkins+svn自动发布和回滚

    Jenkins配置回滚思路: 目前只能实现使用salt来管控配置文件的管控,配置文件的版本回滚需要后续定制化开发,或者进行格外其他的管理操作.后续实现 以下配置可以为每个项目备份构建文件到本地指定路径 ...

随机推荐

  1. (3)一起来看下使用mybatis框架的select语句的源码执行流程吧

    本文是作者原创,版权归作者所有.若要转载,请注明出处.本文以简单的select语句为例,只贴我觉得比较重要的源码,其他不重要非关键的就不贴了 主流程和insert语句差不多,这里主要讲不同的流程,前面 ...

  2. Vue-cli项目部署到Nginx

    项目环境: 0. Nginx使用 以windows版为例,下载niginx压缩包并解压到任意目录,双击nginx.exe,在浏览器中访问http://localhost,如果出现Welcome to ...

  3. 控制台提示“Invalid string length”的原因

    控制台提示“Invalid string length”,浏览器直接卡掉,是为什么呢? 答:因为在写嵌套循环时,定义的变量重名了,内层和外层用了同一个i变量. -THE END-

  4. JS基础语法---Array对象的方法

    Array对象的方法   Array.isArray(对象)---->判断这个对象是不是数组 instanceof关键字 判断对象是不是数组类型:两种方法: //1 instanceof var ...

  5. VC遍历访问目录下的文件

    访问目录文件夹下的文件是经常需要的操作,C/C++和win32接口都没有提供直接调用的函数.在这里总结了几个经常用到的函数,通过MFC的CFileFind函数递归遍历实现,包括以下几个功能函数: 查找 ...

  6. 数据库死锁的问题,Deadlock found when trying to get lock; try restarting transaction at Query.formatError

    场景: 应用刚上线排除大批量请求的问题 线上多次出现的Deadlock found when trying to get lock错误 代码: async batchUpdate(skus, { tr ...

  7. 【tf.keras】TensorFlow 1.x 到 2.0 的 API 变化

    TensorFlow 2.0 版本将 keras 作为高级 API,对于 keras boy/girl 来说,这就很友好了.tf.keras 从 1.x 版本迁移到 2.0 版本,需要修改几个地方. ...

  8. 浅谈C++ STL string容器

    浅谈C++ STL string容器 本篇随笔简单讲解一下\(C++STL\)中\(string\)容器的使用方法及技巧. string容器的概念 其实\(string\)并不是\(STL\)的一种容 ...

  9. nfs存储服务器

    1.nfs的基础简介 1.1:什么是nfs? 它的主要功能是通过网络让不同的机器系统之间可以彼此共享文件和目录.NFS服务器可以允许NFS客户端将远端NFS服务器端的共享目录挂载到本地的NFS客户端中 ...

  10. java架构之路(Sharding JDBC)mysql5.7yum安装和主从

    安装mysql5.7单机 1.获取安装yum包 [root@iZm5e7sz135n16ua2rmbk6Z local]# wget http://dev.mysql.com/get/mysql57- ...