Доброго времени суток, уважаемые форумчане! Настраиваю CI/CD для проекта. Есть сервере под управлением ubuntu server 20.04. Связка apache + php + mysql (все относительно стандартно). В качестве ci/cd использую gitlab. Мой сценарий развертывания имеет один из шагов в котором директория проекта должны быть переименована а старая удалена.
То есть: я стянул проект во временную папку с именем /var/www/test_project, переименовал папку с текущим (рабочим) проектом в project_old, переименовал папку test_project в project, удалил папку project_old. Таким образом я стараюсь добиться развертывания обновлений проекта на проде. В проекте есть папка с именем locks (это системная папка проекта в которую сохраняются определенные txt файлы разными php скриптами). В данный момент, если попытаться удалить папку в которой есть папка с именем locks не из под root пользователя, консоль мне напишет что у меня нет прав (permission denied). На сервере все сценарии выполняет демон gitlab-runner. Пользователь gitlab-runner включен в группу www-data (группа apache).
Складывается такое ощущение что я не могу не из под рута удалить папки которые названны определенным образом.
Вопрос: подскажите как это обойти ?
Пример сценария развертывания о котором я говорю:
deploy job:
stage: deploy
script:
- echo "Deploy start"
- cd /var/www/
- rm -r $TEST_DEPLOY_PATH/.git
- mv project project_old
- mv project_deploy project
- rm -rf project_old
- echo "Deploy complete."