【问题标题】:Skip and include files during deploy在部署期间跳过并包含文件
【发布时间】:2014-02-11 10:26:50
【问题描述】:
我正在使用这个 MSBuild 命令来部署我的 Web 应用程序。
/P:Configuration=Staging
/P:DeployOnBuild=True
/P:DeployTarget=MSDeployPublish
/P:MsDeployServiceUrl=192.168.1.5:8172/MsDeploy.axd
/P:AllowUntrustedCertificate=True
/P:DeployIisAppPath="Default Web Site/test"
/P:username=Administrator
/P:password=*****
/P:MSDeployPublishMethod=WMSVC
我需要以某种方式更改此配置以执行此操作:
从部署中排除一些文件夹
部署不属于项目的文件夹。此文件夹是在部署之前在构建服务器上创建的。它在源代码管理中不存在。
顺便说一句,我正在使用 Teamcity
【问题讨论】:
标签:
msbuild
teamcity
msdeploy
【解决方案1】:
您应该创建一个包含所有发布属性(密码除外)的发布配置文件(通过“发布”对话框),然后通过以下方式执行它:
/P:Configuration=Staging
/P:DeployOnBuild=True
/P:PublishProfile=Test
/P:Password=*****
从部署中排除一些文件夹
将此作为根元素的直接子元素添加到新创建的 pubxml:
<ItemGroup>
<MsDeploySkipRules Include="Uploads Folder">
<ObjectName>dirPath</ObjectName>
<AbsolutePath>Uploads$</AbsolutePath> <!-- Regex -->
</MsDeploySkipRules>
</ItemGroup>
部署一个不属于项目的文件夹。此文件夹是在部署之前在构建服务器上创建的。它在源代码管理中不存在
见this answer