将GitLab CI与Python结合使用';onbuild&x27;如图所示,requirements.txt don';似乎没有安装

将GitLab CI与Python结合使用';onbuild&x27;如图所示,requirements.txt don';似乎没有安装,python,docker,gitlab-ci,gitlab-ci-runner,Python,Docker,Gitlab Ci,Gitlab Ci Runner,我正试图通过一个测试项目来熟悉环境。该项目具有以下.gitlab ci.yml: image: python:2.7-onbuild services: - rethinkdb:latest test_job: script: - pytest 问题在于CI管道中的test\u作业作业失败,并显示以下错误消息: Running with gitlab-ci-multi-runner 9.0.1 (a3da309) on docker-auto-scale (e11ae361

我正试图通过一个测试项目来熟悉环境。该项目具有以下
.gitlab ci.yml

image: python:2.7-onbuild
services:
  - rethinkdb:latest
test_job:
  script:
    - pytest
问题在于CI管道中的
test\u作业
作业失败,并显示以下错误消息:

Running with gitlab-ci-multi-runner 9.0.1 (a3da309)
  on docker-auto-scale (e11ae361)
Using Docker executor with image python:2.7-onbuild ...
Starting service rethinkdb:latest ...
Pulling docker image rethinkdb:latest ...
Using docker image rethinkdb:latest ID=sha256:23ecfb08823bc5483c6a955b077a9bc82899a0df2f33899b64992345256f22dd for service rethinkdb...
Waiting for services to be up and running...
Using docker image sha256:aaecf574604a31dd49a9d4151b11739837e4469df1cf7b558787048ce4ba81aa ID=sha256:aaecf574604a31dd49a9d4151b11739837e4469df1cf7b558787048ce4ba81aa for predefined container...
Pulling docker image python:2.7-onbuild ...
Using docker image python:2.7-onbuild ID=sha256:5754a7fac135b9cae7e02e34cc7ba941f03a33fb00cf31f12fbb71b8d389ece2 for build container...
Running on runner-e11ae361-project-3083420-concurrent-0 via runner-e11ae361-machine-1491819341-82630004-digital-ocean-2gb...
Cloning repository...
Cloning into '/builds/khpeek/CI-test'...
Checking out d0937f33 as master...
Skipping Git submodules setup
$ pytest
/bin/bash: line 56: pytest: command not found
ERROR: Job failed: exit code 1
但是,存储库中有一个
requirements.txt
,其中有一行
pytest==3.0.7
。然而,在我看来,从
python:2.7-onbuild
图像的角度来看,
pip install-r requirements.txt
应该在构建时运行。那么为什么找不到
pytest

如果查看链接到的,您将看到
pip install-r requirements.txt
是命令的一部分。如果您想从第一个容器创建一个新容器并安装一系列需求,那么这非常有用。因此,
pip install-r requirements.txt
命令不会在CI管道中的容器中执行,如果是,它将在一开始执行,甚至在克隆gitlab存储库之前

我建议您以这种方式修改
.gitlab ci.yml
文件

image: python:2.7-onbuild
services:
  - rethinkdb:latest
test_job:
  script:
    - pip install -r requirements.txt
    - pytest

问题似乎是间歇性的:虽然第一次运行测试需要61分钟(最初失败),但现在大约需要一分钟(见下面的屏幕抓图)

作为参考,测试存储库位于。(我必须在脚本之前添加一个
,并安装一些
pip
s,以使作业成功)