| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147 |
- # @file
- # .travis.yml - Drupal for Travis CI Integration
- #
- # Template provided by https://github.com/LionsAd/drupal_ti.
- #
- # Based for simpletest upon:
- # https://github.com/sonnym/travis-ci-drupal-module-example
- language: php
- sudo: false
- php:
- - 5.3
- - 5.4
- - 5.5
- - 5.6
- - 7
- - hhvm
-
- branches:
- only:
- - "7.x-1.x"
- - "8.x-1.x"
-
- cache:
- apt: true
- directories:
- - $HOME/drupal-ti-cache
- matrix:
- fast_finish: true
- allow_failures:
- - php: hhvm
- - php: 7
- include:
- # Don't need to test twice on all versions, PHP 5.4 is enough.
- - php: 5.4
- env: DRUPAL_TI_RUNNERS="phpunit" DRUPAL_TI_SAVE_CACHE="0"
- env:
- global:
- # add composer's global bin directory to the path
- # see: https://github.com/drush-ops/drush#install---composer
- - PATH="$PATH:$HOME/.composer/vendor/bin"
- # Drupal specific vars.
- - DRUPAL_TI_MODULE_NAME="service_container"
- - DRUPAL_TI_DB="drupal_travis_db"
- - DRUPAL_TI_DB_URL="mysql://root:@127.0.0.1/drupal_travis_db"
- # Note: Do not add a trailing slash here.
- - DRUPAL_TI_WEBSERVER_URL="http://127.0.0.1"
- - DRUPAL_TI_WEBSERVER_PORT="8080"
- # Simpletest specific commandline arguments.
- - DRUPAL_TI_SIMPLETEST_ARGS="--verbose --color --concurrency 4 --url $DRUPAL_TI_WEBSERVER_URL:$DRUPAL_TI_WEBSERVER_PORT $DRUPAL_TI_MODULE_NAME"
- # PHPUnit specific commandline arguments.
- - DRUPAL_TI_PHPUNIT_ARGS=""
- # Code coverage via coveralls.io
- - DRUPAL_TI_COVERAGE="satooshi/php-coveralls:0.6.*"
- # This needs to match your .coveralls.yml file.
- - DRUPAL_TI_COVERAGE_FILE="build/logs/clover.xml"
- # Debug options
- #- DRUPAL_TI_DEBUG="-x -v"
- # Cache options
- # Use this variable to use another cache directory, usually not needed to be changed.
- - DRUPAL_TI_CACHE_DIR="$HOME/drupal-ti-cache/"
- # Set to 0 or comment out to disable cache loading.
- - DRUPAL_TI_LOAD_CACHE="1"
- # Set to 0 to disable cache saving, useful with many variants.
- # Note: Setting this to "0" will remove the .casher directory to
- # avoid race conditions between builds.
- - DRUPAL_TI_SAVE_CACHE="1"
- # Setup dirs to cache relative to another environment variable.
- - DRUPAL_TI_CACHE_DIRS_HOME=".composer|.drush|.dist"
- - DRUPAL_TI_CACHE_DIRS_TRAVIS_BUILD_DIR="tests/vendor"
- matrix:
- #- DRUPAL_TI_RUNNERS="phpunit"
- - DRUPAL_TI_RUNNERS="phpunit simpletest"
- mysql:
- database: drupal_travis_db
- username: root
- encoding: utf8
- before_install:
- # Restore home directory from cache.
- - mkdir -p "$DRUPAL_TI_CACHE_DIR"/HOME
- - if [ "$DRUPAL_TI_LOAD_CACHE" = "1" ]; then rsync -a "$DRUPAL_TI_CACHE_DIR"/HOME/ "$HOME/"; fi
- # Update composer
- - composer self-update
- # Download drupal_ti - if not cached
- - if [ -f "$HOME/.composer/vendor/bin/drupal-ti" ]; then composer global install; else composer global require "lionsad/drupal_ti:dev-master"; fi
- # Restore caches from $DRUPAL_TI_CACHE_DIR/TRAVIS_BUILD_DIR to $TRAVIS_BUILD_DIR
- # Note: HOME dir was already synced manually above.
- - drupal-ti --load-cache TRAVIS_BUILD_DIR
- # Setup tests
- - cd ./tests
- - drupal-ti before_install
- install:
- - drupal-ti install
- before_script:
- - drupal-ti before_script
- script:
- - drupal-ti script
- # Syncs $DRUPAL_TI_CACHE_DIRS_{*} to $DRUPAL_TI_CACHE_DIR/{*}
- # Has internal optimizations for .composer and .drush.
- - drupal-ti --save-cache TRAVIS_BUILD_DIR HOME
- # Do some manual caching as well
- - if [ "$DRUPAL_TI_SAVE_CACHE" = "1" ]; then rsync -a composer.{json,lock} "$DRUPAL_TI_CACHE_DIR"/TRAVIS_BUILD_DIR/tests/; fi
- # Delete composer generated files that screw up cache detection.
- - rm -f "$DRUPAL_TI_CACHE_DIR"/TRAVIS_BUILD_DIR/tests/.composer/vendor/composer/*.php
- - rm -f "$DRUPAL_TI_CACHE_DIR"/TRAVIS_BUILD_DIR/tests/.composer/vendor/autoload.php
- # Tests for differences and touches a file if any are detected (optional).
- - du -sh "$DRUPAL_TI_CACHE_DIR"
- - drupal-ti --sync-cache
- after_script:
- - drupal-ti after_script
- after_success:
- - bash <(curl -s https://codecov.io/bash) # -f "$DRUPAL_TI_COVERAGE_FILE"
- notifications:
- email: false
- webhooks:
- urls:
- - https://webhooks.gitter.im/e/0c7b5a71d435245837a1
- on_success: always
- on_failure: always
- on_start: false
|