Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Deployment 如何在基于功能的发布模型中部署到生产环境?_Deployment_Release_Release Management - Fatal编程技术网

Deployment 如何在基于功能的发布模型中部署到生产环境?

Deployment 如何在基于功能的发布模型中部署到生产环境?,deployment,release,release-management,Deployment,Release,Release Management,我们是一个非常小的团队,负责为非软件公司开发intranet web系统。我们有点像一个RAD团队:当一个问题被解决时(无论是一个新特性、错误修复还是某种配置),它会立即被推到生产环境中并投入使用 问题是:这个过程完全是手动的,而且容易出错。它包括手动将所有新的/更新的文件逐个复制到生产服务器。我们通常需要运行SQL查询或清除应用程序缓存,具体取决于更新的类型 功能或错误修复每天更新两到三次,根据需求可能会更新更多。当然,这造成了很多问题 它必须有一种更简单、更专业的方式。我可以想到的一个解决方

我们是一个非常小的团队,负责为非软件公司开发intranet web系统。我们有点像一个RAD团队:当一个问题被解决时(无论是一个新特性、错误修复还是某种配置),它会立即被推到生产环境中并投入使用

问题是:这个过程完全是手动的,而且容易出错。它包括手动将所有新的/更新的文件逐个复制到生产服务器。我们通常需要运行SQL查询或清除应用程序缓存,具体取决于更新的类型

功能或错误修复每天更新两到三次,根据需求可能会更新更多。当然,这造成了很多问题

它必须有一种更简单、更专业的方式。我可以想到的一个解决方案是更新整个应用程序,但目前这是不可能的,因为我们的主干不稳定,并且有很多提交尚未准备好投入生产(好吧,我知道这是我们的错):)

那么,我们如何实现流程的自动化和改进呢?我们对任何工具都开放,最好是免费的或不太贵的

有关我们的应用程序和工具的更多信息: -PHP MVC(Zend框架) -Ubuntu -SVN(移动到Git)
-Redmine(移动到私有Github)

对于您的情况,工具只能做到这一点。我怀疑您需要进行一些PHP单元测试、一些UI冒烟测试和验收测试,可能还有一些性能测试,然后让一个工具为您想要应用于生产的每个补丁运行所有这些。然后,您还需要自动部署脚本,可能还需要一个临时环境来测试这些脚本。这是持续交付的一般领域,关于这个主题有一整本书。

考虑在SCM中使用分支来保持稳定和不稳定的代码分离,并检查Jenkins以实现构建和部署过程的自动化。你完全正确,我们缺少测试领域(测试覆盖率不到1%,甚至不是应用程序的核心)。谢谢你的图书链接,它看起来是我们正在做的一个很好的参考。