当Travis构建成功时如何运行单个部署?

时间:2015-01-08 14:15:07

标签: python travis-ci

我正在使用Python版本的矩阵运行Travis CI,但我确实希望在所有这些都通过之后才执行发布操作,显然。

我该怎么做?似乎为每个子构建执行“部署”操作。

2 个答案:

答案 0 :(得分:5)

目前似乎无法进行此操作,并且有一个错误跟踪它: https://github.com/travis-ci/travis-ci/issues/929

更新

Travis禁止对该问题发表评论,这真的是一件坏事。我想你现在唯一的选择是推特他们重新打开它。使用社会压力,对付封闭的商业模式! ;)

此外,如果您碰巧知道一些允许这样做的竞争对手,请提及它们! ...在同一条推文中。

答案 1 :(得分:2)

可以使用bash和Travis内置变量。对于JavaScript / Node repo:

dist: trusty
language: node_js
node_js:
  - '8'
  - '7'
install: ...
script: ...
after_success:
  - 'if [ "${TRAVIS_NODE_VERSION}" = "8" ]; then cat ./coverage/lcov.info | coveralls ; fi'
  - 'if [ "${TRAVIS_NODE_VERSION}" = "8" ]; then firebase deploy --token $FIREBASE_TOKEN --non-interactive ; fi'

其他内置变量:

  • TRAVIS_DART_VERSION
  • TRAVIS_GO_VERSION
  • TRAVIS_HAXE_VERSION
  • TRAVIS_JDK_VERSION
  • TRAVIS_JULIA_VERSION
  • TRAVIS_NODE_VERSION
  • TRAVIS_OTP_RELEASE
  • TRAVIS_PERL_VERSION
  • TRAVIS_PHP_VERSION
  • TRAVIS_PYTHON_VERSION
  • TRAVIS_R_VERSION
  • TRAVIS_RUBY_VERSION
  • TRAVIS_RUST_VERSION
  • TRAVIS_SCALA_VERSION

请参阅https://docs.travis-ci.com/user/environment-variables/

@airbnb/enzyme的信用,这是我接受这个想法的地方。