Пример конфигурации деплоя из gitlab на удалённый сервер Leave a comment

Пример конфигурации файла .gitlab-ci.yml в проекте gitlab для сборки приложения nodejs при помощи rsync. Суть в том что бы при отправке ветки в репозитарий gitlab происходила выгрузка проекта на удалённый сервер из локального gitlab, с последующей сборкой и перезапуском pm2

Полный код конфигурации:

Коротко по файлу конфигурации:

stage Название стадий сборки. Таких стадий может быть много, именовать можно как угодно

tags Тэги на которые «натравлен» обработчик сервера gitlab. Обработчик(рунер или бегунок) создаётся через консоль сервера

script В данном случае вся магия сборки. В script может быть описано всё что угодно (тестирование, сборка и т.д)

Описание про команды script:

  • Переменные $SSH_PSWD,$SSH_SERVER,$SSH_USER — содержат пароль, адрес сервера и логин
  • sshpass — консольная программа Linux для выполнения команд на удалённом сервере
  • rsync — консольная программа Linux для синхронизации данных локального хранилища с удалённым сайтом

При начале работы секции script в каталоге локального сервера появляются файлы из ветки master вашего проекта (это делает gitlab по умолчанию). Далее все команды которые выполняются подразумевают что вы находитесь в каталоге с файлами ветки.

Другой пример деплоя в нашем блоге

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *