0

我正在使用 TFS Build 使用我定义的发布配置文件发布网站。发布发生了,但它发布到以 Web 应用程序项目名称命名的 Web 应用程序,而不是我在发布配置文件中指定的名称。如果我使用相同的发布配置文件发布到我的本地计算机,它会使用我在发布配置文件中指定的名称进行发布。尽管在 TFS 构建案例中它是本地非域帐户,但我在这两种情况下都使用了管理帐户。

使用的参数如下(出于安全原因删除了相关细节):

/p:DeployOnBuild=True /p:DeployTarget=MsDeployPublish /p:PublishProfile=MyProfile 
/p:AllowUntrustedCertificate=True /p:MSDeployPublishMethod=WMSVC 
/p:MSDeployServiceUrl=https://SomeName:8172/MsDeploy.axd 
/p:UserName=SomeName\LocalAdminDude /p:Password=SomePassword

发布配置文件本身如下所示:

<?xml version="1.0" encoding="utf-8"?>
<!--
This file is used by the publish/package process of your Web project. You can customize     the behavior of this process
by editing this MSBuild file. In order to learn more about this please visit     http://go.microsoft.com/fwlink/?LinkID=208121. 
-->
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
   <WebPublishMethod>MSDeploy</WebPublishMethod>
   <SiteUrlToLaunchAfterPublish/>http://Server/NameIWant</SiteUrlToLaunchAfterPublish>
   <MSDeployServiceURL>https://Server:8172/msdeploy.axd</MSDeployServiceURL>
   <DeployIisAppPath>Default Web Site/NameIWant</DeployIisAppPath>
   <RemoteSitePhysicalPath />
   <SkipExtraFilesOnServer>True</SkipExtraFilesOnServer>
   <MSDeployPublishMethod>WMSVC</MSDeployPublishMethod>
   <UserName>Server\LocalAdminDude</UserName>
   <_SavePWD>True</_SavePWD>
 </PropertyGroup>
</Project>

本质上,如果我的 Web 项目名为NameIWantPROJECT,我希望它发布到一个名为NameIWant的网站。如果我在本地发布,那行得通,如果我使用上述参数通过 TFS,它会发布为NameIWantPROJECT而不是我指定的内容。

4

1 回答 1

0

尝试使用 /p:DeployIisAppPath 代替 /p:PublishProfile。也就是说,添加以下参数。

/p:DeployIisAppPath="默认网站/NameYouWant"

TFS 2010 对我有用。

于 2013-07-23T14:09:38.213 回答