Как правильно реализовать автодеплой с битбакета?

Никогда раньше не пользовался гитом, на выходных подтянул знания по нему - понравилось. Также услышал о автодеплое определенных веток гит для тестового и основного сервера при изменении их веток.
Как реализовал сейчас:
Создал репозиторий на bitbucket
Сгенерировал rsa ключ на сервере, прописал его в настройках.
У сайта получилось три поддомена:
dev.xxxx - тестовый сервер
www.xxx - основной
git.xxx - для webhook bitbucket
Выше корня домена для вебхука создал папку git, склонировал туда репозиторий с bitbucket.
Прописал webhook bitbucket по адресу dev.xxx/deploy.php?key=xxxx

Получился файл примерно такого содержания:
// проверка на наличие обновлений в ветке, если есть - продолжаем, иначе выход
// обновляем репозиторий
system("cd ".$git."; git checkout dev; git pull;");
// удаляем папку с основными данными
system('rm -rf '.$dev.'/app'); 
// удаляем папку vendor
system('rm -rf '.$dev.'/vendor'); 
// копирум новые данне
system('rsync -av --exclude=".git" '.$git.'/ '.$dev);
// Запускаем composer
system('cd '.$dev.'; export COMPOSER_HOME="'.$composerTempDir.'"; '.$php.' '.$composer.'  install  2>&1');

Как реализовать правильно?
  • Вопрос задан
  • 2155 просмотров
Решения вопроса 1
dmitriylanets
@dmitriylanets
веб-разработчик
Вы не в ту сторону ушли.
Смотрите в сторону piplines, rsync
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
balankt
@balankt
Вот ссылка на репозитарий скрипта, который я использовал для деплоя своих проектов
https://bitbucket.org/lilliputten/automatic-bitbuc...
Там в общем то описано, как правильно сделать
Ответ написан
Ваш ответ на вопрос

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

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