我需要遍历Jenkins构建文件夹,找到存储.zip报告归档文件的文件夹,并从那些归档文件中删除视频文件(在我的情况下,仅保留构建计数是不够的)。
我想出了这个解决方案,该解决方案实际上有效,但是看起来很丑:
def buildFolders = sh(returnStdout: true, script: "find [0-9]* -maxdepth 0 -type d").split("\\s+")
for (def folder in buildFolders) {
if (folder.trim().toInteger() < (env.BUILD_NUMBER.toInteger() - recentBuildsWithVideoCount)) {
sh(returnStdout: true, script: "zip -dq ${folder}/archive/allure-report.zip allure-report/data/*.avi || true")
}
}
find
步骤中使用sh
命令?zip
步骤,但似乎没有与-d
zip标志等效的步骤? 解决这些任务的最佳解决方案是什么?预先感谢。