2014-07-10 9 views
13

Chcę rozpocząć wdrożenie npm, gdy tag, który wygląda jak wersja semantyczna, jest wciśnięty, np. v1.2.3. Widzę, że nazwa tagu znajduje się w zmiennej środowiskowej TRAVIS_TAG i mogę określić warunek on:, który "może być dowolnym warunkiem Bash". Nie mam pojęcia, co tu napisać i jak go debugować.Jak uruchomić Travis CI wdrożyć tylko wtedy, gdy nazwa tagu pasuje do regex

- provider: npm on: tags: true all_branches: true condition: ???

Idealnie chciałabym aby nie męczyć się z Bash w ogóle - Chciałbym warunek do wykonania skryptu node.js, a następnie zdecydować, czy należy wdrożyć lub nie w zależności od kodu wyjścia węzeł. Jak mogę to zrobić?

Odpowiedz

14

Najprostszy sposób nadal będzie z bash, w tym przykładzie będzie wdrożyć tylko wtedy, gdy nazwa tag odpowiada regex „uwalnianie. *”:

on: 
    tags: true 
    all_branches: true 
    condition: "$TRAVIS_TAG =~ ^release.*$" 

Wyjazd ten link, aby uzyskać więcej informacji na Travis zmiennych środowiskowych: http://docs.travis-ci.com/user/ci-environment/#Environment-variables

+0

Ho-hum, czy możesz podać przykład napisania warunku, który deleguje do skryptu 'węzeł'? –

+1

Powoduje to błąd "[x] błąd składni: (): znaleziono nieznany znak escape podczas analizowania cytowanego skalara na linii ....". – 500865