记一次gitlab artifact问题
2025-09-12 03:21 蜡笔小旧 阅读(6) 评论(0) 收藏 举报今天前端告诉我前端发布越来越慢了. 一看gitlab的deploy文件1千多个.
就开始查已开始查问题,
1. 一直觉得是前端build的问题,后来看了下build的文件只有几十个. 那就不是build的问题.
2. 开始怀疑是cache把dist目录缓存了, 后面发现也没有.
3. 怀疑是artifact lifecycle的问题, 去建了个新项目也没有问题,artifact只会存在于整个pipeline. expire_in也只是说保存在服务器中的时间.
看了下artifact在web上是对的, 但是在disk打印出来数量不对.
后面想了想最新好像是切了gitlab runner, 可能是这个问题导致的.
然后我试着切换了下gitlab runner果然artifact只有几十个文件.
试着用命令上服务器测试了下:
find / -type f -name "xxx.js"
果然在一个docker的volume目录里面, 那就印证了我的猜想:
before: [build: runer1, deploy: runner1]
after: [build: runer2, deploy: runner1]
由于deploy带了策略GIT_STRATEGY: none, 导致gitlab不会把老的dist文件夹清除.
之后就是一直用老的dist, 并且每次都会加入新的文件到dist. 因为gitlab会一直使用老的docker volume 挂到docker container上面.
所以只要删除dist文件夹就好了.
浙公网安备 33010602011771号