使用tfs ci cd实现特定于环境的数据库自动化
我正在尝试使用TFS CI/CD自动化数据库部署。 MSBuild,用于构建数据库,该数据库将创建dacpac Winrm for db部署到本地sql server 在建造期间,我通过 MSBuild参数:/t:build/t:publish/p:SqlPublishProfilePath=db.publish.xml db.publish.xml文件的内容使用tfs ci cd实现特定于环境的数据库自动化,tfs,msbuild,continuous-integration,winrm,dacpac,Tfs,Msbuild,Continuous Integration,Winrm,Dacpac,我正在尝试使用TFS CI/CD自动化数据库部署。 MSBuild,用于构建数据库,该数据库将创建dacpac Winrm for db部署到本地sql server 在建造期间,我通过 MSBuild参数:/t:build/t:publish/p:SqlPublishProfilePath=db.publish.xml db.publish.xml文件的内容 <?xml version="1.0" encoding="utf-8"?> <Project ToolsVersio
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<IncludeCompositeObjects>True</IncludeCompositeObjects>
<TargetDatabaseName>dev_DB</TargetDatabaseName>
<DeployScriptFileName>db.sql</DeployScriptFileName>
<TargetConnectionString>Data Source=xxxx;Persist Security Info=True;User ID=sa;password=xxx;Pooling=False;MultipleActiveResultSets=False;Connect Timeout=60;Encrypt=False;TrustServerCertificate=True</TargetConnectionString>
<ProfileVersionNumber>1</ProfileVersionNumber>
</PropertyGroup>
</Project>
真的
开发数据库
db.sql
数据源=xxxx;持久安全信息=True;用户ID=sa;密码=xxx;池=假;MultipleActiveResultSets=False;连接超时=60;加密=假;TrustServerCertificate=True
1.
我的版本当前配置为dev.和QA。。该版本对于开发人员来说运行良好,但对于QA来说却不起作用
一个观察结果是:构建中的SqlPublishProfilePath引用的是发布文件,该文件引用的是开发人员
我想为开发和QA使用相同的dacpack文件。正如我在发布任务中提到的,特定的发布文件
在
发布配置文件
参数中,通常指定目标计算机或计算机管理员凭据可访问的UNC共享上发布配置文件XML文件的路径
变量$(devpublishprofile)
似乎指向开发人员计算机上的路径。您有两种解决问题的方法:
$(devpublishprofile)
指定给开发人员和QA都可以访问的UNC共享$(devpublishprofile)
指向的同一路径中我试着Cece Dong不工作,更改没有反映。你能分享你发布的整个日志吗?