.net 配置TeamCity MSBuild和MSDeploy
我在使用MSBuild和MSDeploy设置不同的环境时遇到问题 我在TeamCity上设置了2种配置.net 配置TeamCity MSBuild和MSDeploy,.net,msbuild,teamcity,msdeploy,.net,Msbuild,Teamcity,Msdeploy,我在使用MSBuild和MSDeploy设置不同的环境时遇到问题 我在TeamCity上设置了2种配置 TestConfiguration(在测试配置中构建应用程序并运行单元测试) StagingConfiguration(用于打包并部署到我们的暂存箱中,以进行UA测试) 我的TestConfiguration工作正常,但StagingConfiguration没有部署包 <MSBuild Projects="MyProject\MyProject.csproj" Pro
<MSBuild Projects="MyProject\MyProject.csproj"
Properties="Configuration=Staging;
DeployOnBuild=true;
DeployTarget=Package;"/>
但两人似乎都没做什么,我是不是错过了重点?我还没有找到任何文档,只是到处都有一些奇怪的博客文章。我是否需要在TeamCity服务器上安装一些东西才能让MSDeploy正常工作
我的理想情景是:
您需要配置TeamCity“系统属性”,该属性将传递给MsBuild并控制MsDeploy管道 正确设置有点困难,但需要设置的有:
- system.CreatePackageOnPublish=true
- system.DeployOnBuild=true
- system.DeployTarget=MSDeployPublish
- system.MSDeployPublishMethod=WMSvc
- system.deployiisappath=[默认网站]
- system.MSDeployServiceUrl=[yourServerDomainName]
- system.Username=[用户名]
- system.Password=[密码]
当Visual Studio未安装在生成服务器上时(它绝对不应该安装),您需要从您的开发人员计算机中获取一些文件以使其运行: 从dev计算机上的
C:\Program Files\MSBuild\Microsoft\VisualStudio\v10.0
文件夹中,将Web
和Web应用程序
文件夹复制到生成服务器上的等效目录
(from)您得到了什么错误消息?您检查过运行生成代理的用户帐户是否有对所提到的UNC路径的写访问权限?您应该考虑在CI构建过程中构建MSDebug包,并使用“部署构建”使用MSDebug来删除现有的(构建工件)构建包。在您的方法中,您是从每个部署的源代码重建的。请注意,这是一个非常好的方法,它可以引导您使用TeamCity从一个构建到另一个部署,并创建工件(构建的代码)。虽然他的帖子使用了Subversion,但是你可以很容易地用TFS替换它。它采用的方法是构建msdeploy website.zip,然后部署它。同样,如果您可以扩展您的答案并提供链接供参考,那将是一件好事。非常感谢。@Kev我补充了更多细节。
_PackageTempDir=\\server\c$\WebDirectory;
PackageLocation=\\server\c$\WebDirectory;