Моя команда недавно собрала кодовую базу Laravel, которая отлично работает на нескольких сайтах.В настоящее время мы запускаем их как приложение, которое устанавливается на профиль centOS7.
Когда требуется новый сайт, мы запускаем профиль и код клонируется. База кода сильно зависит от пакетов (пользовательских пакетов laravel).В настоящее время каждый сайт использует все разработанные нами пакеты.В настоящее время различия 1) .env файл.и 2) Конфигурационные файлы темы (которые приходят из пакета, и я коснусь его позже).
Я хочу иметь возможность извлекать пакеты по мере необходимости, я не хочу извлекать каждый пакетмы разработали.У меня вопрос, есть ли способ вытащить каждую упаковку?Я думал о том, чтобы удалить файл composer.json из git и рассматривать его как файл конфигурации?Я также подумал о создании файла composer.json.
В конце концов мы хотим добавить CI / CD в процесс и действительно автоматизировать эту вещь.Я действительно борюсь за то, чтобы сохранить кодовую базу в одном хранилище.Я ошибся?Должны ли мы разделить кодовую базу, один репозиторий на проект, который входит?Но тогда вы должны учитывать, что обновления становятся кошмаром.
В настоящее время темы загружаются как пакеты.Каждый сайт имеет все темы в файле композитора.В приложении есть пользователи-администраторы, которые могут войти в систему и установить активную тему.Тем не менее, я бы хотел, чтобы он только извлекал необходимые ресурсы для тем.
Извините, если немного прогулял, но мне интересно, как правильно масштабировать приложение.
Спасибо большое!
tldr;Как я могу запустить несколько веб-сайтов, используя одну кодовую базу, и в то же время иметь возможность указывать разные требуемые пользовательские пакеты?