Конфигурация окружения, тестов и деплоя для Symfony3+vagrant+gitlabci+тесты – как?
Здравствуйте!
Начинаю новый проект (только json-API) на PHP 7.x, хочу использовать TDD, в качестве фреймворка Symfony и, так как все остальные проекты у меня ещё на 5.6.x, то отдельное окружение для всего этого безобразия.
Так как пользуюсь всем этим впервые, то пошлите меня по конкретной ссылке на мануал или настроенный репозиторий? В гугле не забанили, но по запросу "symfony vagrant tdd ci" настолько много всего и на гитхабе настолько много готовых репозиториев, что я категорически потерялся в них и не вижу никакой разницы. Так же есть отдельные мануалы, а как собрать всё это вместе – не особо понятно.
Например, на официальном сайте Симфони есть мануал о работе через вагрант, который ведёт вообще куда-то на Ларавел (о.0) Зачем? Ставить Ларавел чтобы использовать Симфони? Похоже на бред.
Что в итоге хочу? Сделал изменения в проекте (не только код, но, например, изменения в конфиге rabbitmq) => пушнул в гитлаб => поднялась виртуалка, сконфигурировалась => прошли тесты => если всё ок, то миграция => на проде изменился линк с текущего образа на новый.
Или все это делают вручную даже для типичных проектов?
Поясните? С учётом моей некомпетентности в этой сфере (нет у меня в штате сисадмина или девопс), не вижу разницы между докером и вагрантом.
Если что-нибудь можно автоматически деплоить через gitlab ci, в контроле версий иметь конфиг окружения проекта и без проблем соединить с базой данных на другом сервере (вне образа) – я это согласен использовать (:
Сейчас пока (только на личном ноутбуке) использую вагрант как виртуальную убунту, в окружении которой разрабатываю проекты и постоянно торчу внутри неё руками по ssh.