gpt4 book ai didi

python - 使用 GitLab CI 和 Python 'onbuild' 镜像,requirements.txt 中的包似乎没有安装

转载 作者:太空宇宙 更新时间:2023-11-03 15:23:26 26 4
gpt4 key购买 nike

我正在尝试熟悉 Gitlab CI具有测试项目的环境,https://gitlab.com/khpeek/CI-test 。该项目具有以下 .gitlab-ci.yml:

image: python:2.7-onbuild
services:
- rethinkdb:latest
test_job:
script:
- pytest

问题是 CI 管道中的 test_job 作业失败并显示以下错误消息:

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。在我看来来自Dockerfile但是,python:2.7-onbuild 镜像的 pip install -rrequirements.txt 应该在构建时运行。那么为什么找不到 pytest 呢?

最佳答案

如果你看Dockerfile如果您链接到,您会看到 pip install -rrequirements.txtonbuild 的一部分命令。如果您想从第一个容器创建一个新容器并安装一堆需求,这非常有用。因此,pip install -rrequirements.txt 命令不会在 CI 管道的容器内执行,如果是的话,它会在一开始就执行,甚至在克隆 gitlab 存储库之前执行。

我建议您这样修改 .gitlab-ci.yml 文件

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

关于python - 使用 GitLab CI 和 Python 'onbuild' 镜像,requirements.txt 中的包似乎没有安装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43322595/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com