我的 Jenkins 管道使用代理 { node { label 'slave_node1' } }
在 Slave 上运行。
我使用名为 uploaded_file
的 Jenkins 文件参数并上传名为 hello.pdf
的文件
我的管道包含以下代码
stage('Precheck')
{
steps {
sh "echo ${WORKSPACE}"
sh "echo ${uploaded_file}
sh "ls -ltr ${WORKSPACE}/*"
输出:
/web/jenkins/workspace/MYCOPY
hello.pdf
ls: cannot access /web/jenkins/workspace/MYCOPY/* No such file or directory
如您所见,在从属 WORKSPACE 上没有找到任何文件。
您能否让我了解我是否在正确的位置(即在 WORKSPACE 目录下)检查上传的文件?
如何将文件上传到从属的工作区?
我使用的是 jenkins 版本 2.249.1
我可以至少在最新版本的 Jenkins 上使用它吗?
答案 0 :(得分:0)
那么您是否有一个在每次构建中都会复制的固定文件?即它是同一个文件?
在这种情况下,您可以将其保存为 jenkins 中的机密文件并执行以下操作:
environment {
FILE = credentials('my_file')
}
stages {
stage('Preperation'){
steps {
// Copy your fie to the workspace
sh "cp ${FILE} ${WORKSPACE}"
// Verify the file is copied.
sh "ls -la"
}
}
}