【问题标题】:Ownership issue with Shell RunnerShell Runner 的所有权问题
【发布时间】:2020-03-03 02:11:03
【问题描述】:

我正在尝试使用 shell 运行器在我的 django 项目上设置管道。

我有 2 份工作:

  • 一个来建立我的形象
  • 一个运行测试。

第一次构建成功,但在我的第二份工作中,我的工作文件夹出现所有权问题:

warning: failed to remove api/__pycache__/resolvers.cpython-37.pyc

这是我的 gitlab 运行器配置:

[[runners]]
  name = "Shell Runner"
  url = "https://gitlab.com"
  token = "<my-token>"
  executor = "shell"
  [runners.custom_build_dir]
  [runners.cache]
    [runners.cache.s3]
    [runners.cache.gcs]

有没有办法让构建和测试分开作业而不会出现这个问题?

【问题讨论】:

    标签: docker continuous-integration gitlab runner


    【解决方案1】:

    因此,在与此作斗争后,我终于找到了解决方案。

    当 python 在__pycache__ 中安装模块时,所有者是root,因此运行者无法在每个作业之间删除这些文件。

    为了解决这个问题,我在Dockerfile 中添加了ENV PYTHONDONTWRITEBYTECODE 1,以防止创建__pycache__ 文件。

    【讨论】:

      猜你喜欢
      • 2021-09-29
      • 1970-01-01
      • 2021-05-29
      • 2019-06-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-28
      相关资源
      最近更新 更多