在 GitLab 中创建一个 pyqt 构建

Create a pyqt build in GitLab

我正在 pyqt4 中制作一个程序,使用 python3.4 并在 Gitlab 上托管。当我尝试构建时失败了。 这是我项目中的 .gitlab-ci.yml 文件:

 before_script:
     - apt-get update -qy
     - apt-get install -y python3 python3-dev python3-pip python3-pyqt4
     - export DISPLAY=:0.0

test:
    script:
        - python3 main.py

错误是:main.py: cannot connect to X server: 0.0。我在没有 export DISPLAY=:0.0 的情况下尝试什么都没有

如果 PyQt5 是一个选项,Qt 5 有 "minimal" 平台插件。 要使用它,请修改传递给 QApplication 的 argv 以包含 ['-platform', 'minimal'].

(参考:)

对于 PyQt4,您可以使用虚拟 X 服务器:

sudo apt-get install xvfb
xvfb-run python render.py

(参考:)

我试过:

  • 在 QApplication 的 sys.argv 中包含 ['-platform', 'minimal']:失败
  • 尝试过 xvfb:获得 xvfb-run: error: xauth command not found(即使在设置 PATH 之后)

但是 QT_QPA_PLATFORM: "offscreen" 工作很有魅力,化险为夷。

示例:

pytest:
  image: python:3.6
  variables:
    QT_QPA_PLATFORM: "offscreen"
  script:
    - pytest tests/

感谢steve