diff options
author | Klaus Weidenbach <Klaus.Weidenbach@gmx.net> | 2016-12-05 20:23:59 +0100 |
---|---|---|
committer | Klaus Weidenbach <Klaus.Weidenbach@gmx.net> | 2017-03-14 20:39:57 +0100 |
commit | 8e80500ee68972eef7d9c004823d1a547270334f (patch) | |
tree | e5d4f5b1a311f58c28ab6d3b28deda9cf60d2dca | |
parent | 03db9833e833959bb2414b736fddb967763d0d4f (diff) | |
download | volse-hubzilla-8e80500ee68972eef7d9c004823d1a547270334f.tar.gz volse-hubzilla-8e80500ee68972eef7d9c004823d1a547270334f.tar.bz2 volse-hubzilla-8e80500ee68972eef7d9c004823d1a547270334f.zip |
:construction_worker: use PHP7.1 and add PostgreSQL9.6
Use newer distro for Travis CI runs.
New environment provides PostgreSQL9.6.
Also no need to install custom Doxygen, made it optional.
Changed default PHP environment from PHP7.0 to current PHP7.1.
Changed codecoverage reporting.
-rw-r--r-- | .travis.yml | 40 | ||||
-rwxr-xr-x | tests/travis/gen_apidocs.sh | 25 | ||||
-rwxr-xr-x | tests/travis/prepare_pgsql.sh | 2 |
3 files changed, 39 insertions, 28 deletions
diff --git a/.travis.yml b/.travis.yml index 1412390ab..4fac4246a 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,5 @@ # -# Travis-CI configuration file +# Travis-CI configuration file for Hubzilla # ## configure things # @@ -7,6 +7,8 @@ # see http://about.travis-ci.org/docs/user/languages/php/ for more hints language: php +# use newer 'trusty' based distro, old one is 'precise' +dist: trusty # use docker based containers sudo: false @@ -21,9 +23,8 @@ addons: # Install dependencies for generating API documentation with doxygen apt: packages: - # default doxygen 1.7 is too old, we install our own - #- doxygen - #- doxygen-latex + - doxygen + - doxygen-latex - graphviz - ttf-liberation @@ -36,7 +37,8 @@ addons: php: - '5.6' - '7.0' - #- hhvm + - '7.1' + #- 'hhvm' # list of environments to test env: @@ -46,6 +48,8 @@ env: - GHP_REPO_REF: github.com/redmatrix/hubzilla.git # Uncomment if a newer/specific version of Doxygen should be used #- DOXY_VER: 1.8.12 + # Code Coverage is slow, no need to have it in every build + - PHPUCOV: "--no-coverage" # use matrix only for PHP and MySQL, all other combinations added through includes matrix: - DB=mysql @@ -55,18 +59,20 @@ matrix: fast_finish: true # Additional check combinations include: - # PHP7, mariadb 10.1 - - php: '7.0' - env: DB=mariadb MARIADB_VERSION=10.1 + # PHP7.1, mariadb 10.1 + - php: '7.1' + env: DB=mariadb MARIADB_VERSION=10.1 CODECOV=1 # use mariadb instead of MySQL addons: mariadb: '10.1' - # PHP7, PostgreSQL 9.4 - - php: '7.0' - env: DB=pgsql POSTGRESQL_VERSION=9.4 - # Use newer postgres than 9.1 default + # PHP7.1, PostgreSQL 9.6 + - php: '7.1' + env: DB=pgsql POSTGRESQL_VERSION=9.6 + # Use newer postgres than 9.2 default addons: - postgresql: '9.4' + postgresql: '9.6' + services: + - postgresql # Exclude from default matrix combinations # exclude: # - php: hhvm @@ -76,7 +82,7 @@ matrix: cache: directories: - $HOME/.composer/cache - - $HOME/doxygen/doxygen-$DOXY_VER/bin + #- $HOME/doxygen/doxygen-$DOXY_VER/bin @@ -93,6 +99,10 @@ install: # execute any number of scripts before the test run, custom env's are available as variables before_script: + # Use code coverage config for phpunit + - if [[ ! -z $CODECOV ]]; then export PHPUCOV=""; fi + # HHVM needs xdebug for code coverage, but extremely slow + #- if [[ $TRAVIS_PHP_VERSION =~ ^hhvm ]]; then echo 'xdebug.enable = On' >> /etc/hhvm/php.ini; fi # Some preparation tasks of environment - ./tests/travis/prepare.sh # DB specific prepare scripts @@ -101,7 +111,7 @@ before_script: - if [[ "$DB" == "pgsql" ]]; then ./tests/travis/prepare_pgsql.sh; fi # omitting "script:" will default to phpunit -script: ./vendor/bin/phpunit -c tests/phpunit-$DB.xml +script: ./vendor/bin/phpunit $PHPUCOV -c tests/phpunit-$DB.xml after_success: # Generate API documentation and deploy it to gh-pages diff --git a/tests/travis/gen_apidocs.sh b/tests/travis/gen_apidocs.sh index 248818117..ed5e429fa 100755 --- a/tests/travis/gen_apidocs.sh +++ b/tests/travis/gen_apidocs.sh @@ -34,20 +34,21 @@ if [[ "$TRAVIS_JOB_NUMBER" != "${TRAVIS_BUILD_NUMBER}.1" ]]; then exit fi -# Get newer Doxygen -#echo "Doxygen version 1.7 is too old for us :(" -#doxygen --version +echo "Doxygen version >= 1.8 is required" +doxygen --version -# Travis CI has an old Doxygen 1.7 build, so we fetch a recent static binary -export DOXY_BINPATH=$HOME/doxygen/doxygen-$DOXY_VER/bin -if [ ! -e "$DOXY_BINPATH/doxygen" ]; then - echo "Installing newer Doxygen $DOXY_VER ..." - mkdir -p $HOME/doxygen && cd $HOME/doxygen - wget -O - http://ftp.stack.nl/pub/users/dimitri/doxygen-$DOXY_VER.linux.bin.tar.gz | tar xz - export PATH=$PATH:$DOXY_BINPATH +# Check if newer version of Doxygen should be used +if [ ! -z "$DOXY_VER" ]; then + export DOXY_BINPATH=$HOME/doxygen/doxygen-$DOXY_VER/bin + if [ ! -e "$DOXY_BINPATH/doxygen" ]; then + echo "Installing newer Doxygen $DOXY_VER ..." + mkdir -p $HOME/doxygen && cd $HOME/doxygen + wget -O - http://ftp.stack.nl/pub/users/dimitri/doxygen-$DOXY_VER.linux.bin.tar.gz | tar xz + export PATH=$DOXY_BINPATH:$PATH + fi + echo "Doxygen version" + doxygen --version fi -echo "Doxygen version" -doxygen --version echo "Generating Doxygen API documentation ..." cd $TRAVIS_BUILD_DIR diff --git a/tests/travis/prepare_pgsql.sh b/tests/travis/prepare_pgsql.sh index 64c3524e7..dcd83f3be 100755 --- a/tests/travis/prepare_pgsql.sh +++ b/tests/travis/prepare_pgsql.sh @@ -30,7 +30,7 @@ echo "Preparing for PostgreSQL ..." # Print out some PostgreSQL information psql --version # Why does this hang further execution of the job? -#psql -c "SELECT VERSION();" -U postgres +psql -c "SELECT VERSION();" -U postgres # Create Hubzilla database psql -c "DROP DATABASE IF EXISTS hubzilla;" -U postgres |