使用 CI/CD 管道部署数据库项目时如何设置 SQL 用户密码

Posted

技术标签:

【中文标题】使用 CI/CD 管道部署数据库项目时如何设置 SQL 用户密码【英文标题】:How to set SQL user password when deploying database project using CI/CD pipeline 【发布时间】:2017-10-18 14:05:22 【问题描述】:

我在 Visual Studio 中有数据库项目 (.sqlproj),我在其中创建这样的用户:

CREATE USER [MyUser] WITHOUT LOGIN; --I dont want to store password in source control
GO
ALTER ROLE [db_datareader] ADD MEMBER [MyUser]
GO
ALTER ROLE [db_datawriter] ADD MEMBER [MyUser]
GO
ALTER ROLE [db_executor] ADD MEMBER [MyUser]

我在 VSTS Build 中构建 dacpack 并在 VSTS Release 中将其部署到 Azure:

如何设置持续部署,以便创建带密码的用户?

【问题讨论】:

【参考方案1】:

Azure Marketplace 中的This 插件可能有用。

您还可以使用 PowerShell 创建登录并包括条件执行。

更多替代方案解释here。

希望这会有所帮助。

【讨论】:

我想知道没有人提到SQLCMD Variables,这是我最终得到的解决方案

以上是关于使用 CI/CD 管道部署数据库项目时如何设置 SQL 用户密码的主要内容,如果未能解决你的问题,请参考以下文章

实践:基于Azure部署Jenkins服务并开发MERN应用的CI/CD构建管道

剪切新版本时如何触发 GitLab CI/CD 管道?

我们如何使用管道将azure devops中的应用程序部署到具有不同订阅和组织的azure app服务

触发 Gitlab CI/CD 管道以部署存储库的特定部分

用于 GAS 的 React App + Node Gitlab ci cd 管道(构建和部署)

通过 GitLab 部署 Azure 数据工厂管道