MSDeploy通过MSBuild的有效参数

时间:2011-04-08 17:29:50

标签: tfs msbuild msdeploy

我正在尝试使用MSDeploy在TFS中的Team Build上部署Web应用程序。有几个问题解决了为了调用MSDeploy而必须在MSBuild中传递的属性,但是我没有找到足够的文档来说明可用的属性。有人有可用属性列表吗?

以下是我发现的一些问题,但我未能找到明确的属性列表:

6 个答案:

答案 0 :(得分:111)

这是我编制的列表供我自己参考,以及一些可以使用的合法值。请注意,这些使用/p:<PropertyName>=<Value>语法传递到MSBuild。

  • DeployOnBuild
  • DeployTarget
    • MsDeployPublish
    • 封装
  • 配置
    • 有效解决方案配置的名称
  • CreatePackageOnPublish
  • DeployIisAppPath
    • &lt;网站名称&gt; /&lt;文件夹&gt;
  • MsDeployServiceUrl
    • 您要使用的MSDeploy安装位置
  • MsDeployPublishMethod
    • WMSVC (网络管理服务)
    • RemoteAgent
  • AllowUntrustedCertificate (与自签名SSL证书一起使用)
  • 用户名
  • 密码
  • SkipExtraFilesOnServer (仅保留现有的非冲突文件)

答案 1 :(得分:7)

不幸的是,此时的文档几乎不存在。如果各种博客文章和论坛帖子不够全面,您可以随时查看MSDeploy使用的.target文件,该文件显示了如果您愿意花时间浏览大量XML,如何使用各种属性。

在我的机器上,它位于:

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\Web\Microsoft.Web.Publishing.targets

答案 2 :(得分:4)

我不知道这是否是您要查找的内容,但您可以使用msdeploy参数调用/?,它将显示有效参数列表

答案 3 :(得分:1)

这个/ p怎么样:IncrementalBuild = True

答案 4 :(得分:1)

此处更多https://msdn.microsoft.com/en-us/ff622991.aspx(对于sharepoint)

在构建中创建包: / P:IsPackaging =真

要在同一个drop输出位置设置发布目录: / P:PublishDir = 当您的解决方案包含多个应用项目时,请设置以下参数以生成特定于应用的发布目录。 / P:AppSpecificPublishOutputs =真

答案 5 :(得分:0)

SelfContained .NET Core2应用程序的WebDeploy配置。 注意2必填属性:

缺少 RuntimeIdentifier 引发:

  

错误NETSDK1031:不支持构建或发布   不包含RuntimeIdentifier的独立应用程序。   请指定一个RuntimeIdentifier或将SelfContained设置为   错误。

缺少 DeployIisAppPath 可能引发:

  

错误:属性“ DeployIisAppPath”必须为非空。

如果要将参数传递给 dotnet发布,请避免使用/ p循环依赖: DeployOnBuild = false

  

错误MSB4006:目标依赖项中有循环依赖项   涉及目标“发布”的图形。

完成命令行的WebDeploy配置:

/P:WebPublishMethod=MSDeploy
/P:DeployOnBuild=True 
/P:DeployTarget=MsDeployPublish 
/P:TargetFramework=netcoreapp2.0 
/P:SelfContained=true 
/P:MsDeployServiceUrl=https://my_subdomain.jobit.io:8172/MsDeploy.axd?site=subdomain_path
/P:AllowUntrustedCertificate=True 
/P:MSDeployPublishMethod=WMSvc 
/P:CreatePackageOnPublish=True 
/P:UserName=OTB
/P:Password=Expert 
/P:RuntimeIdentifier=win-x86
/P:DeployIisAppPath=subdomain_path