每个租户的数据库 DevOps CICD
Posted
技术标签:
【中文标题】每个租户的数据库 DevOps CICD【英文标题】:Database-per-tenant DevOps CICD 【发布时间】:2022-01-17 03:55:52 【问题描述】:我们使用的是每租户数据库结构。目前,我们通过创建更改脚本并针对每个数据库运行该脚本,手动部署到每个租户的每个数据库。我们想利用 Azure DevOps 和它提供的 CICD 工具。构建管道很好,因为它构建了发布到数据库所需的 dacpac 文件。我的问题是如何为每个租户发布每个数据库实例?
“SQL Server 数据库部署”任务只允许您指定服务器和一个数据库。我是为每个数据库创建一个 SQL Server 数据库部署任务,还是为每个租户创建一个阶段,将 SQL Server 数据库部署任务部署到租户的数据库,或者是否有更好的方法来设置 Azure DevOps Releases 管道以发布给每个租户D B?我正在使用 Azure DevOps 经典编辑器,因为我对 yaml 没有太多经验。
谢谢!
【问题讨论】:
这是 YAML 管道和循环的一个很好的用例。使用经典编辑器,是的,您别无选择,只能进行大量复制/粘贴工作。 【参考方案1】:如果您有 SH 代理池,最简单的方法是使用代理池中的 mssql-cli 并将数据库详细信息作为变量传递。
【讨论】:
以上是关于每个租户的数据库 DevOps CICD的主要内容,如果未能解决你的问题,请参考以下文章
DevOps落地实践 BAT系列 CICD iPipe vs CCI