Visual Studio(VS)提供了一个'发布网络'功能,您可以从中选择一个配置文件&它生成构建artfects - 这按预期工作,我的Web.config从配置文件转换(比如web.Test.config)。
如果我通过teamcity使用/ p构建:配置="测试" ,构建是好的,但我没有看到任何转变 - 我的期望是好的。我确实有octoPack运行集。
我还有其他VS项目,我是否使用团队城市来构建nuget包,然后通过Octopus部署到各种环境。八达通进行转型的地方。我认为我混淆了我对团队城市的期望,即它不是对VS&Pubs.-Publish-Web的模仿。即使我不使用章鱼部署到环境中,我也必须使用teamcity +章鱼这两个步骤来提供输出可交付成果。
答案 0 :(得分:0)
要使其正常工作,您必须在发布配置文件* .pubxml中进行配置。然后,在TeamCity中,您应该使用此文件作为构建步骤。下面是一个示例,假设您在Visual Studio中调试和发布旁边有测试配置:
Test.pubxml
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<WebPublishMethod>MSDeploy</WebPublishMethod>
<AllowUntrustedCertificate>True</AllowUntrustedCertificate>
<Configuration>Test</Configuration>
<LastUsedBuildConfiguration>Test</LastUsedBuildConfiguration>
<LastUsedPlatform>Any CPU</LastUsedPlatform>
<SiteUrlToLaunchAfterPublish>http://your-website:8080/</SiteUrlToLaunchAfterPublish>
<LaunchSiteAfterPublish>False</LaunchSiteAfterPublish>
<ExcludeApp_Data>False</ExcludeApp_Data>
<MSDeployServiceURL>server-name</MSDeployServiceURL>
<DeployIisAppPath>SITE_NAME_ON_IIS</DeployIisAppPath>
<RemoteSitePhysicalPath />
<SkipExtraFilesOnServer>True</SkipExtraFilesOnServer>
<MSDeployPublishMethod>WMSVC</MSDeployPublishMethod>
<EnableMSDeployBackup>False</EnableMSDeployBackup>
<UserName>UserNameWithPermission</UserName>
<_SavePWD>True</_SavePWD>
</PropertyGroup>
</Project>
命令行参数:
/p:DeployOnBuild=true
/p:PublishProfile="%teamcity.build.workingDir%\PathToConfiguration\Test.pubxml"
/p:SolutionDir="%teamcity.build.workingDir%"
/p:Password=PASSWORD
构建文件路径应该是您的* .csproj文件: