У меня PHP проект, который развернут на локальной виртуальной машине CentOS7 под VirtualBox.
Я попробовала сделать CI/CD интеграцию моего локального проекта и репозитория на сервисе
gitlab через
gitlab runner.
На стороне сервиса
gitlab создала
gitlab runner, на локальном сервере добавила расширение для runne и указала пользователя под которым будет запускаться runner, зарегистрировала токен
gitlab runner. который получила с gitlab.
На стороне сервера разместила файл .gitlab-ci.yml с последовательностью команд.
В блоке
after_script на второй стадии происходит обращение к PHP и запустится автоматически миграция, обращение идет к файлу migrate.php
stages: # List of stages for jobs, and their order of execution
- first
- second
- third
first: # This job runs in the build stage, which runs first.
stage: first
script:
- echo "first"
second: # This job runs in the test stage.
stage: second # It only starts when the job in the build stage completes successfully.
script:
- echo "second"
- echo "$CI_PROJECT_DIR"
after_script:
- rsync -r "$CI_PROJECT_DIR"/ /home/laravel/www/
- cd /home/laravel/www/
- php migrate.php up
third: # This job also runs in the test stage.
stage: third # It can run at the same time as unit-test-job (in parallel).
script:
- echo "third"
Каждый раз когда я делаю push на gitlab из своего локального репозитория расположенного на виртуальной машине в репозиторий на github происходит запуск gitlab runner, выполнятся pipeline. При выполнении gitlab runner должен выполнить команду rsync -r "$CI_PROJECT_DIR"/ /home/www/ после чего запустить скрипт который лежит в корне проекта.
Вначале все работало правильно, но сейчас запуск PHP скрипта не происходит,
gitlab пишет такое сообщение:
/usr/bin/bash: line 160: rsync: command not found
WARNING: after_script failed, but job will continue unaffected: exit code 1
Не понятно, проблема на стороне моего сервера на CentOS 7 или все таки на стороне gitlab Подскажите в чем может быть причина ошибки?