Gitlab无法在建筑物上清理我的缓存。 如何解决这个问题?
执行者:shell
Fetching changes...
warning: failed to remove config/__pycache__/__init__.cpython-36.pyc
warning: failed to remove config/settings/__pycache__/local.cpython-36.pyc
warning: failed to remove config/settings/__pycache__/__init__.cpython-36.pyc
warning: failed to remove config/settings/__pycache__/common.cpython-36.pyc
warning: failed to remove config/settings/__pycache__/test.cpython-36.pyc
warning: failed to remove docs/__pycache__/__init__.cpython-36.pyc
答案 0 :(得分:1)
幸运的是,我遇到了和你一样的问题(我认为)。
一点背景:
我正在使用gitlab ci来构建使用远程运行器(shell) 将构建一个docker镜像然后运行一些测试。
<强>原因:强>
我通过将-v标志传递给
docker run
来在容器中挂载一个本地目录(例如,还有其他方法可以使用compose yml)。因为docker容器以root身份运行,所以生成的__pycache__目录和文件在本地文件系统上由root拥有;这意味着docker-runner无权在下一次构建时删除它们。
解决方案:
删除装载并复制文件。
答案 1 :(得分:0)
我的解决方法是不要让python创建*.pyc
文件
https://docs.python.org/3/using/cmdline.html#envvar-PYTHONDONTWRITEBYTECODE