我们的主网站是 10 个独立的 ASP.NET 项目和应用程序的集合。目前,要在新服务器上进行完整部署需要运行十个单独的 msdeploy 作业;每个应用程序都被构建、配置(使用配置转换)和打包,但我们没有任何解决方案可以将所有包部署为单个操作。
我可以看到几种可能在这种情况下可行的可能性,但很想听听任何成功或失败的人的意见:
我学过Troy Hunt's excellent "You're Deploying it Wrong" series , 和 Scott Hanselman's "Web Deployment Made Awesome"文章,但我认为我正在寻找超越这些方法中的任何一种的方法,该方法将多个项目和应用程序结合在一起,而不必一步一步地从源代码构建它们 - 有什么想法吗?
最佳答案
我们公司有一个非常相似的场景,我们使用WIX创建了一个安装包。 .我们的配置转换发生在安装时,所以现在我们创建一个单独的构建,然后通过 MSI 安装包将其部署到每个服务器。 WIX 非常灵活,但也有一个陡峭的学习曲线。我们使用我们自己的自定义操作修改我们的配置,但可以通过其他方式完成。
我们使用 Team Foundation Server 和 MSBuild做我们的构建。这非常简单,但确实需要一些工作才能正确设置与我们拥有的一样多的项目和解决方案。
我们研究过甚至尝试过的其他选项是:
试图完成,为什么要重新发明轮子?
3 个月的 WIX 和 MSBuild 开发时间很容易得到
去年我们花在手动处理事情上的时间。
我认为 Visual Studio 中内置的部署工具是为只有几个部署的单个应用程序设计的。听起来您需要外部工具和开发工作来更快地进行部署,并消除手动操作的需要。这就是我们投资上述解决方案的原因,它确实得到了返回。
关于msbuild - 将多个解决方案/项目转换为单个 msdeploy 包的建议?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12976923/