有一个 3 层应用程序。 React 中的 UI 代码作为静态网站部署在 Azure Blob 存储中。后端服务部署在 Azure 应用服务中。我们有 Azure APIM 作为面向互联网的服务来访问 API。
发布管道将构建部署到 DEV、QA(暂存)和 PROD 环境。部署到 QA 是基于合并到主分支后的批准。
QA 部署阶段完成后,将执行用 Java Cucumber 框架编写的自动化测试,该测试在 Azure 代理中打开无头 Chrome 浏览器并运行测试用例。
如果使用 Azure DevOps 自动化测试未通过,是否可以恢复 QA 环境中的 UI 构建?
由于 UI 构建已上传到 CD 管道中的 Azure Blob 容器,因此我们找不到通过替换静态文件自动恢复到早期构建的方法。
前端构建任务如下所示:
如果使用 Azure DevOps 自动化测试未通过,是否可以恢复 QA 环境中的 UI 构建?
可能有两个方面的代码:DevOps管道源代码和远程azure资源(azure存储帐户)。
如果您的 QA 阶段和自动化测试没有更新 DevOps 源代码,您可以忽略,因为下一个构建将再次获取源代码。如果是这样,你必须恢复 git。
我怀疑您想恢复azure资源存储帐户数据,如果是这样,您可以添加一个新的阶段/作业,添加condition来监控自动化测试结果,使用powershell命令或azure cli来恢复azure存储数据。
此外,直接更新资源可能不是一个好的选择,建议在测试环境(新分支,测试azure存储帐户)上检查部署。一旦确定,您就可以部署到生产资源了。