我们的应用程序当前是在Azure上托管的ASP.NET Core应用程序,而我们的代码和管道则在Azure Dev Ops上托管。该应用程序非常简单,只需一个Web应用程序和Azure SQL数据库。
我们目前有大量的租户,我们希望在每个版本之后将其部署到。
我们目前有3条构建管道(由开发,测试和主分支触发): -开发 -测试 -生产
我现在迷路的是放置单个租户的位置,我们目前的道路是为每个租户建立一个“释放”管道。这是最好的方法吗?我们应该改用舞台吗?
我们的应用程序当前是在Azure上托管的ASP.NET Core应用程序,而我们的代码和管道则在Azure Dev Ops上托管。该应用程序非常简单,只需一个Web应用程序和Azure SQL数据库。
我们目前有大量的租户,我们希望在每个版本之后将其部署到。
我们目前有3条构建管道(由开发,测试和主分支触发): -开发 -测试 -生产
我现在迷路的是放置单个租户的位置,我们目前的道路是为每个租户建立一个“释放”管道。这是最好的方法吗?我们应该改用舞台吗?
对于您为何对dev
,test
和production
有单独的构建管道,我有些困惑。
您可以考虑将所有管道(构建和发布)整合为一个YAML pipeline。在这种方法下,您将拥有一个构建阶段,可以将其捕获为YAML stage template,并利用expressions / conditions来说明各种环境之间的差异。另外,如果构建过程在不同环境之间差异很大,则可以为每个构建阶段分别使用单独的构建阶段模板,并根据触发构建的分支添加适当的构建阶段模板。
对于发行版,您可以将每个捕获为YAML模板,然后使用已添加到YAML架构中的新deployment job元素将它们包括在管道的末尾。
希望这可以使您更接近解决方案,或者至少可以给您一些思考的地方。