Jenkins 参数
Posted 刘贤松handler
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jenkins 参数相关的知识,希望对你有一定的参考价值。
解决方法有两个(推荐方案二!!!):
1、方案一:安装Groovy Postbuild插件,自己写代码,缺点是局限性比较大,适用于参数类型是string的,并不适用于bool、choice类型,因为这些类型的默认值被readonly修饰。(但此方案有一个优点,就是假如你需要用 Extended Choice Parameter Plug-In 这个多选参数插件,该方案可以修改其默认值)
2、方案二:安装Persistent Parameter Plugin,适用范围广,string、text、bool、choice也都适用。
或两个方案混合使用都可
方案一 、 安装Groovy Postbuild 插件。
Groovy Postbuild | Jenkins plugin
方案二 、安装Persistent Parameter Plugin插件。、
Jenkinsfile中通过parameters中的choice(下拉框)类型获取输入参数的方法,这篇文章将会继续介绍Jenkinsfile的parameters所支持的其他物种类型的使用方式。
parameter
使用限制:必须写在pipeline块中,只能存在一处parameter
参数类型 Jenkinsfile目前支持如下六种类型的参数,具体说明如下所示:
参数类型 参数说明
- string 字符串类型参数
- text 文本类型参数,与字符串的区别在于可以包含多行信息,用于传入较多信息输入
- booleanParam 布尔类型参数
- choice 类似下拉框或者支持多值的单选参数
- file 指定构建过程中所需要的文件
- password 考虑到安全的因素,需要通过参数方式传递的密码类型
pipeline
agent any
parameters
choice(
description: '你需要选择哪个模块进行构建 ?',
name: 'modulename',
choices: ['Module1', 'Module2', 'Module3']
)
string(
description: '你需要在哪台机器上进行部署 ?',
name: 'deploy_hostname',
defaultValue: 'host131',
)
text(
name: 'release_note',
defaultValue: 'Release Note 信息如下所示: \\n \\
Bug-Fixed: \\n \\
Feature-Added: ',
description: 'Release Note的详细信息是什么 ?'
)
booleanParam(
name: 'test_skip_flag',
defaultValue: true,
description: '你需要在部署之前执行自动化测试么 ?'
)
password(
name: 'deploy_password',
defaultValue: 'liumiaocn',
description: '部署机器连接时需要用到的密码信息是什么 '
)
file(
name: "deploy_property_file",
description: "你需要输入的部署环境的设定文件是什么 ?"
)
stages
stage('Build')
steps
echo "Build stage: 选中的构建Module为 : $params.modulename ..."
stage('Test')
steps
echo "Test stage: 是否执行自动化测试: $params.test_skip_flag ..."
stage('Deploy')
steps
echo "Deploy stage: 部署机器的名称 : $params.deploy_hostname ..."
echo "Deploy stage: 部署连接的密码 : $params.deploy_password ..."
echo "Deploy stage: Release Note的信息为 : $params.release_note ..."
参考
关于Jenkins中每次构建修改参数默认值的解决办法_尚小锋的博客-CSDN博客_jenkins 修改参数
Jenkins基础:Jenkinsfile使用实例:4:六种参数类型_淼叔的博客-CSDN博客_jenkins文本参数
以上是关于Jenkins 参数的主要内容,如果未能解决你的问题,请参考以下文章