0

我们的目标是这样设置:

.NET CORE MVC 项目提交 -> vsts 构建链 -> 在我们的 Web 服务器上的本地代理上运行的 vsts 发布,运行msdeploy以部署到服务器

到目前为止,我们正试图让一切手动工作,即使用命令行,以便稍后将所有这些逻辑放入 VSTS。

我在 Visual Studio 中创建了一个 Web 部署包,包括一个最小的参数文件,仅包括网站名称。

我在命令行中运行它: msdeploy.exe -source:package='packwebx/webx.zip' -dest:auto -verb:sync -setParamFile:"packwebx/param.xml"

结果:更改总数:0(添加 0,删除 0,更新 0,更改 0 参数,复制 0 字节)

目标目录是空的,而 zip 文件不是,所以我不明白为什么它没有检测到更改。

我也尝试运行相同的命令,但在我们旧的(.net 4.6)mvc 项目的包上运行,它没有问题。

这些项目之间的一个区别似乎是,当我从旧项目发布 Web 部署包时,会创建更多文件(...deploy.cmd、...deploy-readme.txt、sourcemanifest 等),它也在文件集中以及 zip 文件中包含 parameters.xml 文件。当我从 .net 核心项目发布 Web 部署包时,我只得到一个 zip 文件。

任何帮助表示赞赏,msdeploy 帮助或建议以更好的方式发布到我们的 iis 服务器。

4

1 回答 1

0

您可以通过 WinRM IIS Web 部署步骤部署您的 Web 应用程序。(使用 WinRM 扩展安装 IIS Web 应用程序部署

将 Web 应用程序部署到 IIS 服务器的简单步骤:

  1. 添加命令行构建步骤(工具:C:\Program Files\dotnet\dotnet.exe,参数:restore,工作目录:$(Build.SourcesDirectory)/src/NetCoreDemo2(project.json 路径))
  2. 添加命令行构建步骤(工具:C:\Program Files\dotnet\dotnet.exe,参数:build,工作目录:$(Build.SourcesDirectory)/src/NetCoreDemo2(project.json 路径))
  3. 添加命令行构建步骤(工具:C:\Program Files\dotnet\dotnet.exe,参数:publish --configuration $(BuildConfiguration)),工作目录:$(Build.SourcesDirectory)/src/NetCoreDemo2(project.json 路径))
  4. 添加存档文件构建步骤以创建 zip 文件
  5. 添加 WinRM-IIS Web 应用部署步骤以将包部署到 IIS 服务器。

您可以参考这篇文章以获取更多信息:构建您的 ASP.NET Core 应用程序并将其部署到 Azure

于 2017-02-03T06:20:44.960 回答