【问题标题】:MSDeploy - Prompt for ParametersMSDeploy - 提示输入参数
【发布时间】:2011-12-15 20:10:42
【问题描述】:

我有一个使用 Visual Studio 2010 构建的 Web 部署包。我定义了一个 Parameters.xml 文件,其中包括所有参数、描述和默认值。

在 IIS 7 中部署 Web 应用程序时,它会自动查看参数并为用户构建 GUI,如 here 所示。

有人知道 IIS 6 中的任何等效项吗?我们需要在本地运行部署,所以 Web Deploy 不是一个选项。现在,我正计划使用生成的 ProductName.deploy.cmd 文件来安装包。但是(据我所知)使用此方法设置参数的唯一方法是填充 ProductName.SetParameters.xml 文件。此文件不包含原始 Parameters.xml 文件中的任何描述。它只是一组键/值对。

在运行 msdeploy 时,有什么方法可以提示用户输入参数(包括参数说明)?还是在我可以使用 IIS 7 之前我不走运?

【问题讨论】:

    标签: visual-studio web-applications iis-6 msdeploy webdeploy


    【解决方案1】:

    我认为没有像您正在寻找的针对 IIS 6 的 UI。

    话虽如此,我刚刚发布了一个 Nuget 包,我认为它会对您有所帮助,请在 http://sedodream.com/2011/12/24/PackageOncePublishAnywhere.aspx 阅读更多内容。给你一个总结,为什么我认为它会对你有所帮助,安装 Nuget 包后,当你在 VS 中从 web 项目创建包时,将生成一个 .ps1 文件。当您执行该 .ps1 文件时,它将引导您完成发布,其中一个方面是提示输入参数值。它提示输入两种类型的值:

    1. MSDeploy 端点信息
    2. MSDeploy 参数值

    根据 #2,如果您在调用发布时声明了任何参数,系统会提示您输入它们,并且它会显示默认值。例如看下图(绿色文本是参数名称,青色文本是默认值)。

    基于这个线程,我刚刚意识到我没有显示参数的描述,但我想知道这是否会提供太多信息。如果您对这方面有任何想法,请告诉我。

    请注意,为了在此时为您工作,您需要在运行发布的机器上安装以下内容:

    • Powershell v2
    • MSDeploy v2

    如果您想使用我的扩展程序执行类似的操作,请提供一些信息,这是如何实现的。 MSDeploy 有一个动词getParameters,可用于确定包中存在的所有参数。例如我们可以执行命令

    %msdeploy% -verb:getParameters -source:package=WebApplication1.zip
    

    结果将如下所示。 拥有该 XML 后,您可以创建任何您想要的提示/流程。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-27
      • 2011-08-03
      相关资源
      最近更新 更多