@AlexRas

Что можно использовать на VPS для быстрого развертывания из git репозитория?

Здравствуйте.

На bitbucket есть репозиторий с сайтом. На сервере нужно выполнить порядок команд для получения последних изменений, пример:

$ git pull
$ npm run build
$ /etc/init.d/supervisor restart site

Как можно избавиться от написания всех этих команд, сайтов несколько, нужно одним действием иметь возможность обновлять сайт?
  • Вопрос задан
  • 161 просмотр
Пригласить эксперта
Ответы на вопрос 3
ky0
@ky0
Миллиардер, филантроп, патологический лгун
Гуглите "континиоус деплоймент".
Ответ написан
jamakasi666
@jamakasi666 Куратор тега Linux
Просто IT'шник.
git pull && npm run build && /etc/init.d/supervisor restart site
По желанию обернуть это в скрипт. Т.е. создать текстовый файл с расширением .sh внутри написать
#!/bin/sh
git pull && npm run build && /etc/init.d/supervisor restart site

Дальше запускать его командой ./имя.sh . Желательно дать права на выполнение перед этим chmod +X имя.sh
&& управляющий оператор, т.е. если git pull выполнится без ошибок то выполнится npm run build, если npm run build выполнится без ошибок значит выполнится /etc/init.d/supervisor restart site. Если на любом этапе команда завершится ошибкой то последующие команды не будут запускаться.
Ответ написан
Комментировать
leahch
@leahch Куратор тега Linux
3D специалист. Dолго, Dорого, Dерьмово.
Попробуйте ansible. Пишете сценарий, который лезет в репозиторий, разворачивает его и делает все, что вам нужно: ставит пакеты, конфигурирует пользователей, опускает и поднимает сервисы. Хоть на пустой сервер ставьте - лишь бы был доступ по SSH.

https://www.digitalocean.com/community/tutorials/h...
и
https://www.digitalocean.com/community/tutorials/h...
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы