Jenkins 工作流将变量传递给 shell 脚本

Jenkins workflow pass variable to shell script

如何传递变量,例如buildNumber

sh 'gulp sometask --someOption="attribute=${env.BUILD_NUMBER}"'

使用 Jenkins 工作流/管道的 sh 命令? 不幸的是,我的示例只会产生错误的替换错误。

你尝试了吗

sh 'gulp sometask --someOption="attribute=${BUILD_NUMBER}"'

你能在这里试试这个命令吗:

sh "gulp sometask --someOption='attribute=${env.BUILD_NUMBER}'"

引号互换。我认为原因是,您可以使用双引号(使用 GString)进行模板化,这不适用于 groovy.

中的单引号(使用普通字符串)

有关详细信息,请参阅 Groovy Documentation

你能试试这个命令吗:

sh """gulp sometask --someOption='attribute=${env.BUILD_NUMBER}'"""