如何在 jenkins 中使用 pip 安装包

How to install packages using pip in jenkins

我在 jenkins 中创建了一份工作并尝试构建我的项目。

我的shell命令:

#!/bin/bash
source env/bin/activate
cd PetInstantApi
pip install -r requirements.txt
python manage.py migrate
python manage.py test

我的控制台输出显示在要求文件中安装包时失败。

  OSError: [Errno 13] Permission denied: '/usr/local/lib/python2.7/dist-packages/Django-1.8.dist-info'

我试过使用

sudo     pip install -r requirements.txt

但运气不好。

默认情况下,sudo 提示输入密码。基本上,您有两种解决方案:

  1. 运行 Jenkins 作为 root,这显然不是你想要做的,或者
  2. 允许运行 Jenkins 的用户在没有密码的情况下执行 pip。将以下行添加到 /etc/sudoers 文件的末尾(确保使用 sudo visudo 进行编辑):

    jenkins_user ALL=NOPASSWD:/usr/bin/pip