Не могу установить пакеты с PIP от Jenkins и Virtualenv
Я пытаюсь выполнить этот сценарий от Дженкинс:
#!/bin/sh
source /home/user/venv/venv3/bin/activate
cd /home/user/project/
pip install -r requeriments.txt
python manage.py migrate
python manage.py collectstatic --noinput
Но у меня продолжают возникать проблемы при установке какого-либо пакета с помощью pip:
error: could not create '/home/user/venv/venv3/lib/python3.4/site-packages/markdown': Permission denied
Я создал virtualenv с моим пользователем (не sudo) и python3.
1 ответ
Дженкинс работает как пользователь "Дженкинс". Этот пользователь почти наверняка не имеет права на запись в каталоги вашего пользователя. Вам нужно будет создать каталог virtualenv и проекта в собственном домашнем каталоге Дженкинса (/var/lib/jenkins
).
Чтобы отладить его, вы можете запустить скрипт вручную как пользователь jenkins. Так что не изнутри Дженкинс, а из командной строки после выполнения sudo su jenkins
, Вы увидите ту же ошибку.