每个租户的数据库 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与CICD

记录一次成功CICD完整亲身实践从此踏进入Devops大门

DevOps落地实践 BAT系列 CICD iPipe vs CCI

云原生DevOps:CICD持续集成|交付|部署

DEVOPS架构师 -- 06基于sharedLibrary进行CICD流程的优化

建立Azure Dev Ops持续集成和持续交付(CICD)(准备好Azure DevOps的帐号并上传代码)