我目前使用 TeamCity 中的 MSBuild 运行程序在本地服务器上进行持续集成,效果非常好。但是,我无法以 TeamCity 期望的格式找到 MSDeploy 支持的命令行开关的完整列表。
目前,在我的“参数”部分中,我使用以下开关:
/P:Configuration=OnCommit
/P:DeployOnBuild=True
/P:DeployTarget=MSDeployPublish
/P:MsDeployServiceUrl=https://CIServer:8172/MsDeploy.axd
/P:AllowUntrustedCertificate=True
/P:MSDeployPublishMethod=WMSvc
/P:CreatePackageOnPublish=True
/P:UserName=Kaine
/P:Password=**********
/P:DeployIISAppPath="OnCommit/MySite"
/P:SkipExtraFilesOnServer=True
/P:DeployAsIisApp=True
所有这些似乎都工作正常,并且 MSDeploy 按预期工作。
当我想添加额外的参数时,麻烦就来了。
我查找了 MSBuild 参数和 MSDeploy 文档,似乎只找到了如下命令行参数:
msbuild SlnFolders.sln /t:NotInSolutionfolder:Rebuild;NewFolder\InSolutionFolder:Clean
http://msdn.microsoft.com/en-us/library/ms164311.aspx http://msdn.microsoft.com/en-us/library/ms164311.aspx
似乎这些命令行参数的引用与 /P: 格式不对应 - 例如 CreatePackageOnPublish 和 DeployIISAppPath 无法识别命令行参数,但它们在 TeamCity 构建过程中工作正常。
在哪里可以找到格式为 MSDeploy 参数的完整文档列表
/P:参数=值
附加信息:
这里有一个参数列表:
http://msdn.microsoft.com/en-us/library/microsoft.teamfoundation.build.workflow.activities.msbuild_properties.aspx http://msdn.microsoft.com/en-us/library/microsoft.teamfoundation.build.workflow.activities.msbuild_properties.aspx
然而,这不是一个完整的列表 - 例如,此列表不包括 DeployAsIisApp 或 SkipExtraFilesOnServer,这两个参数都是在 Team City Build 中使用的。
还有这个相关问题(可能重复):通过 MSBuild 的 MSDeploy 的有效参数 https://stackoverflow.com/questions/5598668/valid-parameters-for-msdeploy-via-msbuild其中包含一些论点 - 但仍然不是一个明确的列表。