1 回答
TA贡献1757条经验 获得超8个赞
我相信问题出在你的cloudbuild.yaml. 您需要对其进行配置以从 Dockerfile 构建映像。查看官方的 Google Cloud Build以了解如何创建构建配置文件。
我一直在尝试这个简单的设置,它对我有用:
├── project
├── cloudbuild.yaml
└── Dockerfile
└── test_sample.py
内容test_sample.py:
def inc(x):
return x + 1
def test_answer():
assert inc(3) == 4
这是cloudbuild.yaml:
steps:
- name: 'gcr.io/cloud-builders/docker'
args: [ 'build', '-t', 'gcr.io/$PROJECT_ID/pytest-image', '.' ]
images:
- 'gcr.io/$PROJECT_ID/pytest-image'
的Dockerfile,重要的是这个项目在自己的目录复制到运行pytest是很重要的。
FROM python:3.7
COPY . /project
WORKDIR /project
RUN pip install pytest
ENTRYPOINT ["pytest"]
现在,在项目目录中我们构建镜像:
gcloud builds submit --config cloudbuild.yaml .
我们拉它:
docker pull gcr.io/$PROJECT_ID/pytest-image:latest
并运行它:
docker run gcr.io/$PROJECT_ID/pytest-image:latest
结果:
============================= test session starts ==============================
platform linux -- Python 3.7.2, pytest-4.2.0, py-1.7.0, pluggy-0.8.1
rootdir: /src, inifile:
collected 1 item
test_sample.py . [100%]
=========================== 1 passed in 0.03 seconds ===========================
添加回答
举报