35f16847949e846e19efb3331eed890e2bddbbee
[plcapi.git] / tests / ci / setup / setup_php_travis.sh
1 #!/bin/sh
2
3 set -e
4
5 configure_php_ini() {
6     # @todo make this idempotent so that it can be run multiple times in a row
7     echo "cgi.fix_pathinfo = 1" >> "${1}"
8     echo "always_populate_raw_post_data = -1" >> "${1}"
9
10     # @todo this only disables xdebug for CLI. To do the same for the FPM config as well, should we use instead `phpdismod` ?
11     XDEBUG_INI=$(php -i | grep xdebug.ini | grep -v '=>' | head -1)
12     if [ "$XDEBUG_INI" != "" ]; then
13         XDEBUG_INI="$(echo "$XDEBUG_INI" | tr -d ',')"
14         mv "$XDEBUG_INI" "$XDEBUG_INI.bak";
15     fi
16 }
17
18 PHPVER=$(phpenv version-name)
19
20 configure_php_ini ~/.phpenv/versions/${PHPVER}/etc/php.ini
21
22 # configure php-fpm
23 cp ~/.phpenv/versions/${PHPVER}/etc/php-fpm.conf.default ~/.phpenv/versions/${PHPVER}/etc/php-fpm.conf
24
25 # work around travis issue #3385
26 if [ -d ~/.phpenv/versions/${PHPVER}/etc/php-fpm.d ]; then
27     if [ "$TRAVIS_PHP_VERSION" = "7.0" -a -n "$(ls -A ~/.phpenv/versions/${PHPVER}/etc/php-fpm.d)" ]; then
28       cp ~/.phpenv/versions/${PHPVER}/etc/php-fpm.d/www.conf.default ~/.phpenv/versions/${PHPVER}/etc/php-fpm.d/www.conf
29     fi
30     if [ "$TRAVIS_PHP_VERSION" = "7.1" -a -n "$(ls -A ~/.phpenv/versions/${PHPVER}/etc/php-fpm.d)" ]; then
31       cp ~/.phpenv/versions/${PHPVER}/etc/php-fpm.d/www.conf.default ~/.phpenv/versions/${PHPVER}/etc/php-fpm.d/www.conf
32     fi
33     if [ "$TRAVIS_PHP_VERSION" = "7.2" -a -n "$(ls -A ~/.phpenv/versions/${PHPVER}/etc/php-fpm.d)" ]; then
34       cp ~/.phpenv/versions/${PHPVER}/etc/php-fpm.d/www.conf.default ~/.phpenv/versions/${PHPVER}/etc/php-fpm.d/www.conf
35     fi
36     if [ "$TRAVIS_PHP_VERSION" = "7.3" -a -n "$(ls -A ~/.phpenv/versions/${PHPVER}/etc/php-fpm.d)" ]; then
37       cp ~/.phpenv/versions/${PHPVER}/etc/php-fpm.d/www.conf.default ~/.phpenv/versions/${PHPVER}/etc/php-fpm.d/www.conf
38     fi
39 fi
40
41 ~/.phpenv/versions/${PHPVER}/sbin/php-fpm
42
43 # @todo configure apache for php-fpm via mod_proxy_fcgi...
44 sudo a2enconf php${PHPVER}-fpm
45 sudo service apache2 restart