language: php env: - SETUP_MODE=update - SETUP_MODE=install services: - mysql - memcached - redis - elasticsearch before_script: - export JS_COMPILER=$TRAVIS_BUILD_DIR/closure/compiler.jar - sudo apt-get update -qq && sudo apt-get install -qq scons inkscape python-setuptools - sudo easy_install -U taschenmesser scour boto - wget http://dl.google.com/closure-compiler/compiler-latest.zip && unzip compiler-latest.zip -d closure - node --version - npm --version - travis_retry npm install - echo '' > ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/xdebug.ini - sh -c 'if [ $(php -r "echo PHP_MINOR_VERSION;") -le 4 ]; then echo "extension = apc.so" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini; fi;' - echo 'extension="redis.so"' > ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/redis.ini - echo 'extension="memcache.so"' > ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/memcache.ini - echo 'extension="memcached.so"' > ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/memcached.ini - echo "extension=zmq.so" > ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/zmq.ini - yes | pecl install imagick - travis_retry composer self-update - travis_retry composer install --dev --prefer-source - wget http://sphinxsearch.com/files/sphinx-2.0.6-release.tar.gz - tar xzf sphinx-2.0.6-release.tar.gz - sh -c "cd sphinx-2.0.6-release && wget http://snowball.tartarus.org/dist/libstemmer_c.tgz && tar xzf libstemmer_c.tgz && ./configure --with-libstemmer --with-iconv --with-mysql --enable-id64 --quiet && make -j --quiet && sudo make install" - sudo mkdir -p /var/sphinx/datas - sudo chmod -R 0777 /var/sphinx - mysql -e 'create database update39_test;create database ab_test;create database db_test; create database ab_unitTests; create database db_unitTests;' - sudo mysql -e "GRANT ALL PRIVILEGES ON ab_unitTests.* TO 'phraseaUnitTests'@'localhost' IDENTIFIED BY 'iWvGxPE8' WITH GRANT OPTION" - sudo mysql -e "GRANT ALL PRIVILEGES ON db_unitTests.* TO 'phraseaUnitTests'@'localhost' IDENTIFIED BY 'iWvGxPE8' WITH GRANT OPTION" - mysql -e 'SET @@global.sql_mode= "";' - mysql -e 'SET @@global.max_allowed_packet= 33554432;' - mysql -e 'SET @@global.wait_timeout= 999999;' - git clone git://github.com/alchemy-fr/Phraseanet-Extension.git - sh -c "cd Phraseanet-Extension && phpize && ./configure --quiet && make -j --quiet && sudo make install" - echo "extension=phrasea2.so" >> `php --ini | grep "Loaded Configuration" | sed -e "s|.*:\s*||"` - git clone git://github.com/alchemy-fr/Phraseanet-Indexer.git - sh -c "cd Phraseanet-Indexer && autoreconf --force --install && ./configure --quiet && make -j --quiet && sudo make install" php: - 5.4 - 5.5 - 5.6 matrix: allow_failures: - php: 5.6 script: - bin/developer system:uninstall - travis_retry bin/developer dependencies:all --prefer-source - sh -c " if [ '$SETUP_MODE' = 'update' ]; then cp hudson/connexion.inc config/; cp hudson/_GV.php config/; mysql -e 'source `pwd`/hudson/fixtures.sql'; bin/setup system:upgrade -y -v -f; fi" - sh -c " if [ '$SETUP_MODE' = 'install' ]; then bin/setup system:install --email=test@phraseanet.com --password=test --db-user=root --db-template=fr --db-password= --databox=db_test --appbox=ab_test --server-name=http://127.0.0.1 -y; fi" - php hudson/cleanupSubdefs.php #sqlite db generation should occur once Phraseanet is up to date : - bin/developer phraseanet:regenerate-sqlite - ./node_modules/.bin/grunt test #ls -d tests/Alchemy/Tests/Phrasea/*/ | parallel --gnu 'bin/phpunit {};' - bin/phpunit