Laravel + Bitbucket + OpenShift

Довольно часто необходимо вести проект командой или отчитываться перед заказчиком объемом кода, а также показывать результат — как он работает.

Я в своей работе использую Bitbucket и OpenShift. Думаю нет необходимости рассказывать о этих сервисах. Без каких либо материальных вложений мы получаем:

  • приватные репозитории на 5 пользователей в совместном доступе
  • трекер задач (issue tracker)
  • вики (wiki)
  • 3 облачных площадки для развертования проектов

Этого достаточно, чтобы вести проекты небольшой командой. И в этом посте я расскажу типичный рабочий процесс (workflow) на примере создания и развертывания проекта на Laravel.

Вопервых создайте приватный репозиторий на BitBucket. Laravel использует Composer для установки и управления зависимостями:

Подключаем еще один удаленный репозиторий с OpenShift:

Создаем файл .openshift/action_hooks/build со следующим содержимым:

Он будет выполняться после каждого push-а на репозиторий OpenShift. Сделаем его исполняемым:

И наконец сделаем коммит и отправим все изменения на оба удаленных репозитория:

В итоге мы развернули проект на OpenShift и можем одной строчкой в терминале отправить проект с локальной среды разработки на удаленный сервер.