【发布时间】:2019-11-14 13:24:43
【问题描述】:
我的团队最近整理了一个适用于多个网站的 Laravel 代码库。目前,我们将它们作为安装在 centOS7 配置文件上的应用程序运行。
每当需要一个新站点时,我们都会启动一个配置文件,然后将代码克隆进去。代码库很大程度上依赖于包(自定义 laravel 包)。目前,每个站点都引入了我们开发的所有软件包。目前的区别是 1) .env 文件。 2) 主题配置文件(来自一个包,稍后我会谈到)。
我希望能够根据需要提取包,我不想提取我们开发的每个包。我的问题是,有没有办法把每个包裹都拉进去?我正在考虑从 git 中删除 composer.json 文件并将其视为配置文件?我也想过生成composer.json文件。
最终我们希望将 CI/CD 添加到流程中并真正自动化这件事。我真的在努力将代码库保存在一个存储库中。我错了吗?我们是否应该拆分代码库,每个进来的项目一个存储库?但是你必须考虑到更新会变成一场噩梦。
目前,主题是作为包引入的。每个站点都有 composer 文件中的所有主题。该应用程序具有可以登录并将主题设置为活动的管理员用户。不过,我希望它只提取必要的主题资源。
抱歉,我有点啰嗦,但我想知道如何正确扩展应用程序。
非常感谢!
tldr;如何使用一个代码库运行多个网站,同时能够指定不同的所需自定义包?
【问题讨论】:
标签: php laravel version-control composer-php multi-tenant