Kai*_*ine 23 msbuild teamcity continuous-integration msdeploy
我目前使用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
Run Code Online (Sandbox Code Playgroud)
所有这些似乎工作正常,MSDeploy按预期工作.
当我想添加其他参数时出现问题.
我查找了MSBuild参数和MSDeploy文档,我似乎只找到这样的命令行参数:
msbuild SlnFolders.sln /t:NotInSolutionfolder:Rebuild;NewFolder\InSolutionFolder:Clean
Run Code Online (Sandbox Code Playgroud)
http://msdn.microsoft.com/en-us/library/ms164311.aspx
似乎这些命令行参数的引用与/ P:格式不对应 - 例如,CreatePackageOnPublish和DeployIISAppPath不是可识别的命令行参数,但它们在TeamCity构建过程中工作正常.
我在哪里可以找到格式的MSDeploy参数的完整文档列表
/ P:PARAM =值
附加信息:
这里有一个参数列表:
然而,这不是一个完整的列表 - 例如,这个名单不包括DeployAsIisApp或SkipExtraFilesOnServer,它们是从团队我市建设工作,这两个参数.
此相关问题(可能重复):MSDeploy的有效参数通过MSBuild包含一些参数 - 但仍然不是一个明确的列表.
首先,简短的回答是你找不到完整的清单.MSBuild没有您可以选择的完整参数列表,因为您可以发送任何您喜欢的参数.它是MSBuild调用者和MSBuild构建脚本(例如vs sln或csproj文件)的作者之间的通信方式.
如果构建脚本使用参数,则使用它,否则忽略它.
所以这是对msbuild的有效调用:
msbuild /p:<anything>=<anything>
Run Code Online (Sandbox Code Playgroud)
其次,您不应使用/ p:命令选项从teamcity向msbuild发送参数.而是在teamcity构建配置中设置配置或系统属性.它们将作为参数自动传递给msbuild.
小智 5
这是Visual Studio Team Services在创建ASP.NET(预览)版本定义时使用的参数:
/p:DeployOnBuild=true
/p:WebPublishMethod=Package
/p:PackageAsSingleFile=true
/p:SkipInvalidConfigurations=true
/p:PackageLocation="$(build.artifactstagingdirectory)\\"
Run Code Online (Sandbox Code Playgroud)
也可以从<PropertyGroup />
这些示例中定义的块中推断出:
https://msdn.microsoft.com/zh-CN/library/ff398069(v=vs.110).aspx
从这个例子:
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<WebPublishMethod>Package</WebPublishMethod>
<LaunchASiteUrlAfterPublish>False</LaunchASiteUrlAfterPublish>
<SiteUrlToLaunchAfterPublish />
<MSDeployServiceURL />
<DeployIisAppPath />
<RemoteSitePhysicalPath />
<AllowUntrustedCertificate>False</AllowUntrustedCertificate>
<SkipExtraFilesOnServer>True</SkipExtraFilesOnServer>
<DeployAsIisApp>True</DeployAsIisApp>
<MSDeployPublishMethod>WMSVC</MSDeployPublishMethod>
<UserName />
<SavePWD>True</SavePWD>
<PublishDatabaseSettings>
<!— this section omitted to keep the example short -->
</PublishDatabaseSettings>
</PropertyGroup>
</Project>
Run Code Online (Sandbox Code Playgroud)
您可以得出以下列表:
归档时间: |
|
查看次数: |
37529 次 |
最近记录: |