Cloud 运行 Cloud Build 步骤中的集成测试?
Cloud Run integration tests within Cloud Build steps?
我正在查看 Cloud 运行 对本地测试 here 的建议,即 docker run
您的
容器,然后 运行 你在 localhost:8080 上针对它进行的测试。像这样:
PORT=8080 && \
docker run -d -p 8080:${PORT} -e PORT=${PORT} gcr.io/myproject/myimage && \
./runtests.sh
现在假设我想 运行 这些测试作为 Cloud Build 的一部分。是 possible/advisable 到 运行 docker run
作为 Cloud Build 步骤吗?我没有看到 docker 本身的任何 gcr.io 图片,所以我猜不是?
还是需要先实际部署到云端运行,然后再测试?
根据文档,您应该可以这样做。您可以创建自定义步骤,docker 有一张图片:gcr.io/cloud-builders/docker
。 public documentation 中的 cloudbuild.yaml
中有更多关于创建自定义步骤的信息。
与此类似的内容应该适合您:
steps:
- name: 'gcr.io/cloud-builders/docker'
args: [ 'run', '-d', '-p', '8080:8080', '-e', 'PORT=8080', 'gcr.io/myproject/myimage' , './runtests.sh']
我正在查看 Cloud 运行 对本地测试 here 的建议,即 docker run
您的
容器,然后 运行 你在 localhost:8080 上针对它进行的测试。像这样:
PORT=8080 && \
docker run -d -p 8080:${PORT} -e PORT=${PORT} gcr.io/myproject/myimage && \
./runtests.sh
现在假设我想 运行 这些测试作为 Cloud Build 的一部分。是 possible/advisable 到 运行 docker run
作为 Cloud Build 步骤吗?我没有看到 docker 本身的任何 gcr.io 图片,所以我猜不是?
还是需要先实际部署到云端运行,然后再测试?
根据文档,您应该可以这样做。您可以创建自定义步骤,docker 有一张图片:gcr.io/cloud-builders/docker
。 public documentation 中的 cloudbuild.yaml
中有更多关于创建自定义步骤的信息。
与此类似的内容应该适合您:
steps:
- name: 'gcr.io/cloud-builders/docker'
args: [ 'run', '-d', '-p', '8080:8080', '-e', 'PORT=8080', 'gcr.io/myproject/myimage' , './runtests.sh']