Рассмотрим следующий сценарий:
code-release.sh
Сценарий принимает готовое имя ветви, которое отправляется в Бит ведроGit репозиторий. Веб-крючок запускает Код корабля поэтому все тесты выполняются как стратегия CI, где, в случае успеха, скрипт php запрашивается в домене моего приложения.
Теперь моя цель состоит в том, чтобы этот скрипт мог подготовить релиз к использованию, поэтому я должен
На данный момент мои инстинкты крики не запускать автоматический php artisan migrate
потому что он будет вонять в какой-то момент. Но это будет означать необходимость вмешательства человека всякий раз, когда необходимо выполнить миграцию, и, возможно, разрыв кода после того, как непрерывная интеграция запускает развертывание, и до того, как кто-то запустит миграцию вручную.
То, что я мог придумать, было шагом, чтобы назвать database-backup.sh
прямо перед выполнением миграции.
В любом случае, я уверен, что есть кто-то, кто использует Laravel и CI / CD, и я хотел бы знать, как можно решить эту ситуацию.
Недавно мне пришлось настроить Непрерывную интеграцию для внешнего интерфейса JavaScript и внутреннего интерфейса Laravel. Я сделал это с Дженкинсом.
Работы по сборке Laravel последовали этот рецепт.
Все инструменты php были установлены на сервере сборки и добавлены в PATH.
Работал как рекламируется.
Других решений пока нет …