在 Google Cloud Build 中运行单元测试?

swi*_*cks 7 google-cloud-platform google-cloud-build

我正在尝试为几个 Python 项目(所有 GAE/GCF)设置 CI/CD。我可以很好地部署代码,但我想在部署步骤之前运行整个测试套件。我怎样才能做到这一点?我是否必须设置整个 docker 构建步骤才能完成此操作,还是有更简单的方法?

Chr*_*ung 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']
Run Code Online (Sandbox Code Playgroud)

我构建并标记我的容器映像。然后我将其推送到 Google Cloud Repo。然后我运行测试pytest,然后部署到 Google Cloud Engine。