我们有一家小公司,我们用 PHP/MySQL 开发了自己的 CMS。代码存储在本地文件和数据库中。
我们希望能够在我们客户的服务器上更新 CMS 的代码。这个过程应该是半自动的,一旦我们“发布”更新,客户端服务器和数据库中的代码就会被替换。
我正在考虑将 Bazaar 与Bazaar Upload结合使用。这将处理文件。但是数据库呢?是否已有可用的标准方法,或者我应该上传在用户登录 CMS 时安装的 .sql 文件?
提前感谢您的建议!
我们有一家小公司,我们用 PHP/MySQL 开发了自己的 CMS。代码存储在本地文件和数据库中。
我们希望能够在我们客户的服务器上更新 CMS 的代码。这个过程应该是半自动的,一旦我们“发布”更新,客户端服务器和数据库中的代码就会被替换。
我正在考虑将 Bazaar 与Bazaar Upload结合使用。这将处理文件。但是数据库呢?是否已有可用的标准方法,或者我应该上传在用户登录 CMS 时安装的 .sql 文件?
提前感谢您的建议!
对于这种事情,我正在考虑liquibase,但它需要运行 java,因此您需要在服务器上或在您触发部署的机器上运行 java。
使用 SVN/SVN 和 Cron 的组合
使用安装包(.rpm、.sh、.deb 等)并设置 cron 作业来运行更新脚本
UML:
#!/bin/sh
fetch $version
if(version > current_version); do
cd /path/on/client/server
svn update
/path/on/client/server/update_script.sh
done;
update_script.sh 将处理您需要的任何内容(sql、cron、文件、证书、...)
第二种变体
您可以使用类似假的 cron 作业
在管理中,您可以创建“自动更新”功能,该功能可以通过按钮/链接或计时器触发。登录 CMS 管理后,通过运行自动更新脚本激活计时器
从上次更新检查开始的简单检查时间,并执行文件下载、运行 .sql 脚本或您需要的任何内容。