Jenkins 带参数执行shell脚本
创始人
2024-03-14 10:14:01
0

日常工作中经常会手动部署或者自动触发部署一些项目,可以用Jenkins来执行,方便记录以及可视化。

安装参数化插件

  1. 进入0.0.0.0:8080 分别选择 Manage Jenkins->Manage Plugins进入安装插件界面,选择Available plugins查找可用的插件
  2. 查找Parameterized Trigger插件,并且下载安装,等待下载完成

![image.png](https://img-blog.csdnimg.cn/img_convert/9fd51e5b0a37db9f6e59502aeab90b16.png#averageHue=#f3edd5&clientId=u8cc43884-a450-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=435&id=u7f41eac6&margin=[object Object]&name=image.png&originHeight=435&originWidth=938&originalType=binary&ratio=1&rotation=0&showTitle=false&size=40300&status=done&style=none&taskId=ue11f296c-91e3-46b8-8e06-587f9fd9a76&title=&width=938)

参数化构建指南

Jenkins允许我们将参数传递到项目中。我们有多种构建参数可供选择,只要下载对应插件就能实现,比如git分支名称、主机名或者端口等等。

添加参数

Jenkins 支持参数化构建或者Pipeline,我们只需要开启常规设置中的This project isparameterized->Add Parameter
![image.png](https://img-blog.csdnimg.cn/img_convert/92a4e022199575acb5b32ca236b8272e.png#averageHue=#fcfafa&clientId=u8cc43884-a450-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=391&id=uf30fb796&margin=[object Object]&name=image.png&originHeight=391&originWidth=895&originalType=binary&ratio=1&rotation=0&showTitle=false&size=33732&status=done&style=none&taskId=u46ee0e27-838f-49df-9f71-901de201971&title=&width=895)
可以从上图看到可供选择的参数很多,这边选择Boolean Parameter参数
![image.png](https://img-blog.csdnimg.cn/img_convert/1786b46d9df7bdf4e0bbde292bb4fb64.png#averageHue=#fefefe&clientId=u8cc43884-a450-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=537&id=u6a4f980f&margin=[object Object]&name=image.png&originHeight=537&originWidth=769&originalType=binary&ratio=1&rotation=0&showTitle=false&size=29673&status=done&style=none&taskId=u8891b56a-67ff-4ce2-ba3d-71995769a23&title=&width=769)
其中有几个信息:

  • 名称:参数变量名称
  • 默认值:用户没指定时将使用默认值
  • 描述: 描述如何使用该参数

单个Jenkins项目可以有多个参数。唯一的限制是参数名必须不同于系统参数名,而且是唯一的

使用参数

我们可以在常规设置中使用该参数,也可以在shell脚本中使用参数
假设我们现在有一个名为gitTag的构建参数,在常用设置里可以这样访问参数。
![image.png](https://img-blog.csdnimg.cn/img_convert/82ebedb0ef69e4197353e3afbc9413ae.png#averageHue=#fefefe&clientId=u8cc43884-a450-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=213&id=ue31143ac&margin=[object Object]&name=image.png&originHeight=213&originWidth=701&originalType=binary&ratio=1&rotation=0&showTitle=false&size=14380&status=done&style=none&taskId=ue76a6cdd-cae7-4443-9cb5-9ce9f03b541&title=&width=701)

${gitTag}

在shell脚本中我们可以使用shell语法直接访问该参数。
![image.png](https://img-blog.csdnimg.cn/img_convert/c319d9d699f384ae436eea70cd3649a2.png#averageHue=#fefefe&clientId=u8cc43884-a450-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=303&id=u8b20fd65&margin=[object Object]&name=image.png&originHeight=303&originWidth=696&originalType=binary&ratio=1&rotation=0&showTitle=false&size=15366&status=done&style=none&taskId=uec50e591-d79e-45d2-bbaa-b48fa5e7756&title=&width=696)

$ echo $gitTag

Reference:

https://www.baeldung.com/ops/jenkins-parameterized-builds

相关内容

热门资讯

保存时出现了1个错误,导致这篇... 当保存文章时出现错误时,可以通过以下步骤解决问题:查看错误信息:查看错误提示信息可以帮助我们了解具体...
汇川伺服电机位置控制模式参数配... 1. 基本控制参数设置 1)设置位置控制模式   2)绝对值位置线性模...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
表格中数据未显示 当表格中的数据未显示时,可能是由于以下几个原因导致的:HTML代码问题:检查表格的HTML代码是否正...
本地主机上的图像未显示 问题描述:在本地主机上显示图像时,图像未能正常显示。解决方法:以下是一些可能的解决方法,具体取决于问...
表格列调整大小出现问题 问题描述:表格列调整大小出现问题,无法正常调整列宽。解决方法:检查表格的布局方式是否正确。确保表格使...
不一致的条件格式 要解决不一致的条件格式问题,可以按照以下步骤进行:确定条件格式的规则:首先,需要明确条件格式的规则是...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...