字符串的 Jenkins 条件步骤包含

Jenkins conditional step for string contains

我正在尝试对 Jenkins 执行条件步骤以查看字符串参数是否包含特定单词。

我有 PLATFORM 的字符串。其中的值可以是Windows, Mac, Linux

如果参数的值包含Linux,我想运行某个步骤。

我该怎么做?我为条件步骤下载了 Jenkins 插件,但它没有包含子句。

您可以使用 Jenkins 的 when 指令来实现条件步骤。

示例:

pipeline {
    agent any

    stages {
        stage ('Windows RUN') {
            when {
                expression { params.PLATFORM == 'Windows' }
            }
            steps {
                echo "Hello, Windows"
            }
        }
        
        stage ('Mac RUN') {
            when {
                expression { params.PLATFORM == 'Mac' }
            }
            steps {
                echo "Hello, Mac"
            }
        }
        
        stage ('Linux RUN') {
            when {
                expression { params.PLATFORM == 'Linux' }
            }
            steps {
                echo "Hello, Linux"
            }
        }
    }
}

输出: