有时候jenkins的job会占用很大的空间,不要问我为什么会知道(某天在服务器上打命令时按下tab突然No space),那么想删除历史构建有什么技巧呢?
#假设jenkins的job名称为:auto_get_product_info,占用空间最多的构建版本:1888 #如下代码将删除1到1888的历史构建 def jobName = "auto_get_product_info" def maxNumber = 1888 Jenkins.instance.getItemByFullName(jobName).builds.findAll { it.number <= maxNumber }.each { it.delete() }
浏览器访问jenkins > Manage Jenkins(系统配置,如果没记错的话) > Script Console > ctrl + c, ctrl+v > run > done
进入jenkins的jobs目录,暴力删除(rf /var/lib/jenkins/jobname/builds/ -rf,谨慎删除)
题外话, 笨方法找到占用空间大的目录
du -sh /var/lib/* | sort -rn | head 查看/var/lib/目录下空间大的前几个 du -h --max-depth=1 查看当前目录下一级子目录大小 du -h --max-depth=1| | sort -rn 查看当前目录下一级子目录大小,倒序排序 du -h --max-depth=1 /path 查看/path目录下的一级子目录大小
如还有其他更好删除历史构建的方法切方便告知的话,那就更感谢了, 全文done