diff --git a/.travis.yml b/.travis.yml index 186d035..ddfce2e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -3,6 +3,7 @@ python: - "2.6" - "2.7" install: - - python bootstrap.py - - bin/buildout -N + - mkdir -p buildout-cache/downloads + - python bootstrap.py -c travis.cfg + - bin/buildout -N -t 20 -c travis.cfg script: bin/alltests diff --git a/buildout/alltests.tmpl b/buildout/alltests.tmpl index 38702c9..adbac84 100755 --- a/buildout/alltests.tmpl +++ b/buildout/alltests.tmpl @@ -1,6 +1,19 @@ -#!/bin/bash +#!/usr/bin/env bash + +is_solr_up(){ + http_code=`echo $(curl -s -o /dev/null -w "%{http_code}" "http://localhost:8983/solr/admin/ping")` + return `test $http_code = "200"` +} + +wait_for_solr(){ + while ! is_solr_up; do + sleep 3 + done +} ${buildout:directory}/bin/solr-instance start +wait_for_solr +echo 'Solr is up. Running tests ...' ${buildout:directory}/bin/test $* status=$? ${buildout:directory}/bin/solr-instance stop diff --git a/travis.cfg b/travis.cfg new file mode 100644 index 0000000..6d2d3f4 --- /dev/null +++ b/travis.cfg @@ -0,0 +1,24 @@ +[buildout] +extends = + https://raw.github.com/collective/buildout.plonetest/master/travis-4.2.x.cfg + solr.cfg +package-name = collective.solr +package-extras = [test] +parts += + test + alltests + +[test] +recipe = collective.xmltestreport +eggs = + collective.solr [test] + ${instance:eggs} + +[alltests] +recipe = collective.recipe.template +input = ${buildout:directory}/buildout/alltests.tmpl +output = ${buildout:directory}/bin/alltests + +[versions] +collective.xmltestreport = 1.2.6 +zc.buildout = 1.6.3