我正在尝试为多个Python项目(所有GAE / GCF)设置CI / CD。我可以很好地部署代码,但是我想在部署步骤之前运行整个测试套件。我怎样才能做到这一点?我是否必须设置一个完整的docker build步骤才能完成此操作,还是有一种更简单的方法?
答案 0 :(得分:1)
这是我的操作方式:
- name: 'gcr.io/cloud-builders/docker'
entrypoint: 'bash'
args: ['-c', 'docker build . --tag my_app']
- name: 'gcr.io/cloud-builders/docker'
entrypoint: 'bash'
args: ['-c', 'docker tag my_app:latest eu.gcr.io/my_project/my_app']
- name: 'gcr.io/cloud-builders/docker'
entrypoint: 'bash'
args: ['-c', 'docker push eu.gcr.io/my_project/my_app']
- name: 'gcr.io/cloud-builders/docker'
entrypoint: 'bash'
args: ['-c', 'docker run my_app pytest']
- name: 'gcr.io/cloud-builders/gcloud'
args: ['app', 'deploy', 'app.yaml', '--image-url=eu.gcr.io/my_project/my_app:latest']
我构建并标记了容器图像。然后,将其推送到Google Cloud Repo。然后,我使用pytest
运行测试,然后将其部署到Google Cloud Engine。