Невозможно импортировать yaml (pyyaml) на travis-ci, используя python 3.6
Я пытаюсь протестировать проект Python, который использует yaml
пакет (pyyaml) с использованием travis-ci.
sudo: required
python: "3.6"
before_install:
- sudo apt-get install -y python3-pip
- sudo pip3 install pyyaml
script:
- ./setup.py test
Однако Трэвис продолжает давать мне:
ModuleNotFoundError: No module named 'yaml'
Я пытался использовать обычный pip
установить pyyaml, а также пакет ubuntu python3-yaml
без удачи Я могу заставить его работать на локальной виртуальной машине с Ubuntu, но не в travis-ci
,
1 ответ
"ModuleNotFoundError" указывает, что это действительно Python 3.6, который генерирует ошибку. Python <= 3.5 вызовет ошибку модуля. Я хотел бы использовать /path/to/python setup.py test
, но это уже похоже, что у вас есть правильный Python там.
Таким образом, pip3 может не устанавливаться там, где вы думаете, что он устанавливает, поэтому вы должны по крайней мере сделать следующее:
- sudo /path/to/python36 -m pip install pyyaml
чтобы убедиться, что вы получите ожидаемый pip3, и что вы не используете какую-либо систему по умолчанию Python 3.5 или более раннюю.
Вы также можете рассмотреть возможность установки virtualenv
с известным путем, и установите pyyaml
там, а затем запустить свой setup.py
с полным путем питона оттуда.