【问题标题】:How to convert from VS web deploy to command line MS deploy如何从 VS Web 部署转换为命令行 MS 部署
【发布时间】:2020-11-22 16:00:35
【问题描述】:

在 Visual Studio 中,我使用 Web Deploy。

在设置中,它要求填写 4 个字段(其中 1 个是可选的)

我猜,在幕后,它正在调用 msdeploy.exe 并将它们作为命令行参数传递

我正在努力将这些映射到我想使用的地方

shell: cmd  
run: '"C:/Program Files (x86)/IIS/Microsoft Web Deploy V3/msdeploy.exe" 
      -verb:sync 
      -allowUntrusted 
      -source:contentPath="%CD%\myDomain.Ui\bin\Release\netcoreapp3.1\" 
      -dest:contentPath=domain,computerName="<server>:443/msdeploy.axd?site=<site name>",username="<user name>",password="<password>",authtype="Basic"'

如您所见,source:contentPath 使用实际路径,这在 GitHub 操作中运行良好。我遇到了dest: 部分的问题。在上面的示例中,我使用了标题(所以我使用了屏幕截图中显示的而不是 myUserName)

我有 2 个问题。

  1. 当我在 Visual Studio 中单击“发布”时,如果它真的只是在调用 msdeploy.exe,那么是否可以在输出中显示它。如果我知道该怎么做,我也许可以回答我自己的问题

  2. 我是否正确映射了它们

【问题讨论】:

    标签: .net-core github-actions msdeploy


    【解决方案1】:

    至于如何查看更多详细信息,这种方法有效: Visual studio 2017 Verbose publish

    相关部分是

    更改构建日志中包含的信息量 在菜单栏上,选择工具、选项。

    在 Projects and Solutions 页面上,选择 Build and Run 页面。

    在 MSBuild 项目构建输出详细列表中,选择以下值之一,然后选择“确定”按钮。

    然后,在构建的最后,搜索MsDeploySourceProviderSetting

    然后您可以查看详细信息!这给出了一些值,但不是全部!它并没有真正回答这个问题!然而,它让我走到了那里

    应该是

    -dest:contentPath=<site name>,computerName="<server>:443/msdeploy.axd?site=<site name>",username="<user name>",password="<password>",authtype="Basic"'
    

    EG,我的网站 ULR 是 https://example.com,在 IIS 中设置为 MyWebsite

    -dest:contentPath=<MyWebsite>,computerName="https://examplecom:443/msdeploy.axd?site=MyWebsite",username="<user name>",password="<password>",authtype="Basic"'
    

    另外,如果你像我一样使用VS,它可能会给你一个不同的端口,所以要注意443可能不对!!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-05-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多