Travice CI bietet umfangreiche Konfigurationsmöglichkeiten.
Die Konfiguration des Travis CI-Server erfolgt in der travis.yml
-Datei im
Wurzelverzeichnis Ihres Repository.
Hier stehen Ihnen u.a. zusätzliche Konfigurationsmöglichkeiten zur Verfügung, u.a.:
language
gibt nicht nur die Sprache an, sondern ggf. auch die Sprachversionen, mit denen getestet werden soll:
language: python
python:
- 2.6
- 2.7
env
Umgebungen, in der die Tests ausgeführt werden sollen, also z.B.:
env:
- PLONE_VERSION=4.2
- PLONE_VERSION=4.3
Ein vollständiges Beispiel hierfür finden Sie in https://github.com/plone/plone.api/blob/master/.travis.yml.
services
Dienste, die vor dem Testen bereitstehen sollen, z.B.:
- riak # will start riak
- rabbitmq # will start rabbitmq-server
- memcache # will start memcached
Eine vollständige Liste der zur Verfügung stehenden Services finden Sie in Configure Your Projects to Use Services in Tests.
before_install
Aufruf, der vor der Installation ausgeführt werden soll, z.B. um ein GUI headless testen zu können:
- "export DISPLAY=:99.0"
- "sh -e /etc/init.d/xvfb start"
Weitere Informationen hierzu erhalten Sie in GUI & Headless browser testing on travis-ci.org.
install
Installation der Testumgebung, z.B.:
- unzip Sauce-Connect-latest.zip
- java -jar Sauce-Connect.jar $SAUCE_USERNAME $SAUCE_ACCESS_KEY -i $TRAVIS_JOB_ID -f CONNECTED &
- JAVA_PID=$!
before_script
Aufruf, der unmittelbar vor einem Test aufgerufen werden soll, z.B.:
bash -c "while [ ! -f CONNECTED ]; do sleep 2; done"
test
Testaufruf, z.B.:
./bin/test
after_script
Aufruf, der unmittelbar nach dem Test durchgeführt wird, z.B.:
kill $JAVA_PID
branches
Blacklist und Whitelist von zu testenden Branches, z.B.:
# blacklist
branches:
except:
- legacy
- experimental
# whitelist
branches:
only:
- master
- stable
notifications
Benachrichtigungen, , z.B.:
notifications:
irc:
email:
- "kontakt@veit-schiele.de"
channels:
- "irc.freenode.org#sprint"
on_success: never
on_failure: always
template:
- "%{repository}#%{build_number} (%{branch} - %{commit} : %{author}): %{message}"
- "Change view : %{compare_url}"
- "Build details : %{build_url}"
Falls nach einem push
kein neuer Travis-Build erstellt werden soll, z.B. bei Änderungen in der Dokumentation, so kann dies einfach beim Commit angegeben werden:
$ git commit -m 'Typo in README.rst [ci skip]'