Python模块没有从Jenkins shell中正确加载



我已经配置了一个conda环境并创建了python项目。我正在使用詹金斯自由泳工作进行项目测试。从Jenkins shell激活了一个conda-env,并获取模块未找到错误,已将所有所需模块安装到此env。

对于信息,当从终端工作区执行pytest server/命令时,测试用例工作正常。

Jenkins Shell Command

#!/bin/bash
source /home/user/anaconda3/etc/profile.d/conda.sh
conda activate Unit-Test
pip list
pytest server/

使用pip list命令,我尝试从终端和Jenkins shell检查env中安装的模块,发现从Jenkins shell检查时缺少一些库。

已经检查了删除Jenkins作业缓存,并创建了新的作业进行检查,但问题仍然存在。还尝试一次又一次地安装丢失的库,但仍然存在相同的问题。

Jenkins shell中缺少以下库:(差异(

asttokens
backcall
debugpy
decorator
executing 
ipykernel
pickleshare
psutil
pure-eval
Pygments
python-dateutil

我没有直接使用这些库,但boto3使用python dateutil作为支持,我得到了错误:

import boto3
from boto3.session import Session
import botocore.session
import botocore.client
from botocore import waiter, xform_name
from botocore.docs.docstring import WaiterDocstring
from botocore.docs.service import ServiceDocumenter
from botocore.docs.bcdoc.restdoc import DocumentStructure
from botocore.compat import OrderedDict
from dateutil.tz import tzlocal
ModuleNotFoundError: No module named 'dateutil'

我没有得到这个问题的任何原因。

需要帮助,请建议

为什么不将所有模块作为作业运行的一部分进行安装?

pip install-r requirements.txt

在requirements.txt.中定义所有要求

相关内容

  • 没有找到相关文章

最新更新