也许我在这里误解了Jenkins文件参数的预期用途……
我希望能够上传包含一些数据的文件(在我的例子中是逗号分隔的变量).然后,我想简单地阅读这个文件并对数据进行处理.我使用Pipeline作业进行了此设置.
我的文件位置设置为’email_list.csv’.在我的管道脚本中我有
node {
stage('post') {
emailFile = readFile 'email_list.csv'
println "${emailFile}"
//.........
}
}
这失败了java.io.FileNotFoundException:/var/lib/jenkins/workspace/job-name/email_list.csv(没有这样的文件或目录)异常
参数化构建不应该设置此文件吗?如果没有,我如何阅读上传的数据?
最佳答案 Jenkins默认提供构建作业参数作为管道中的参数映射.它是一对键值对.所有逗号分隔的值都将显示在值字段中.您可以在groovy脚本中引用它们,
print params.emailFile
要将其转储为文件,可以使用writeFile库函数.
P.S:如果你在grovy脚本中打印params,你将能够看到你工作的所有构建参数.