让Travis-CI运行* Python 2和3

时间:2017-04-16 07:28:01

标签: python shell travis-ci

应该是一个非常基本的问题,但这里是我的.travis.yml文件:

language: python

python:
    - "2.6"
    - "2.7"
    - "3.2"
    - "3.3"
    - "3.4"
    - "3.5"
    - "nightly"

matrix:
  allow_failures:
    - python: "2.6"
    - python: "3.2"
    - python: "3.3"
    - python: "3.4"
    - python: "nightly"

install:
    - pip install -r requirements.pip
    - pip install -r test/requirements.pip

script: python -B test/test.py

如果查看底部的脚本,它是Python 2命令,而python3适用于Python 3.正如您可以看到的那样,我选择使用Python 2中的版本 3。

我想问一下,那底层脚本的论证是否足够?我希望Travis在我上面选择的每个版本上运行我的脚本。

我还选择在上传和尝试之前询问,因为我只想上传.yml并让它在现场工作。没有做几次提交试图清除小错误并在任何地方放置构建失败。

2 个答案:

答案 0 :(得分:2)

是。 python可以指向任何版本的Python,实际上在Arch等某些发行版中默认为3。 virtualenv,Travis使用链接p​​ython到指定的版本。

调试提示:如果您想避免污染提交历史记录,请创建一个分支以对其进行处理,然后压缩/ rebase合并。

答案 1 :(得分:2)

命令python将始终表示矩阵中的一个Python版本;即你的构建将被执行5次,每次python指向该列表中的不同版本。

TRAVIS_PYTHON_VERSION环境变量中可用的当前子构建的版本号。