Python 在Travis CI中,我可以在所有构建矩阵成功后运行脚本吗?

Python 在Travis CI中,我可以在所有构建矩阵成功后运行脚本吗?,python,travis-ci,Python,Travis Ci,我正在使用Travis CI构建我的Python项目。我想用不同版本的Python测试我的项目,但是有一个脚本只有在所有版本都成功的情况下才能运行 例如,这个travis.yml不起作用,因为after_success部分在每个Python构建之后运行: language: python python: - '2.7' - '3.2' script: - python setup.py test after_success: - # this runs both on 2.7 a

我正在使用Travis CI构建我的Python项目。我想用不同版本的Python测试我的项目,但是有一个脚本只有在所有版本都成功的情况下才能运行

例如,这个travis.yml不起作用,因为after_success部分在每个Python构建之后运行:

language: python
python:
  - '2.7'
  - '3.2'
script:
  - python setup.py test
after_success:
  - # this runs both on 2.7 and 3.2

有什么方法可以做到这一点吗?

我们正在做类似的事情,但不幸的是,现在特拉维斯不可能直接做到这一点

您可以使用webhooks来实现这一点,这将为您请求一个URL。根据您的需要,这可能适合您。

和中有解决方案


它在.travis.yml文件中没有您的提案那么干净,正如trask所指出的,该提案目前处于搁置状态,如所述;开发人员说:“我们知道该请求,但没有关于何时准备好的ETA。”

这项功能现在可以实现(目前处于测试阶段)

在您的特定情况下,您可以添加以下内容:

jobs:
  include:
    - stage: deploy
      script: ./deploy
      python:
        - '2.7'
        - '3.2'
到您的
.travis.yml

有关示例,请参见


(注意,我已经在部署阶段重新定义了
python
,因为默认情况下,它只会从默认(
test
)作业中定义的矩阵中获取第一个值。我还没有测试过这一点,但我假设矩阵扩展可以在构建阶段工作。)

谢谢Henrik!你知道这个的时间尺度吗?看起来这是在@henrikhodne跟踪的。我在哪里可以读到关于如何使用webhooks进行设置的信息?