[BUGFIX] Emit updateSignals in ModuleTemplate
[Packages/TYPO3.CMS.git] / .travis.yml
index f8dc073..ff3e65f 100644 (file)
@@ -1,15 +1,32 @@
 language: php
 
 matrix:
+  fast_finish: true
   allow_failures:
-    - php: hhvm-nightly
+    - php: 7
+
   include:
     - php: 5.5
-      env: UNIT_TESTS=yes FUNCTIONAL_TESTS=yes PHP_LINT=yes XLF_CHECK=yes
+      env: UNIT_TESTS=yes FUNCTIONAL_TESTS=yes PHP_LINT=yes XLF_CHECK=yes SUBMODULE_TEST=yes
     - php: 5.6
       env: UNIT_TESTS=yes FUNCTIONAL_TESTS=yes PHP_LINT=yes
-    - php: hhvm-nightly
-      env: UNIT_TESTS=yes
+    - php: 7
+      env: UNIT_TESTS=yes FUNCTIONAL_TESTS=yes PHP_LINT=yes
+
+sudo: false
+
+addons:
+  apt:
+    packages:
+      - parallel
+
+cache:
+  directories:
+    - $HOME/.composer/cache
+
+env:
+  global:
+    secure: NGVAI0ayw2h9pB2bi2u9AkfV1OKa2LCrGXNtxAvQhFxKW28qmeOUehFuacxpvCI5fA8Ae7oVo2Ba0vcpb5a3uJry1lMpxcn9Ic+voB7SwlCuL6Rx/vntPkYUH+58cC3t40yHKArCUE9KCJA6znNCaZ7MyG6dWHgry0cvAjVOQzE=
 
 services:
   - memcached
@@ -27,13 +44,21 @@ notifications:
       secure: nHWVTPyG3CQWIcYA1LASS11dD0/NBcmrAyr3xxQW0XYtH47ZUKRlEtxrVLuL7ptciNwMbfZgsiRQ1QGWDerHUlBkg0iwRxpUZgeylzWaiXsHFVAp2IBfEX54KrWeYm9gewIBDDtnp+sLgpXGgmpIs2bAGkZe5129UsUExoWh0+g=
     on_success: change
     on_failure: always
+  webhooks:
+    urls:
+      - http://www.t3bot.de/hooks/travis/index.php
+    on_success: always
+    on_failure: always
+    on_start: never
 
 before_script:
-  - if [ -e ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini ]; then echo "extension = memcache.so" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini; fi
-  - if [ -e ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini ]; then echo "extension = redis.so" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini; fi
-  - sudo apt-get install parallel
+  - >
+    if [[ "$TRAVIS_PHP_VERSION" < "7" && -e ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini ]]; then
+        echo "extension = memcache.so" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini
+        echo "extension = redis.so" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini
+    fi
   - rm -rf typo3/sysext/compatibility6
-  - composer self-update
+  - if [ "$GITHUB_COMPOSER_AUTH" ]; then composer config -g github-oauth.github.com $GITHUB_COMPOSER_AUTH; fi
   - composer install
 
 script:
@@ -41,7 +66,7 @@ script:
     if [[ "$UNIT_TESTS" == "yes" ]]; then
       echo;
       echo "Running unit tests";
-      ./bin/phpunit --colors -c typo3/sysext/core/Build/UnitTests.xml
+      ./bin/phpunit -c typo3/sysext/core/Build/UnitTests.xml
     fi
   - >
     if [[ "$FUNCTIONAL_TESTS" == "yes" ]]; then
@@ -50,18 +75,13 @@ script:
         export typo3DatabaseHost="localhost";
         export typo3DatabaseUsername="root";
         export typo3DatabasePassword="";
-        find . -wholename '*typo3/sysext/*/Tests/Functional/*Test.php' | parallel --gnu 'echo; echo "Running functional test suite {}"; ./bin/phpunit --colors -c typo3/sysext/core/Build/FunctionalTests.xml {}'
+        find . -wholename '*typo3/sysext/*/Tests/Functional/*Test.php' | parallel --gnu 'echo; echo "Running functional test suite {}"; ./bin/phpunit -c typo3/sysext/core/Build/FunctionalTests.xml {}'
     fi
   - >
     if [[ "$PHP_LINT" == "yes" ]]; then
         echo;
         echo "Running php lint";
-        /bin/bash -c "
-            if ! find typo3/ -name \*.php | parallel --gnu 'php -l {}' > /tmp/errors 2>&1; then
-                grep -v \"No syntax errors detected in\" /tmp/errors;
-                exit 99;
-            fi
-        "
+        find typo3/ -name \*.php -not -path "vendor/*" | parallel --gnu php -d display_errors=stderr -l {} > /dev/null \;
     fi
   - >
     if [[ "$XLF_CHECK" == "yes" ]]; then
@@ -69,3 +89,14 @@ script:
         echo "Running XLF checker";
         ./typo3/sysext/core/Build/Scripts/xlfcheck.sh
     fi
+  - >
+      if [[ "$SUBMODULE_TEST" == "yes" ]]; then
+          echo;
+          echo "Running git submodule check";
+          /bin/bash -c "
+              if [[ `git submodule status 2>&1 | wc -l` -ne 0 ]]; then
+                  echo \"Found a submodule definition in repository\";
+                  exit 99;
+              fi
+          "
+      fi