jenkins参数化构建在UI中定义&脚本中使用

发布于:2024-07-27 ⋅ 阅读:(131) ⋅ 点赞:(0)

先看配置:
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

流水线脚本:

pipeline {
    agent {
        //label "${server}"
        label "${28}"
    }

    stages {
        stage('Hello') {
            steps {
                echo "--------------------------"
                // 只有这个可以输出变量
                echo "${character_argument}"
                echo "--------------------------"
                
                echo "other argument"
                echo "--------------------------"
                //echo "${password}"
                echo "${var_bool}"
                echo "${text}"
                echo "${options}"
            }
        }
        stage('shell') {
            steps{
                script {
                    sh"""
                        pwd
                        # shell 脚本中引用 Groovy变量的四种方式
                        echo ${character_argument}
                        echo "${character_argument}"
                        echo "\${character_argument}"
                        echo '${character_argument}'
                        echo ----------------------
                        #echo "${password}"
                        #echo ${password}
                        echo "${var_bool}"
                        echo ${var_bool}
                        # text文本中,如果有段落或换行就容易失败,所以最好写成一段(shell命令中)
                        echo "${text}"
                        echo ${text}
                        echo option:
                        echo "${options}"
                        echo ${options}
                    """
                }                
            }
        }
    }
}

在这里插入图片描述

Console Output:

Started by user 昌显瑞
[Pipeline] Start of Pipeline
[Pipeline] node
Running on xxx.xxx.xx.xx in /home/jenkins/program/jenkins/workspace/xxxxxxxx_test
[Pipeline] {
[Pipeline] stage
[Pipeline] { (Hello)
[Pipeline] echo
--------------------------
[Pipeline] echo
default_argument
[Pipeline] echo
--------------------------
[Pipeline] echo
other argument
[Pipeline] echo
--------------------------
[Pipeline] echo
true
[Pipeline] echo
我们在构建任务时经常会遇到这样的情景,一个任务配置好了以后,在后面的构建过程中,又会修改一些配置。例如,我们构建项目的代码可能是拉取指定的分支或者是Tag进行构建,又或者是在构建是需要指定特定的运行平台,如果我们每次构建任务时去修改配置,这就太麻烦了,有没有可能通过参数进行控制,而不用去修改任务的配置呢?这样的需求太常见,Jenkins 肯定是能满足的。
[Pipeline] echo
002
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (shell)
[Pipeline] script
[Pipeline] {
[Pipeline] sh
Warning: A secret was passed to "sh" using Groovy String interpolation, which is insecure.
		 Affected argument(s) used the following variable(s): [password]
		 See https://jenkins.io/redirect/groovy-string-interpolation for details.
+ pwd
/home/jenkins/program/jenkins/workspace/middle_nMedia_test
+ echo default_argument
default_argument
+ echo default_argument
default_argument
+ echo default_argument
default_argument
+ echo default_argument
default_argument
+ echo ----------------------
----------------------
+ echo true
true
+ echo true
true
+ echo 我们在构建任务时经常会遇到这样的情景,一个任务配置好了以后,在后面的构建过程中,又会修改一些配置。例如,我们构建项目的代码可能是拉取指定的分支或者是Tag进行构建,又或者是在构建是需要指定特定的运行平台,如果我们每次构建任务时去修改配置,这就太麻烦了,有没有可能通过参数进行控制,而不用去修改任务的配置呢?这样的需求太常见,Jenkins 肯定是能满足的。
我们在构建任务时经常会遇到这样的情景,一个任务配置好了以后,在后面的构建过程中,又会修改一些配置。例如,我们构建项目的代码可能是拉取指定的分支或者是Tag进行构建,又或者是在构建是需要指定特定的运行平台,如果我们每次构建任务时去修改配置,这就太麻烦了,有没有可能通过参数进行控制,而不用去修改任务的配置呢?这样的需求太常见,Jenkins 肯定是能满足的。
+ echo 我们在构建任务时经常会遇到这样的情景,一个任务配置好了以后,在后面的构建过程中,又会修改一些配置。例如,我们构建项目的代码可能是拉取指定的分支或者是Tag进行构建,又或者是在构建是需要指定特定的运行平台,如果我们每次构建任务时去修改配置,这就太麻烦了,有没有可能通过参数进行控制,而不用去修改任务的配置呢?这样的需求太常见,Jenkins 肯定是能满足的。
我们在构建任务时经常会遇到这样的情景,一个任务配置好了以后,在后面的构建过程中,又会修改一些配置。例如,我们构建项目的代码可能是拉取指定的分支或者是Tag进行构建,又或者是在构建是需要指定特定的运行平台,如果我们每次构建任务时去修改配置,这就太麻烦了,有没有可能通过参数进行控制,而不用去修改任务的配置呢?这样的需求太常见,Jenkins 肯定是能满足的。
+ echo option:
option:
+ echo 002
002
+ echo 002
002
[Pipeline] }
[Pipeline] // script
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
Finished: SUCCESS

网站公告

今日签到

点亮在社区的每一天
去签到