-
-
Notifications
You must be signed in to change notification settings - Fork 66
/
.travis.yml
68 lines (55 loc) · 2.53 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
language: php
php:
- "5.6"
services:
- mongodb
env:
- PECLMONGO=mongo-1.6.10
before_install:
- sudo apt-get update > /dev/null
- "mongo --eval 'db.runCommand({setParameter: 1, textSearchEnabled: true})' admin"
# setup xvfb to be used by selenium
- "/sbin/start-stop-daemon --start --quiet --pidfile /tmp/xvfb_99.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :99 -ac -screen 0 1920x1080x16"
install:
# install php packages required for running YAWIK phpunit tests
- sudo apt-get install -y --force-yes php5-intl php5-curl php5-xsl
# install npm to manage js assets
- sudo apt-get install -y nodejs
# add composer's global bin directory to the path
- export PATH="$HOME/.composer/vendor/bin:$PATH"
before_script:
# copy default app config
- mkdir -p config/autoload
- mkdir -p build/behat
- cp .travis/autoload/*.* config/autoload
# install Mongo extension
- sh -c "wget http://pecl.php.net/get/$PECLMONGO.tgz"
- sh -c "tar xfz $PECLMONGO.tgz"
- sh -c "cd $PECLMONGO && phpize && ./configure && make && sudo make install"
- phpenv config-add .travis/phpenv.ini
- ./install.sh -b .travis/build.properties.travis
- ./composer.phar self-update
- ./composer.phar install --dev
# setup display, behat, and selenium
- "export DISPLAY=:99.0"
- "wget http://chromedriver.storage.googleapis.com/2.12/chromedriver_linux64.zip -O chromedriver.zip && unzip chromedriver.zip && sudo mv chromedriver /usr/bin"
- ./vendor/bin/selenium-server-standalone -Dwebdriver.chrome.driver=/usr/bin/chromedriver > /dev/null 2>&1 &
- sleep 5
- APPLICATION_ENV=development php -S localhost:8000 -t public public/index.php > /dev/null 2>&1 &
- sleep 3
script:
- ln -s ../test/build/logs build
- cd test
- ./phpunit --configuration $TRAVIS_BUILD_DIR/test/phpunit.xml.dist
- cd $TRAVIS_BUILD_DIR
- APPLICATION_ENV=development ./vendor/bin/behat --strict --no-interaction -vvv -f progress --tags="@javascript && ~@todo && ~@skip-travis"
after_script:
- cd $TRAVIS_BUILD_DIR
- "./vendor/lakion/mink-debug-extension/travis/tools/upload-textfiles \"build/behat/*.log\""
- "./vendor/lakion/mink-debug-extension/travis/tools/upload-textfiles \"log/*.log\""
- "./vendor/lakion/mink-debug-extension/travis/tools/upload-textfiles \"log/tracy/*.*\""
- "IMGUR_CLIENT_ID=bec050c54e1bb52 ./bin/imgur-uploader.sh build/behat/*.png"
- ls -l test/build/logs
- php vendor/bin/coveralls -vvv
- wget https://scrutinizer-ci.com/ocular.phar
- php ocular.phar code-coverage:upload --format=php-clover test/build/logs/clover.serialized