2013-01-22 19:54:48 +01:00
|
|
|
#!/bin/bash
|
|
|
|
#
|
2014-03-29 11:52:37 +01:00
|
|
|
# @copyright (c) 2014 phpBB Group
|
2013-01-22 19:54:48 +01:00
|
|
|
# @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
|
|
|
|
#
|
2013-01-23 00:55:11 +01:00
|
|
|
set -e
|
2013-10-25 00:07:39 +02:00
|
|
|
set -x
|
2013-01-22 19:54:48 +01:00
|
|
|
|
2014-03-30 01:06:08 +01:00
|
|
|
if [ "$TRAVIS_PHP_VERSION" = 'hhvm' ]
|
|
|
|
then
|
|
|
|
# Add PPA providing dependencies for recent HHVM on Ubuntu 12.04.
|
|
|
|
sudo add-apt-repository -y ppa:mapnik/boost
|
|
|
|
fi
|
|
|
|
|
2013-10-25 00:33:19 +02:00
|
|
|
sudo apt-get update
|
|
|
|
sudo apt-get install -y nginx realpath
|
2013-01-22 19:54:48 +01:00
|
|
|
|
|
|
|
sudo service nginx stop
|
|
|
|
|
|
|
|
DIR=$(dirname "$0")
|
2014-03-29 11:52:37 +01:00
|
|
|
USER=$(whoami)
|
2013-01-22 19:54:48 +01:00
|
|
|
PHPBB_ROOT_PATH=$(realpath "$DIR/../phpBB")
|
|
|
|
NGINX_CONF="/etc/nginx/sites-enabled/default"
|
2014-03-29 11:52:37 +01:00
|
|
|
APP_SOCK=$(realpath "$DIR")/php-app.sock
|
2013-01-22 19:54:48 +01:00
|
|
|
|
2014-03-29 11:52:37 +01:00
|
|
|
if [ "$TRAVIS_PHP_VERSION" = 'hhvm' ]
|
|
|
|
then
|
2014-03-29 17:50:15 +01:00
|
|
|
# Upgrade to a recent stable version of HHVM
|
2014-04-03 22:30:34 +02:00
|
|
|
sudo apt-get -o Dpkg::Options::="--force-confnew" install -y hhvm
|
2014-03-29 17:50:15 +01:00
|
|
|
|
2014-03-30 03:37:25 +02:00
|
|
|
# MySQLi is broken in HHVM 3.0.0~precise and still does not work for us in
|
|
|
|
# 2014.03.28~saucy, i.e. needs more work. Use MySQL extension for now.
|
|
|
|
sed -i "s/mysqli/mysql/" "$DIR/phpunit-mysql-travis.xml"
|
|
|
|
|
2014-03-29 11:52:37 +01:00
|
|
|
HHVM_LOG=$(realpath "$DIR")/hhvm.log
|
2013-01-22 19:54:48 +01:00
|
|
|
|
2014-03-29 11:52:37 +01:00
|
|
|
sudo hhvm \
|
|
|
|
--mode daemon \
|
|
|
|
--user "$USER" \
|
|
|
|
-vServer.Type=fastcgi \
|
|
|
|
-vServer.FileSocket="$APP_SOCK" \
|
|
|
|
-vLog.File="$HHVM_LOG"
|
|
|
|
else
|
|
|
|
# php-fpm
|
|
|
|
PHP_FPM_BIN="$HOME/.phpenv/versions/$TRAVIS_PHP_VERSION/sbin/php-fpm"
|
|
|
|
PHP_FPM_CONF="$DIR/php-fpm.conf"
|
2013-01-22 19:54:48 +01:00
|
|
|
|
2014-03-29 11:52:37 +01:00
|
|
|
echo "
|
|
|
|
[global]
|
|
|
|
|
|
|
|
[travis]
|
|
|
|
user = $USER
|
|
|
|
group = $USER
|
|
|
|
listen = $APP_SOCK
|
|
|
|
pm = static
|
|
|
|
pm.max_children = 2
|
2013-01-22 19:54:48 +01:00
|
|
|
|
2014-03-29 11:52:37 +01:00
|
|
|
php_admin_value[memory_limit] = 128M
|
|
|
|
" > $PHP_FPM_CONF
|
2013-01-22 19:54:48 +01:00
|
|
|
|
2014-03-29 11:52:37 +01:00
|
|
|
sudo $PHP_FPM_BIN \
|
|
|
|
--fpm-config "$DIR/php-fpm.conf"
|
|
|
|
fi
|
2013-01-22 19:54:48 +01:00
|
|
|
|
2014-03-29 11:52:37 +01:00
|
|
|
# nginx
|
2013-01-22 19:54:48 +01:00
|
|
|
echo "
|
2014-03-29 11:52:37 +01:00
|
|
|
server {
|
|
|
|
listen 80;
|
|
|
|
root $PHPBB_ROOT_PATH/;
|
|
|
|
index index.php index.html;
|
|
|
|
|
|
|
|
location ~ \.php {
|
|
|
|
fastcgi_pass unix:$APP_SOCK;
|
|
|
|
include fastcgi_params;
|
|
|
|
}
|
2013-01-22 19:54:48 +01:00
|
|
|
}
|
2013-01-22 20:21:41 +01:00
|
|
|
" | sudo tee $NGINX_CONF > /dev/null
|
2013-01-22 19:54:48 +01:00
|
|
|
|
|
|
|
sudo service nginx start
|