我最近开始使用 Jenkins。我提供了两个参数来收集动态设置,并将在后期/步骤部分(在 bash 脚本中)使用它们。我参考了一些例子,例如
我尝试直接或通过环境、多个组合、单引号、双引号等使用参数。但是从参数收集的值仍然无法成功传递给 bash 命令。我相信这是一个非常基本的要求,但我找不到合适的工作示例。
这是我的示例代码。
pipeline {
agent {
docker {
image ...
args ...
}
}
environment {
USERNAME = ${params.E_USERNANE}
BRANCH = ${params.E_BRANCH}
}
parameters {
string(name: 'E_USERNANE', defaultValue: 'githubuser', description: 'Please input the username')
string(name: 'E_BRANCH', defaultValue: 'dev', description: 'Please input the git branch you want to test')
}
stages {
stage('build') {
steps {
echo "username: ${params.E_USERNANE}"
echo "branch: ${params.E_BRANCH}"
echo E_USERNANE
echo E_BRANCH
sh """
echo ${USERNAME} > /mydata/1.tmp
echo ${BRANCH} >> /mydata/1.tmp
"""
}
}
}
}