虚拟化容器,大数据,DBA,中间件,监控。

gitlab-runner报错解决:ERROR: cache factory not found: factory for cache adapter

17 12月
作者:admin|分类:系统运维

背景说明:
项目采用的是代码提交后会自动触发gitlab-runner功能,然后编译项目,制作成docker镜像,上传到nexus仓库。

使用一段时间后出现个问题,在项目编译后生成的jar包这儿报错,具体信息如下:
这个报错信息是gitlab-runner工具的报错信息

ERROR: Could not create cache adapter      error=cache factory not found: factory for cache adapter "" was not registere

gitlab编译页面也会显示有关的错误信息,这里忘了截图保存了。

排查一番后得知,不是gitlab-runner的问题,而是gitlab的问题

具体问题如下:
编译项目后生成的jar包会提供给Dockerfile文件使用,这里采用的是artifacts。
但是每次编译后都会在gitlab的对应目录下生成一个目录存放这个jar包,默认路径是:/var/opt/gitlab/gitlab-rails/shared/artifacts

里面的目录是随机生成的用来存放每次使用gitlab-runner编译后生成的jar包。

时间长了之后这个目录会占用比较大的磁盘空间,当磁盘空间不够的时候再次编译就会报上述错误。

自动解决办法
使用管理员账号登录gitlab,找到设置中的CI/CD,设置artifacts的有效期,这样一来就不用手动删除了,到期自动删除

这里的解决办法是删除这个目录下除了tmp文件夹外的所有文件夹,也就是删除已经存在的存放jar包的文件夹,然后再次使用gitlab-runner工具编译操作就可以了

浏览467 评论0
返回
目录
返回
首页
批量注册项目使用gitlab-runner 在gitlabci上使用if-else条件