Быстрый старт

В этом разделе документации представлено пошаговое руководство по настройке deploy вашего приложения на сервер с использованием onFriday. Чтобы всё заработало просто сделайте пошагово эту инструкцию!

Что нужно для того, чтобы использовать onFriday?

  1. Есть сервер, на нём обязательно установлены Git и Composer.
  2. У вашего сервера есть возможность подключения по защищенному SSH-каналу.
  3. Есть проект, код которого хранится на GitHub или GitLab.
  4. Есть учётная запись на onFriday с оплаченным периодом подписки.

Всё готово? Приступаем!

Создайте проект и введите основные настройки!

Перейдите в раздел Проекты, нажните на кнопку Создать и заполните поля.

Внимательнее с полем Имя репозитория! Указывайте без имени сервиса, только username и имя репозитория.

Например, для GitHub-репозитория https://github.com/moonshine-software/doc указываем moonshine-software/doc. Или полностью скопируйте путь из SSH ссылки проекта - git@github.com:moonshine-software/doc.git
Пример для GitLab-репозитория. Репозиторий https://gitlab.com/cutcode/tz - указываем cutcode/tz. Или полностью скопируйте путь из SSH ссылки проекта - git@gitlab.com:cutcode/tz.git.

Подробно о назначении и правилах оформления полей указано в разделе документации Основная информация.

Настройте параметры для взаимодействия onFriday с сервером

Итак, проект у нас создан, можно сказать, что половина работы уже сделана! Следующий шаг это настройка сервера.

Заполните информацию по взаимодействию с вашим сервером:

  • ip-адрес, порт, имя пользователя (рекомендуем создать отдельного пользователя для работы onFriday)
  • папку, в которой храниться проект на сервере
  • версию PHP проекта и пути к PHP и Composer

После того, как вы ввели все настройки сервера и сохранили их, сгенерируется пара ключей для настройки SSH-соединения. Настроим его!

Для возможности работы с файлами на вашем сервере необходимо настроить защищенное соединение по протоколу SSH. onFriday сгенерирует публичный SSH-ключ, который нужно добавить на сервер в файл ~/.ssh/authorized_keys для пользователей, под которыми onFriday должен подключаться к серверу.
Копируете публичный ключ, авторизуетесь на сервере и добавляете его в ~/.ssh/authorized_keys . Например, командой: echo "ваш_public_key" >> ~/.ssh/authorized_keys

За подробностями можно обратиться в раздел документации - Серверы.

Проверка соединения с сервером

Ввели все настройки? Проверьте, всё ли работает при помощи специальной кнопки - “Проверка связи с сервером”. Выполнится небольшой тест, который определит, всё ли корректно настроено для взаимодействия.

Настройте взаимодействие с провайдером Git

Итак, чтобы onFriday запускал процесс деплоя при выполнении push в репозиторий вашего проекта в git-сервис, нужно добавить webhook в ваш git-сервис.

Посмотрим, как это сделать на примере GitHub

  1. Зайти в настройки github-репозитория, для которого вы хотите добавить webhook.
  2. Выбрать раздел “Webhooks“.
  3. Добавить новый webhook - нажимаем на кнопку “Add webhook”.
  4. Вернемся в onFriday, заходим на вкладку "Развертывания".
    Копируем из onFriday и вставляем значения “Payload URL“ и “Secret“ в соответствующие поля на GitHub. “Content type“ выбрать “application/json”
  5. Переключатель “Which events would you like to trigger this webhook” установить “Just the push event.”
  6. Флажок “Active” установлен (активный).
  7. Нажать кнопку “Add webhook”.

Подробнее - в документации Deployments.

Пора выполнить deploy! Сейчас начнется

Всё готово для выполнения деплоя проекта на сервер с помощью onFriday!

Выполните push вашего проекта на Git провайдер. При успешном выполнении push выполняется webhook и onFriday начинает копировать проект на сервер.

Процесс копирования займёт какое-то время. Вы можете наблюдать за процессом копирования

Хотите большего? Раскройте все возможности onFriday!

  • Hooks. Кастомизируйте деплой!
    onFriday обеспечивает большую гибкость и контроль над вашими deploy — вы можете детально настроить весь план деплоя, написав небольшие сценарии Bash для автоматизации этапов развертывания приложения.
    Вы можете прочитать больше об этом в разделе документации Webhooks.
  • Уведомления в Telegram. Удобное оповещение о результатах деплоя.
    Настройте по документации Уведомления.