continuous-integration - Bamboo build-dir多余的空间可以用cron作业清理吗?

标签 continuous-integration bamboo diskspace

我们使用Bamboo CI。有多个 Bamboo 本地代理商,并且在许多计划中并行构建。 Bamboo-home中的build-dir有数百GB,分析表明,随着添加新的功能分支,它在不断增长。计划似乎在每个本地代理目录中都有重复,也直接在build-dir中重复了。

与即将过期的文物不同,Bamboo似乎无法自行清理。例如,如果删除了本地代理,则本地代理构建目录将永远坐在那里,占用大量空间。

可以将计划设置为在构建结束时进行清理,但是如果需要对构建进行事后分析,则会影响问题分析。

由于目录空间不足,我刚刚添加了一个日常cron任务,以定期删除超过21天未访问的文件和目录。当我第一次手动运行此程序时,我从600GB的分区中回收了300GB。我想知道其他人是否也遇到过同样的问题,从长远来看,从外部清理build-dir是否安全。它会影响 Bamboo 制品吗?我是否错过了一些 Bamboo 制选择,可以为我做到这一点?

在Atlassian网站上进行搜索没有帮助,也没有任何答案...其他人正在采取什么措施来驯服这种太空 pig ?

最佳答案

cron作业已经运行了一段时间,没有任何问题,并且正在控制空间使用。

我已将参数减少为15天。

我的crontab看起来像这样:

# clean up old files from working directory
0 20 * * * find /<path_to>/bamboo-home/xml-data/build-dir/ -depth -not -path *repositories-cache* -atime +15 -delete

# clean up old backups every Sunday
0 21 * * 0 find /<path_to>/bamboo-home/backups -type f -mtime +28 -delete

# remove any old logs from install directory after 15 days
0 22 * * * find /<path_to>/bamboo/logs/ -type f -mtime +15 -delete

# quick and dirty truncate catalina.out to stop it growing too large (or better still use logrotate) 
0 23 * * * cat /dev/null > /<path_to>/bamboo/logs/catalina.out

我希望这对尝试驯服Bamboo的磁盘空间使用情况的其他人有用。
第一项工作很重要,最后三项只是家务。

N.B.由于我公司外包Linux环境中的特殊情况,在catalina.out上不使用logrotate。我一般建议尽可能使用logrotate而不是我的快速而肮脏的截断方法-参见Jon V的回答。

关于continuous-integration - Bamboo build-dir多余的空间可以用cron作业清理吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35444951/

相关文章:

java - Ant: "IOException: Error writing request body to server"部署到 tomcat

teamcity - 如何清除teamcity中以下目录所在的磁盘空间不足

amazon-ec2 - 尝试 resize2fs EB 卷失败

MySQL Group by 查询消耗 20 倍的磁盘空间

java - 通过测试套件中的@ExcludeCategory 忽略 junit 测试

continuous-integration - 如何在 Bamboo 中运行 .NET Core 单元测试?

testing - 将 QTP 测试与 TFS 2010 集成

jenkins - 如何说服 Jenkins 共享多个工作的内部编号?

带有 Atlassian Bamboo 的 Android CI

continuous-integration - Bamboo Java 规范、单个管道存储库和多个项目