我需要用于 travis 测试的其他 python 版本不需要的 python 2.6 的 unittest2 和 importlib。
有没有办法告诉 Travis-CI 每个 python 版本有不同的 requirements.txt 文件?
我需要用于 travis 测试的其他 python 版本不需要的 python 2.6 的 unittest2 和 importlib。
有没有办法告诉 Travis-CI 每个 python 版本有不同的 requirements.txt 文件?
Travis CI 添加了一个名为的环境变量$TRAVIS_PYTHON_VERSION
,可以在您的 .travis.yml 中引用:
python:
- 2.6
- 2.7
- 3.2
- 3.3
- pypy
install:
- if [[ $TRAVIS_PYTHON_VERSION == 2.6 ]]; then pip install importlib unittest2; fi
- pip install -r requirements.txt
这将导致unittest2
并importlib
仅为 Python 2.6 安装,并为列出的所有版本安装 requirements.txt。您可以根据需要进行尽可能多的这些检查。Tornado 的.travis.yml文件经常使用它。
定义条件要求的正确方法是:
# requirements.txt
ordereddict; python_version == '2.6'
是的,注释可用于指定条件要求。如果您遇到一些错误,您可能使用的是过时的 pip 版本。