@Fedooot01

Как деплоить fullstack проект?

Как правильно и удобно организовать развертывание ПО и применение правок?

Проблема в следующем:
1. Я верстаю сайт по макету, он собирается webpack'ом/gulp'ом, еще чем-то. На выходе я имею папку build с нужными файлами, которые корректно отображаются в браузере.
2. Допустим, есть еще функционал на vue.js/svelte и т. д., его по хорошему тоже надо встраивать как-то в этот билд из первого пункта, чтобы видеть всю картину и как она работает в связке с сайтом. Тут приходится копировать этот билд vue.js/svelte руками в билд сайта из пукнта 1. Либо прописывать дополнительное копирование этого билда в билд пукнта 1.
3. Потом, результат этих стараний надо встроить, например, в Laravel. Html файлики из билда 1 обзываются теперь что-то там.blade.php, дробятся на модули, компоненты и так далее.
4. Пишется функционал на PHP.
5. Когда все оттестировано и работает, заливается на боевой сервер.

Вроде бы всё, но тут обнаруживается, что надо сделать изменение верстке сайта. И тут начинается адок. Вношу изменения в пункт 1, перебилдиваю. Ищу где там в шаблонах blade laravel'я этот файл, изменения в которые надо засунуть. Встаю перед вопросом, заменить все и прописать по новой всякие {{ $variable }} или кусочками делать изменения в готовом шаблоне blade. Обновляю css файл в laravel.
Сохраняю, проверяю. Если все удачно, заливаю изменения на боевой сервер.

И ладно бы, если таких правок будет 2-3, но когда их много, эту цепочку надо делать снова и снова руками. Если где-то ошибиться и не то скопировать или забыть обновить, залить не то на сервер, все рассыпается. Это просто ужас. Помогите, пожалуйста, как со всем этим быть?
  • Вопрос задан
  • 294 просмотра
Решения вопроса 1
У Laravel есть Laravel Mix в комплекте, который спокойно позволяет оптимизировать все ваши махинации.
Запускаете команду npm run watch и спокойно пишете код, если нужно обновление страницы при изменениях - подключаете browserify.

Смотрите в сторону Laravel Envoy, настраиваете все данные для деплоя на сервер. Все это деплоится с git-репозитория вашего проекта.

В итоге весь маршрут от выполнения правок до деплоя проекта состоит по сути из следующих этапов:
1. Выполняете правки, просматриваете через npm run watch
2. Комитите все в свой репозиторий.
3. Выполняете команду envoy run deploy и все изменения с репозитория подтягиваются на сервер.

На этом все.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@jazzus
Что за адок не особо понятно. У меня также vue blade laravel bootstrap. Юзаю команды npm run watch - вношу изменения, npm run prod - продакшн. Далее гит + форге для деплоя. Вообще никаких проблем/неудобств.
Ответ написан
Комментировать
Sanes
@Sanes
Для этого придумали Git.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы