首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Jenkins管道-删除@tmp文件夹

Jenkins管道-删除@tmp文件夹
EN

Stack Overflow用户
提问于 2019-03-22 10:16:42
回答 4查看 14.1K关注 0票数 5

我使用“工作空间清理插件”来清理工作结束后的工作空间。但是仍然没有删除@tmp目录。

任何方式我们都可以删除这个@tmp文件夹使用管道脚本。

就我在Jira看来,这似乎是一个已知的问题:

EN

回答 4

Stack Overflow用户

发布于 2019-03-28 07:01:56

我在Jenkins中使用了自定义工作区,这样deleteDir()就不会删除@tmp文件夹。

因此,要删除@tmp以及工作区,请使用以下命令

代码语言:javascript
运行
复制
pipeline {
    agent {
        node {
            customWorkspace "/home/jenkins/jenkins_workspace/${JOB_NAME}_${BUILD_NUMBER}"
        }
    }
    post {
        cleanup {
            /* clean up our workspace */
            deleteDir()
            /* clean up tmp directory */
            dir("${workspace}@tmp") {
                deleteDir()
            }
            /* clean up script directory */
            dir("${workspace}@script") {
                deleteDir()
            }
        }
    }
}

这个片段也适用于默认工作空间.

票数 7
EN

Stack Overflow用户

发布于 2019-03-22 15:24:35

您可以使用deleteDir()作为管道Jenkinsfile的最后一步(假设您没有更改工作目录)。

票数 2
EN

Stack Overflow用户

发布于 2020-05-19 06:43:05

不是直接回答你的问题,但可能会帮助别人。

如果您使用目录 Jenkins管道步骤更改目录,那么您将看到创建这些@tmp文件夹。相反,使用cd命令,它们一开始不会被创建。

所以,而不是

代码语言:javascript
运行
复制
def myFunc(String folder) {
  dir(folder) {
   // work
  }
}

这样做。

代码语言:javascript
运行
复制
def myFunc(String folder) {
  bat "cd ${folder}"
  // work
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55297411

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档