代码之家  ›  专栏  ›  技术社区  ›  Jehan

如何使用TeamCity模拟VisualStudio发布Web功能

  •  0
  • Jehan  · 技术社区  · 7 年前

    Visual Studio(VS)提供了“发布Web”功能,您可以从中选择配置文件(&P);它生成了构建艺术效果——这就像我的网站预期的那样。配置文件是从概要文件(比如web.Test.config)转换而来的。

    如果我通过teamcity使用/p:Configuration=“Test”进行构建,构建很好,但我看不到任何转换-我的期望值可以吗。我有octoPack跑步套装。

    我确实有其他VS项目,我使用team city构建nuget包,然后通过八达通部署到各种环境中。章鱼在那里进行转换。我想我混淆了我对teamcity的期望,也就是说,它不是VS发布网站的模仿。我必须使用teamcity+octopus这两个步骤来构建输出可交付成果,即使我不使用octopus部署到环境中。

    1 回复  |  直到 7 年前
        1
  •  0
  •   Peska    7 年前

    要使其正常工作,您必须在发布配置文件*中进行配置。pubxml。然后,在TeamCity中,您应该将此文件用作构建步骤。下面是一个示例,假设您 测验 旁边的配置 调试 释放 在Visual Studio中:

    测验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文件:

    TeamCity Configuration