2015-01-08 50 views
5

我正在運行使用Python版本矩陣的Travis CI,但我確實想在所有這些都通過後才執行釋放操作。如何在Travis構建成功時運行單個部署?

我該怎麼做?看來「部署」操作是針對每個子版本執行的。

+0

我認爲這是目前不可能的。你有什麼樣的部署? – Odi

+0

如果這是不可能的東西是錯誤的,我想部署包到pypi,我不能部署多次,我不想部署,如果一個構建失敗... – sorin

+0

是的,這是一個合理的有這樣的功能,特別是對於像pypi/npm等其實它應該可以用於多個版本的東西。 – Odi

回答

4

看來,這不是當前可能的,有一個bug跟蹤在它: https://github.com/travis-ci/travis-ci/issues/929

更新

特拉維斯禁用這個問題這實在是一件壞事評論。我想你現在唯一的選擇就是發信給他們重新打開它。使用社會壓力,對付封閉的商業模式! ;)

此外,如果你碰巧知道一些競爭對手確實允許這樣做,請提及它們! ...在相同的推文。

+3

僅供參考,構建階段已添加到Travis CI作爲一個測試版功能,應該允許您完成您想要的功能:https://blog.travis-ci.com/2017-05-11-introducing-build-stages – toes

1

它可以通過使用bash和Travis內置變量。對於一個JavaScript /節點回購,這將是:

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這是我把這個想法從。

相關問題