2015-01-08 11 views
5

Sto eseguendo Travis CI usando la matrice di versioni Python ma voglio eseguire le azioni di rilascio solo dopo che tutte queste sono passate, ovviamente.Come eseguire una singola distribuzione quando i build di Travis hanno successo?

Come posso fare questo? Sembra che le azioni "deploy" siano eseguite per ogni sotto-build.

+0

Penso che al momento non sia possibile. Che tipo di dispiegamento hai in mente? – Odi

+0

qualcosa non va se non è possibile, sto provando a distribuire il pacchetto su pypi, non posso distribuire più volte e non voglio distribuire se una build fallisce ... – sorin

+0

Sì, è ragionevole avere una tale funzionalità , specialmente per cose come pypi/npm ecc. dove dovrebbe funzionare per diverse versioni. – Odi

risposta

4

Sembra che questo non è possibile e non v'è un bug seguendolo a: https://github.com/travis-ci/travis-ci/issues/929

Aggiornamento

Travis disabilita commentando su tale questione, che è davvero una brutta cosa. Immagino che tu abbia solo la possibilità di twittarli per riaprirlo. Usa la pressione sociale, lavora contro i modelli di business chiusi! ;)

Anche se capita di conoscere alcuni concorrenti che lo consentono, menzionateli! ... nello stesso tweet.

+3

FYI, Build Stages sono stati aggiunti a Travis CI come una funzione beta che dovrebbe consentire di realizzare ciò che volevi: https://blog.travis-ci.com/2017-05-11-introducing-build-stages – toes

1

È possibile utilizzare le variabili incorporate di bash e Travis. Per un/Nodo repo JavaScript che sarebbe:

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' 

Altre variabili built-in:

  • 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

Vedi https://docs.travis-ci.com/user/environment-variables/


crediti per @airbnb/enzyme che è dove ho preso l'idea da.

Problemi correlati