背景:I在GKE集群中有8-9个基于clusterIP spring的私有微服务。所有的微服务都将集成测试捆绑在一起。我使用bitbucket和maven作为构建工具。
所有的微服务都是通过url:http://:8080/rest/api/fetch的rest调用彼此交谈的。
需求: GKE测试集群上的所有映像都已准备好测试环境。我希望一旦我合并代码以掌握服务-A,管道应该将映像部署到test并运行集成测试用例。如果测试用例通过,它应该部署到QA-环境中,否则就会回滚服务的映像-A返回到以前的映像。
问题:在每段代码上合并为master测试用例的服务-A,构建它的对接映像,将其推到GCR上,并将其部署到测试-env集群上。但是,如果集成测试用例失败,如何在部署后触发集成测试用例并回滚到以前部署的映像回滚?有办法吗?
TIA
发布于 2020-01-15 10:51:24
You can create different steps for each part:
pipelines:
branches:
BRANCH_NAME:
- step:
script:
- BUILD
- step:
script:
- DEPLOY
- step:
script:
- First set of JUNIT test
- step:
script:
- Run Integration Tests (Here you can add if you fail to do rollback)
script:
- Upload to QA
发布于 2020-01-06 13:05:48
你有很多方法可以做到这一点。从以上信息来看,您使用的构建工具并不清楚。
发布于 2020-01-06 13:07:14
您可能应该检查一下泰克顿提供了什么。Tekton管道项目为声明CI/CD风格的管道提供了K8S风格的资源。
https://stackoverflow.com/questions/59612496
复制相似问题