Jenkins - 如何清理/移动 'builds' 目录下的文件

Jenkins - How to clean / move files under 'builds' directory

我正在使用带有管道脚本的 Jenkins。在脚本的末尾,我想 delete/move Jenkins\jobs\MyMultiBranch\branches\master\builds 的一些内容(即一些日志和 build.xml)

如何使用 Pipeline 完成? 我试过了;

bat "del /F \"C:\Program Files (x86)\Jenkins\jobs\MyMultiBranch\branches\master\builds\%BUILD_NUMBER%\build.xml\""

但是没有用,文件还在。有人可以帮忙吗?

Jenkins 无法删除自己的工作目录是有道理的。 我想你可以做的是首先保存你想要保存的工件,如 Daniel mentionned,然后触发第二个工作(比如 delete-job),它将负责清理你的 job A 工作区。它看起来像这样:

// First save out anything you want
archiveArtifacts artifacts: '**/saveme.log'

// At the very end of your pipeline, call delete-job with the path you want to delete as a build parameter
build job: 'delete-job', quietPeriod: 5, wait: false, parameters: [[$class: 'StringParameterValue', name: 'folderToDelete', value: "${pathToFolderToDelete}"]]

静默期应该足以让删除作业删除您的 job A 文件夹。

delete-job 看起来像这样:

node() {
  bat "del /F '${pathToFolderToDelete}'"
}

其中pathToFolderToDelete是Jenkins根据作业参数自动推断的变量