完成部署与非周期部署

时间:2023-02-10 16:37:40

I'm not sure If any of you have encountered this scenario.We have small small projects or fixes that we need to push to LIVE every other day.

我不确定你是否有任何人遇到过这种情况。我们有小型小项目或修复,我们需要每隔一天推送到LIVE。

There is one set of team that says "do a clean build and deploy on prod server". The other set says we don't have to do a full deploy we will just do a dll drop or aspx drop.

有一组团队说“做一个干净的构建并在prod服务器上部署”。另一组表示我们不需要进行完全部署,我们只会执行dll drop或aspx drop。

They have listed out few pros and cons for each method. But want to know what method you generally follow any major set backs for each method.

他们列出了每种方法的优点和缺点。但是想知道你通常遵循每种方法的主要设置的方法。

2 个解决方案

#1


I would first of all try to minimize the cost of building a new release by trying to automate as much as possible. (Which might be easier said than done but it is usually well invested time and money, especially if you release often.)

我首先尝试通过尝试尽可能自动化来最小化构建新版本的成本。 (说起来容易做起来难,但通常投入的时间和金钱都很多,特别是如果经常发布的话。)

The big issue I have with dropping in new binaries is that it is often a manual process and those are performed by humans who tend to mess up the easies tasks over and over again.

放入新二进制文件时遇到的一个大问题是,它通常是一个手动过程,而这些过程是由人们执行的,他们往往会一遍又一遍地搞乱简易任务。

Aren’t you really looking for a “patch management system” that could help you distribute the changes in a controlled manner and getting rid of the manual work?

您是否真的在寻找一种“补丁管理系统”,它可以帮助您以受控方式分发变更并摆脱手动工作?

That way you still would have pretty good integrity since the patches should be versioned and hopefully carefully tested. But still they can be developed and deployed which much less overhead then a full release.

这样你仍然会有很好的完整性,因为补丁应该是版本化的,并且希望仔细测试。但是仍然可以开发和部署它们,这比完整版本的开销少得多。

#2


For sites under my control, I use SVN or Git for revision control, and update the source and compile on the server directly, if necessary. That ensures the integrity of the release, which I suspect is the argument put forth by the "do a clean build and deploy on prod server" team. For servers not under my control, I do whatever I am told :)

对于我控制下的站点,我使用SVN或Git进行版本控制,并在必要时直接更新源代码并在服务器上进行编译。这确保了发布的完整性,我怀疑这是“在prod服务器上做一个干净的构建和部署”团队提出的论点。对于不受我控制的服务器,我做任何我告诉的事情:)

#1


I would first of all try to minimize the cost of building a new release by trying to automate as much as possible. (Which might be easier said than done but it is usually well invested time and money, especially if you release often.)

我首先尝试通过尝试尽可能自动化来最小化构建新版本的成本。 (说起来容易做起来难,但通常投入的时间和金钱都很多,特别是如果经常发布的话。)

The big issue I have with dropping in new binaries is that it is often a manual process and those are performed by humans who tend to mess up the easies tasks over and over again.

放入新二进制文件时遇到的一个大问题是,它通常是一个手动过程,而这些过程是由人们执行的,他们往往会一遍又一遍地搞乱简易任务。

Aren’t you really looking for a “patch management system” that could help you distribute the changes in a controlled manner and getting rid of the manual work?

您是否真的在寻找一种“补丁管理系统”,它可以帮助您以受控方式分发变更并摆脱手动工作?

That way you still would have pretty good integrity since the patches should be versioned and hopefully carefully tested. But still they can be developed and deployed which much less overhead then a full release.

这样你仍然会有很好的完整性,因为补丁应该是版本化的,并且希望仔细测试。但是仍然可以开发和部署它们,这比完整版本的开销少得多。

#2


For sites under my control, I use SVN or Git for revision control, and update the source and compile on the server directly, if necessary. That ensures the integrity of the release, which I suspect is the argument put forth by the "do a clean build and deploy on prod server" team. For servers not under my control, I do whatever I am told :)

对于我控制下的站点,我使用SVN或Git进行版本控制,并在必要时直接更新源代码并在服务器上进行编译。这确保了发布的完整性,我怀疑这是“在prod服务器上做一个干净的构建和部署”团队提出的论点。对于不受我控制的服务器,我做任何我告诉的事情:)