Я пытаюсь настроить довольно простую цепочку инструментов CI / CD в TravisCI для проекта PHP с использованием библиотек композитора, что приводит к развертыванию на чистом сервере через rsync. Шаги:
- Получение кода из репозитория Github после git push.
- Запустите
composer install
, чтобы получить зависимости. - (Выполнение модульных тестов — интеграционные тесты) — еще не настроено
- Lint, этапы качества кода
- Разверните код на удаленном сервере Apache через rsync, используя ключи ssh.
Toolchain пока работает нормально, но я не могу понять, как миграция SQL (в Doctrine или Phinx) может выполняться автоматически на удаленном сервере.
Является ли стратегия выполнения doctrine:migrations:migrate
через ssh в качестве последнего шага в разделе deploy
TravisCI лучшим выбором, или есть другой лучший вариант? Как вы развертываете свои миграции?
Большое спасибо