我们正在用django开发一个b2b应用程序。对于每个客户机,我们启动一个新的虚拟服务器机器和一个数据库。所以每个客户机都有一个单独的应用程序安装。(我们这样做是因为根据我们的应用程序的性质,一个客户端可能在某些时候需要大量的资源,而且我们不希望一个客户端的状态影响其他客户端)
每个安装都绑定到一个中央存储库。如果我们更新了应用程序代码,那么当我们推到主分支时,所有安装都会检测到这一点,提取最新版本的代码并重新启动应用程序。在
另一方面,如果我们更新数据库模式,目前需要通过逐个连接到每个数据库实例来手动运行迁移(设置.py文件从不在repo中的外部文件读取数据库设置,我们在安装时手动添加此文件)。在
我们能自动化这个过程吗?i、 给定一个数据库列表,是否可以用一个命令在这些数据库上运行迁移?在
我假设您有某种自动化来提取代码并重新启动web服务器。您只需将迁移添加到这个自动化过程中即可。每个服务器的设置.py将从外部文件中读取数据库详细信息并为您运行迁移。在
所以流程应该是这样的:
首先,我会(非常努力地)寻找一种方法来启动一个脚本,就像masnun在客户端建议的那样,非常困难。在
其次,如果这不起作用,那么我将尝试以下方法:
我没有试过,但我不明白为什么它不起作用。。。在
相关问题 更多 >
编程相关推荐