gpt4 book ai didi

php - Drupal 部署/测试/不知道如何调用它的工具

转载 作者:行者123 更新时间:2023-12-04 07:10:52 28 4
gpt4 key购买 nike

设置如下:
Drupal 项目,一个带有主干/qa/生产就绪分支的 svn 存储库,每个分支的虚拟主机,将文件从存储库复制到文档根目录的提交后 Hook 。

问题如下:Drupal 网站通常不仅依赖于源代码,还依赖于数据库数据(节点类型、它们的设置等)。

我正在寻找使此更改可版本化的解决方案。但不像“区分”数据库中的所有数据,而是像单元测试中的固定装置。

带有 SQL 数据和文件的类似夹具的脚本,内容应该是可版本化的,并在主提交后 Hook 之后应用。

是否有为此目的编写的任何内容,或者可能很容易适应某种构建工具(如 Apache Ant)或单元测试框架。如果这个工具知道drupal,那就太好了,所以在脚本中我可以做variable_set()之类的事情。 , drupal_execute() .

有任何想法吗?或者我应该立即开始编码而不是问这个? :)

最佳答案

听起来您已经在那里编写了一些基础设施。

所以我要开始编码了!目前没有任何我所知道的特别适合这个的东西。如果有的话,我想它需要一些努力才能与您现有的基础设施一起运行。所以开始编码似乎是要走的路。

我的方法是使用 sql 补丁文件(包含用于升级 db 架构/数据的 sql 语句的文件),文件名开头带有版本号。然后数据库包含一个带有配置信息的表(您可能已经有了这个),其中包含有关数据库所在版本的信息。

然后,您可以采用多种方法来自动应用补丁。一个是你从 postcommit 调用的脚本,它检查数据库所在的版本,然后检查你有补丁的最新版本是否比数据库所在的版本新,并应用它/它们(按顺序)如果是这样。

数据库补丁应始终通过更新配置表中的上述版本号来完成。

这种方法可以扩展为包括基于完整转储文件设置新数据库的能力,然后对其应用任何必要的补丁来升级它。

关于php - Drupal 部署/测试/不知道如何调用它的工具,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/377629/

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