将现有部署升级到最新版本的最佳方式
本文关键字:新版本 最新版 最佳 方式 部署 | 更新日期: 2023-09-27 17:59:06
我需要自动化将应用程序的现有部署升级到应用程序的最新稳定版本的过程。我目前有一个计划,将每个更改存储在升级应用程序中,然后依次从一个版本升级到每个新版本,直到我得到最新版本。每次我们有新的稳定版本时,我都会强迫我的所有开发人员将升级代码添加到升级应用程序中。这不会那么复杂,除非我们有一个MySQL数据库,其中的模式有时会更改,并且我们添加了存储过程。此外,我们通常必须交换一些二进制文件。该应用程序由一个Web应用程序和一个Windows服务组成。
我的问题是,有没有更简单的方法可以做到这一点?在我看来,我应该能够打包一个Mercurial存储库,并自动将更改推送到已部署的应用程序。我正在使用C#。NET、MySQL和ASP。NET。
我理解为什么您需要对架构更改进行顺序升级,但为什么您要对应用程序进行同样的升级,而不是一步升级?无论如何,有一些部署工具,如KwateeSDCM或Capistrano,可以将部署自动化到dev/qa/生产服务器。KwateeSDCM为每个文件保存一个MD5哈希,允许它进行差异升级,这在大型应用程序频繁升级只影响小文件时很好,所以它最终可以做你想要的事情。
我只想让我的一位程序员编写一个真正智能的数据库脚本,它不需要存储顺序更改。它只会将当前模式与新模式进行比较并进行更改。这样,我就不用担心了。