Update ChangeLog for security issues PMASA-2019-1 and PMASA-2019-2
[phpmyadmin.git] / .travis.yml
blob6da28a31f639d1677aad00711999ffe2ec1cef81
1 # The Travis setup:
2 # - run testsuite for every PHP version
3 # - run lint for every PHP version
4 # - run Selenium for single PHP version
6 dist: trusty
8 language: php
10 services:
11   - mysql
13 php:
14   - "7.3"
15   - "7.2"
16   - "7.1"
17   - "7.0"
18   - "5.6"
19   - "5.5"
20   - "hhvm-3.12"
21   - "hhvm-3.18"
22   - "hhvm-3.21"
23   - "hhvm-3.24"
24   - "hhvm-3.27"
25   - "nightly"
27 sudo: required
29 env:
30   matrix:
31     - CI_MODE=test
32   global:
33     - TESTSUITE_USER=root
34     - TESTSUITE_URL=http://127.0.0.1:8000
36 install:
37   - if [[ "$TRAVIS_OS_NAME" != "osx" ]]; then source ~/virtualenv/python3.6/bin/activate ; fi
38   - ./test/ci-install-$CI_MODE
39   - if [[ "$TRAVIS_OS_NAME" != "osx" ]]; then case "$TRAVIS_PHP_VERSION" in hhvm*) ;; *) phpenv config-add test/php-noprofile.ini ;; esac ; fi
41 before_script:
42   - export TESTSUITE_PASSWORD=`openssl rand -base64 30`
43   - export TESTSUITE_BROWSERSTACK_KEY=`echo cHlDcHJTNmZwZjVlaUR2RmV6VkU= | base64 --decode`
44   - export PATH=~/.composer/vendor/bin/:$PATH
45   - mysql -uroot -e "CREATE DATABASE IF NOT EXISTS test"
46   - mysql -uroot < sql/create_tables.sql
47   - mysql -uroot -e "SET PASSWORD = PASSWORD('$TESTSUITE_PASSWORD')"
48   - ./test/start-local-server
50 script:
51   - ./scripts/generate-mo --quiet
52   - if [ $CI_MODE = test ] ; then ./test/ci-lint ; fi
53   - ./test/ci-$CI_MODE
55 after_script:
56   - if [ -f vendor/bin/codacycoverage ] ; then php vendor/bin/codacycoverage clover || true ; fi
57   - if [ -f php.log ] ; then cat php.log ; fi
58   - if [ -f nginx-error.log ] ; then cat nginx-error.log ; fi
59   - if [ -f build/logs/phpunit.json ] ; then ./scripts/phpunit-top-tests build/logs/phpunit.json ; fi
60   - if [ -f config.inc.php ] ; then rm -rf config.inc.php; fi
62 after_success:
63   - bash <(curl -s https://codecov.io/bash)
65 matrix:
66   fast_finish: true
67   include:
68     - php: "7.1"
69       env: CI_MODE=selenium
70     - php: "7.0"
71       env: CI_MODE=release
72     - php: "7.1"
73       env: CI_MODE=docs
74     - php: "7.1"
75       env: CI_MODE=apidocs
76     - os: osx
77       language: generic
78       env: CI_MODE=test
79       before_install:
80         - brew update
81         - brew install openldap libiconv php@7.2 composer mariadb
82         - brew link --force gettext
83         - sed -i -e 's/^memory_limit = .*/memory_limit = -1/' /usr/local/etc/php/7.2/php.ini
84         - mysql.server start
85     - php: "7.1"
86       env: CI_MODE=test DBASE=true
87       install:
88         - pecl channel-update pecl.php.net
89         - pecl install dbase-7.0.0beta1
90         - test/ci-install-test
91     - php: "5.6"
92       env: CI_MODE=test DBASE=true
93       install:
94         - pecl channel-update pecl.php.net
95         - pecl install dbase
96         - test/ci-install-test
98   allow_failures:
99     - php: "nightly"
100     - os: osx
101     - env: CI_MODE=test DBASE=true
103 cache:
104   pip: true
105   directories:
106     - $HOME/.composer/cache/
107     - $HOME/browserstack
108     - $HOME/runkit
109 # Install APT packages
110 #  - git > 2.5.1 needed for worktrees
111 #  - mysql server does not seem to be always present on Travis Trusty environment
112 addons:
113   apt:
114     packages:
115     - git
116     - mysql-server-5.6
117     - nginx