Наша установка такова:
Я занимаюсь разработкой Admin, мой коллега разрабатывает API приложения.
Они оба используют одну и ту же базу данных и большинство одинаковых таблиц. Объединение их в один проект не вариант, так как мы будем развертывать его в Elastic Beanstalk, и администратору не нужно масштабировать, так как он будет использоваться небольшим количеством людей.
Проблема, с которой мы столкнулись, связана с миграцией, и мы пришли к следующим выводам:
Хотя я могу думать о Hacky способы решения этой проблемы, мы ищем лучший подход.
Я бы порекомендовал вариант создания третьего проекта, который имеет только миграции. Таким образом, вы сохраняете все миграции в одном месте и избегаете проблем несогласованности, а также отделяете миграции от развертывания любого приложения. Тот факт, что приложение ничего не «делает», не должно иметь значения; вам не нужно развертывать дополнительное приложение, просто запустите миграцию с сервера развертывания. На самом деле вам не нужно создавать целый проект Laravel только для ваших миграций; довольно просто использовать Eloquent за пределами Laravel. Эта статья приводит пример использования построителя запросов Eloquent для запуска миграций за пределы Laravel. Вы также можете использовать легкий инструмент миграции, как Phinx, который предлагает аналогичный набор функций для встроенных миграций Laravel, но с минимальными зависимостями.
Других решений пока нет …