gpt4 book ai didi

msbuild - 如何在不需要 IIS 参与的情况下在本地或远程部署 msbuild zip 包

转载 作者:行者123 更新时间:2023-12-03 22:07:36 25 4
gpt4 key购买 nike

我正在创建一个允许应用程序部署自动化的应用程序(https://github.com/twistedtwig/AutomdatedDeployments#readme)。

想法是一切都在源代码控制、应用程序文件、应用程序配置以及 IIS 配置中。我的应用程序允许在构建到开发机器后自动部署解决方案(将构建后 setp 添加到 sln/proj 文件)。它将允许 CI 服务器自动部署到它的机器上进行测试,以及 CI 服务器将成功的构建推送到 QA/测试/生产服务器。我在使用 msdeploy 时遇到的问题之一是要求事先使用网站/应用程序设置 IIS(我的应用程序试图绕过它)。

到目前为止,我可以通过配置文件自动创建、更新和删除应用程序池、网站和应用程序。我可以很好地同步文件和文件夹。最后一步是使用 msbuild 中的/target:package 开关为 Web 部署创建干净的文件结构。例如,我会运行如下命令:

msbuild.exe myMvcSite.csproj /target:clean /target:package /p:Configuration=Release /p:_PackageTempDir=C:\websites\mySite  /p:PackageLocation=C:\dropLocation\mySite.zip

这将创建一个很好的 zip 文件,内部文件路径为“C_C\wbesites\mySite”,准备好(据我所知)同步到生产服务器。

我的问题是我如何部署这个 zip 文件。我希望它独立于任何 IIS 信息,即我只是将文件/文件夹推送到某个位置(在本地计算机上供开发人员使用,或在远程用于测试等)。带有应用程序池和站点等的 IIS 设置将单独处理。我尝试过的一些命令(及其输出)如下:
"C:\Program Files\IIS\Microsoft Web Deploy v2\msdeploy.exe" -verb:sync -source:package="C:\Temp\deploy\installer\test\testPackage.zip" -dest:auto
Info: Adding sitemanifest (sitemanifest).
Error: The application pool that you are trying to use has the 'managedRuntimeVersion' property set to 'v2.0'. This application requires 'v4.0'.
Error count: 1.


"C:\Program Files\IIS\Microsoft Web Deploy v2\msdeploy.exe" -verb:sync -source:package="C:\website\installer\testPackage.zip" -dest:contentpath=C:\temp\mytest
Error: Source (sitemanifest) and destination (contentPath) are not compatible for the given operation.
Error count: 1.

我试图让它用它的结构解压缩文件的第一个命令。不过,它似乎对应用程序池的东西感到不安(我不希望它触及)。

第二个我试图绕过“自动”位,但这也不开心。

我正在努力寻找有关此过程的大量信息。

我目前可以看到如何实现这一点的唯一方法是不使用 msdeploy ,而是创建我自己的任务来集成文件结构并同步我自己的文件,(不理想)。

最佳答案

我最终围绕这个问题编码,而不是能够解决它。

我拿了 zip 包:

  • 在临时位置解压缩
  • 找到它将要到达的最终路径(通常来自 archive.xml)
  • 检查我是否正在合并文件夹或进行全新安装(即我是否先删除目标文件夹)。
  • 将文件复制/推送到结束位置(通常使用 msdeploy)。

  • 我为此开源了我的解决方案: https://github.com/twistedtwig/AutomatedDeployments

    关于msbuild - 如何在不需要 IIS 参与的情况下在本地或远程部署 msbuild zip 包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12436525/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com