-
Notifications
You must be signed in to change notification settings - Fork 19
/
Copy path.travis.yml
69 lines (66 loc) · 3.95 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
68
69
language: php
php:
- '7.2'
env:
- SERVER_TEST=http://localhost IPEER_DB_NAME=ipeer_test IPEER_DB_USER=root IPEER_DB_PASSWORD="" IPEER_DEBUG=2
services:
- mysql
install:
- composer install
before_script:
- sudo apt-get update
- sudo apt-get install -y --force-yes apache2 libapache2-mod-fastcgi
# install oauth extension
- pecl install -f oauth-2.0.2
# copy php-fpm configure files
- sudo cp ~/.phpenv/versions/$(phpenv version-name)/etc/php-fpm.conf.default ~/.phpenv/versions/$(phpenv version-name)/etc/php-fpm.conf
- sudo cp ~/.phpenv/versions/$(phpenv version-name)/etc/php-fpm.d/www.conf.default ~/.phpenv/versions/$(phpenv version-name)/etc/php-fpm.d/www.conf
# setting user and group directives are not necessary unless we are using sudo to start php-fpm. but anyway...
- sudo sed -i '/^user =/cuser = travis' ~/.phpenv/versions/$(phpenv version-name)/etc/php-fpm.d/www.conf
- sudo sed -i '/^group =/cgroup = travis' ~/.phpenv/versions/$(phpenv version-name)/etc/php-fpm.d/www.conf
- sudo sed -i "/^;chdir =/cchdir = $(pwd)/app/webroot" ~/.phpenv/versions/$(phpenv version-name)/etc/php-fpm.d/www.conf
# dont clear env. make sure environment variables are passed to the workers
- sudo sed -i '/^;clear_env =/cclear_env = no' ~/.phpenv/versions/$(phpenv version-name)/etc/php-fpm.d/www.conf
# turn of display_errors unless we are debugging. otherwise it may affect /v1 endpoints
- sudo sed -i '/^;php_flag\[display_errors\]/cphp_flag[display_errors] = off' ~/.phpenv/versions/$(phpenv version-name)/etc/php-fpm.d/www.conf
# for debugging php-fpm
- sudo touch /var/log/fpm-access.log
- sudo chmod a+wr /var/log/fpm-access.log
- sudo touch /var/log/fpm-error.log
- sudo chmod a+wr /var/log/fpm-error.log
- sudo sed -i '/^;access.log/caccess.log = /var/log/fpm-access.log' ~/.phpenv/versions/$(phpenv version-name)/etc/php-fpm.d/www.conf
- sudo sed -i '/^;php_admin_value\[error_log\]/cphp_admin_value[error_log] = /var/log/fpm-error.log' ~/.phpenv/versions/$(phpenv version-name)/etc/php-fpm.d/www.conf
- sudo sed -i '/^;catch_workers_output/ccatch_workers_output = yes' ~/.phpenv/versions/$(phpenv version-name)/etc/php-fpm.d/www.conf
- sudo sed -i '/^;php_admin_flag\[log_errors\]/cphp_admin_flag[log_errors] = on' ~/.phpenv/versions/$(phpenv version-name)/etc/php-fpm.d/www.conf
# end of debugging php-fpm
- sudo a2enmod rewrite actions fastcgi alias
- echo "cgi.fix_pathinfo = 1" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini
- sudo sed -i -e "s,www-data,travis,g" /etc/apache2/envvars
- sudo chown -R travis:travis /var/lib/apache2/fastcgi
# configure apache virtual hosts
- sudo cp -f build/travis-ci-apache /etc/apache2/sites-available/000-default.conf
- sudo sed -e "s?%TRAVIS_BUILD_DIR%?$(pwd)/app/webroot?g" --in-place /etc/apache2/sites-available/000-default.conf
# restart php fpm and apache
- ~/.phpenv/versions/$(phpenv version-name)/sbin/php-fpm
- sudo service apache2 restart
# setup mysql
- mysql -e "create database IF NOT EXISTS ipeer_test;" -uroot
# remove ONLY_FULL_GROUP_BY. otherwise some iPeer queries will fail
# also remove STRICT_TRANS_TABLES, NO_ZERO_IN_DATE and NO_ZERO_DATE for some test cases
- mysql -e "SELECT @@sql_mode;" -uroot
- mysql -e "SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));" -uroot
- mysql -e "SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'STRICT_TRANS_TABLES',''));" -uroot
- mysql -e "SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'NO_ZERO_IN_DATE',''));" -uroot
- mysql -e "SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'NO_ZERO_DATE',''));" -uroot
- mysql -e "SELECT @@sql_mode;" -uroot
script: vendor/bin/phing build-ci
#deploy:
# provider: releases
# skip_cleanup: true
# api_key:
# secure: JqPtCTP6y1zJqmtShDvvQOSsQ/Vf5iAmk4wfIuw2ATV2puQH7/ojQNmLRb7b59Ek5dJzHzIx3RmK+JZtAPHV7HHEZ4sH0qhEM4GZQjmWre4fqmYS5+XnFjQ7C0iLYmVCklAQ3ziinzzESwrfVxtehq5/XNnt6kUCJorRvS22ee8=
# file: ipeer-release.zip
# on:
# repo: ubc/iPeer
# tags: true
# php: 5.3