【问题标题】:Running 2 publish profiles at same time?同时运行 2 个发布配置文件?
【发布时间】:2013-04-29 15:45:19
【问题描述】:

我有 2 台生产服务器,每次都需要将我的应用部署到这些服务器上。现在我有 2 个不同的发布配置文件 - 每个服务器 1 个。我通过 Visual Studio 2012 web deploy 手动运行这些。

有没有办法在一个步骤中自动运行两个发布配置文件?

【问题讨论】:

    标签: asp.net .net asp.net-mvc-4 visual-studio-2012 webdeploy


    【解决方案1】:

    您是否尝试过编写从命令行部署的 .bat 文件?您应该能够将两者都放在一个文件中,从而只需双击即可运行它们。所以文件看起来像:

    msbuild MySolution.sln "/p:DeployOnBuild=true;PublishProfile=DeployProduction1;Configuration=Prod;Password=pwd"
    
    msbuild MySolution.sln "/p:DeployOnBuild=true;PublishProfile=DeployProduction2;Configuration=Prod;Password=pwd"
    

    除了反复试验之外,我还使用了来自以下站点的信息,底部标记为“从命令行部署”的部分: Tiny Happy Features #3 - Publishing Improvements, chained Config Transforms and Deploying ASP.NET Apps from the Command Line

    【讨论】:

    • 我认为这可能有效 - 但是我似乎无法让我的 web.config 转换正常工作。如果我通过命令行发布,我会得到与使用 Visual Studio 发布不同的 web.config
    • 我想知道问题的一部分是否是 在 publishProfile.User 文件中。这不是通过 MSBuild 考虑的吗?
    • 我们在 Bamboo 上使用 MSBuild 进行发布,而不是在命令行上使用 MSBuild,但我希望它们的工作方式相同。我在执行此操作时发现了一些怪癖:1) 我必须在整个 /p 参数周围加上双引号,否则实际上不会应用所有选项2) 我们使用特定项目的文件而不是解决方案文件来防止为部署获取错误的东西3)为了使转换正常工作,我们必须同时使用 PublishProfile 和 Configuration
    • 所以我使用的命令如下所示:msbuild Amp.Web.Platform.csproj "/p:DeployOnBuild=true;PublishProfile=QC_Profile;Configuration=QC;MvcBuildViews=false" 我的 web.config 有转换文件,其中一个名为 web.QC.config
    • 我使用上一条评论中的两个提示编辑了解决方案
    猜你喜欢
    • 2013-02-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多