Jenkins unstash不起作用,但目录不干净

时间:2019-10-29 10:40:59

标签: jenkins jenkins-pipeline

在我的Jenkinsfile中,如下所示在构建节点上运行stash

stash name: "test-stash", includes: "target/bin/Release/**"

成功运行并存储了约33个文件。

稍后,管道中的内容不会在另一个节点上隐藏,如下所示

dir(pwd()) {
   unstash "test-stash"
}

存储库运行无误,但是当我检查存储库的内容时,其中有完全不同的文件。

因此,要清理目录,我会先进行清理,然后再给我以下错误

...
[Pipeline] echo
[INFO] Unstash `test-stash` to 'd:\jenkins\tools\ci-home\workspace\myapp_release_master@2'
[Pipeline] dir
Running in d:\jenkins\tools\ci-home\workspace\myapp_release_master@2
[Pipeline] {
[Pipeline] echo
[ERROR] Unable to clean directory 'd:\jenkins\tools\ci-home\workspace\myapp_release_master@2'
java.lang.IllegalArgumentException: d:\jenkins\tools\ci-home\workspace\myapp_release_master@2 does not exist

所以我的问题是为什么隐藏无法按预期方式工作以及为什么无法清理文件夹。

1 个答案:

答案 0 :(得分:0)

隐藏到pwd()似乎无效。但是,在pwd()的子文件夹中进行隐藏似乎可以工作。

dir("./test") {
   unstash "test-stash"
}