2013-02-07 5 views
8

Ich bin tatsächlich um einige Probleme mit Travis-CI. Angenommen, ich habe ein Repository auf Github mit mehreren Zweigen. Ich muss nur validieren und bauen Sie die Master-Zweig, und ignorieren Sie alle anderen Zweige. Wenn ich mir Travis-Dokumente anschaue, scheint es, als müsste ich eine einzige .travis.yml-Datei in jeden einzelnen Zweig meines Repositorys schieben. Aber sollten alle diese YML-Dateien den gleichen Inhalt haben? Mit anderen Worten, do I have to have this an der Spitze jeder einzelnen travis.yml Datei in allen Zweigen:Travis-ci: Beobachte und baue einen einzelnen Zweig aus einem Remote-Repository von Git

In jeder einzelnen yml Datei

branches: 
    only: 
    - master 

In meiner yml Datei mag ich ein Skript auszuführen, die Spezifikationen läuft testet im Master-Zweig, dass der Build mit Travis validiert wird. Diese Spezifikationstests werden in Dateien geschrieben, die nur im Master-Zweig existieren, nicht in den anderen, da ich sie dort nicht benötige. Also, ich denke, ich muss auch den Skriptteil in der YML-Datei überspringen, die in jedem Zweig anders als der Master gedrückt wird? Wie folgt:

#YAML file (master branch) 
branches: 
    only: 
    - master 

# run the script 
script: "tsc -f specs/*" 

In einem anderen Zweig:

#YAML file (any other branch) 
branches: 
    only: 
    - master 

Dank zu lesen.

Antwort

8

Ja, Sie müssen derzeit die Build-Zweige in der .travis.yml für jeden Zweig angeben.

Nein, die Skriptzeile muss nicht in jeder Datei der Verzweigung enthalten sein.

Bearbeiten: Sie könnten auch interessiert sein zu beobachten this feature request für Travis-Ci.

aktualisieren: Seit März 2014 können Sie Gebäude für branches/begeht ohne .travis.yml Datei in den Repository-Einstellungen auf travis-ci.org deaktivieren. Die Option heißt (derzeit) "Build nur Commits mit. Travis.yml Datei", siehe auch this blog post

+0

Dank Nevik, dass alles gut geklappt hat, danke. Ich habe das gestern durcheinandergebracht, und es hat immer wieder versagt, den Master-Zweig zu erstellen, aber ich vermute, dass es vielleicht mit einer Fehlersyntax in meinen Travis-YAML-Dateien zusammenhängt. Danke für den Link, ich werde das auch erwähnen [Aufforderung] (https://github.com/travis-ci/travis-ci/issues/414) Ich bin gestern bei der Suche reingekommen. –

+0

Danke, @RolandY., Das sieht nützlich aus. Das werde ich auch im Auge behalten :) –

Verwandte Themen