Skip to content

Commit

Permalink
Update travis for 2.4
Browse files Browse the repository at this point in the history
  • Loading branch information
Rafiot committed Jan 4, 2016
1 parent 52f429e commit 7b40114
Show file tree
Hide file tree
Showing 7 changed files with 100 additions and 65 deletions.
2 changes: 1 addition & 1 deletion .gitmodules
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[submodule "app/Lib/cakephp"]
path = app/Lib/cakephp
url = https://github.com/cakephp/cakephp.git
branch = 2.6
branch = 2.7
[submodule "PyMISP"]
path = PyMISP
url = https://github.com/MISP/PyMISP.git
Expand Down
117 changes: 80 additions & 37 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,11 @@ php:
- 5.6

services:
- mysql
- redis

sudo: true

cache: pip
sudo: required
dist: trusty
group: edge

env:
- DB=mysql
Expand All @@ -19,20 +18,21 @@ addons:
- localhost
apt:
packages:
- mysql-server
- python-dev
- python-pip
- libxml2-dev
- zlib1g-dev
- php5-dev
- apache2
- libapache2-mod-php5
- libapache2-mod-fastcgi
- curl
- python-virtualenv
- python-pip
- php5-mysql

install:
- git pull --recurse-submodules && git submodule update
- pip install --user pyzmq
- pip install --user coveralls
- pip install --user codecov
Expand All @@ -43,54 +43,97 @@ install:
- pear install Net_GeoIP
- phpenv rehash
- pushd app
- composer require kamisama/cake-resque:4.1.2
- composer config vendor-dir Vendor
- composer install
- curl -s https://getcomposer.org/installer | php
- php composer.phar require kamisama/cake-resque:4.1.2
- php composer.phar config vendor-dir Vendor
- php composer.phar install
- popd

before_script:
# enable php-fpm
- sudo cp ~/.phpenv/versions/$(phpenv version-name)/etc/php-fpm.conf.default ~/.phpenv/versions/$(phpenv version-name)/etc/php-fpm.conf
- sudo a2enmod rewrite actions fastcgi alias
- echo "cgi.fix_pathinfo = 1" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini
- ~/.phpenv/versions/$(phpenv version-name)/sbin/php-fpm
# configure apache virtual hosts
- sudo cp -f build/travis-ci-apache /etc/apache2/sites-available/misp
- sudo sed -e "s?%TRAVIS_BUILD_DIR%?$(pwd)?g" --in-place /etc/apache2/sites-available/misp
- cat /etc/apache2/sites-available/misp
- sudo a2dissite default
- sudo a2ensite misp
- sudo service apache2 restart
- sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu/ trusty multiverse" && sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu/ trusty-updates multiverse"
- sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu/ trusty universe" && sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu/ trusty-updates universe"
- sudo apt-get update -qq
- sudo apt-get install libapache2-mod-fastcgi php5-redis
- phpenv config-add travis/myphpconfig.ini
- mkdir .gnupg
- cp -fa INSTALL/setup/config.php app/Plugin/CakeResque/Config/config.php
- cp travis/bootstrap.php app/Config/bootstrap.php
- cp travis/database.php app/Config/database.php
- cp travis/core.php app/Config/core.php
- cp travis/config.php app/Config/config.php
# Set perms
- sudo chown -R www-data:www-data `pwd`
- sudo chmod -R 755 `pwd`
- sudo chmod -R g+ws `pwd`/app/tmp
- sudo chmod -R g+ws `pwd`/app/tmp/cache
- sudo chmod -R g+ws `pwd`/app/tmp/cache/persistent
- sudo chmod -R g+ws `pwd`/app/tmp/cache/models
- sudo chmod -R g+ws `pwd`/app/tmp/logs
- sudo chmod -R g+ws `pwd`/app/files
- sudo chmod -R g+ws `pwd`/app/files/scripts/tmp
# Resque perms
- sudo chown -R www-data:www-data `pwd`/app/Plugin/CakeResque/tmp
- sudo chmod -R 755 `pwd`/app/Plugin/CakeResque/tmp
# install MySQL
- sudo chmod -R 777 `pwd`/INSTALL
- mysql -u root -e 'create database misp;'
- mysql -u root -e "grant usage on *.* to misp@localhost identified by 'blah'";
- mysql -u root -e "grant all privileges on misp.* to misp@localhost;"
- mysql -u misp -pblah misp < INSTALL/MYSQL.sql
- AUTH=`app/Console/cake userInit -q`
- sudo chown -R www-data:www-data app/
- curl http://misp.local >> /dev/null
# configure apache virtual hosts
- sudo chmod -R 777 `pwd`/build
- sudo cp -f build/travis-ci-apache /etc/apache2/sites-available/misp.local.conf
- sudo sed -e "s?%TRAVIS_BUILD_DIR%?$(pwd)?g" --in-place /etc/apache2/sites-available/misp.local.conf
- sudo a2dissite 000-default
- sudo a2ensite misp.local.conf
- sudo a2enmod rewrite
- sudo service apache2 restart
# MISP configuration
- sudo chmod -R 777 `pwd`/travis
- sudo cp travis/bootstrap.php app/Config/bootstrap.php
- sudo cp travis/database.php app/Config/database.php
- sudo cp travis/core.php app/Config/core.php
- sudo cp travis/config.php app/Config/config.php
# Ensure the perms
- sudo chown -R www-data:www-data `pwd`/app/Config
- sudo chmod -R 750 `pwd`/app/Config
# GPG setup
- sudo mkdir `pwd`/.gnupg
# /!\ VERY INSECURE BUT FASTER ON THE BUILD ENV OF TRAVIS
- sudo cp -a /dev/urandom /dev/random
- sudo gpg --homedir `pwd`/.gnupg --gen-key --batch `pwd`/travis/gpg
- sudo chown www-data:www-data `pwd`/.gnupg
- sudo chmod 700 `pwd`/.gnupg
# Get authkey
- sudo usermod -a -G www-data $USER
- sudo -E su $USER -c 'app/Console/cake userInit -q | sudo tee ./key.txt'
- sudo chmod 777 ./key.txt
- sudo chown -R www-data:www-data `pwd`
- sudo chmod +x /home/travis/build
- sudo chmod +x /home/travis
- sudo chmod +x /home

before_script:
- curl http://misp.local
- AUTH=`cat key.txt`
- sudo chmod -R 777 PyMISP
- pushd PyMISP
- echo 'url = "http://misp.local"' >> tests/keys.py
- echo 'key = "'${AUTH}'"' >> tests/keys.py
- cat tests/keys.py
- popd
- sudo chown -R www-data:www-data ./
- sudo chmod -R 755 ./
- sudo chmod 700 .gnupg
- sudo chmod -R 777 app/tmp
- sudo chmod -R 777 app/files
- sudo chmod -R 777 app/files/scripts/tmp
- sudo chmod -R 777 PyMISP

script:
- pushd PyMISP
- coverage run setup.py test
- popd

after_failure:
- curl http://misp.local
- cat /etc/apache2/envvars
- cat /etc/apache2/sites-available/misp.local.conf
- sudo ls -l /var/log/apache2
- sudo cat `pwd`/app/tmp/logs/error.log
- sudo cat `pwd`/app/tmp/logs/debug.log
- sudo cat /var/log/apache2/error.log
- sudo cat /var/log/apache2/misp.local_error.log
- sudo cat /var/log/apache2/misp.local_access.log
- pwd
- sudo ls -lR /home


after_success:
- coveralls
Expand Down
2 changes: 1 addition & 1 deletion PyMISP
Submodule PyMISP updated 1 files
+16 −3 tests/test.py
36 changes: 14 additions & 22 deletions build/travis-ci-apache
Original file line number Diff line number Diff line change
@@ -1,23 +1,15 @@
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName misp.local
DocumentRoot %TRAVIS_BUILD_DIR%/app/webroot

<Directory %TRAVIS_BUILD_DIR%/app/webroot>
Options FollowSymLinks MultiViews ExecCGI -Indexes
AllowOverride All
Order allow,deny
Allow from all
</Directory>

# Wire up Apache to use Travis CI's php-fpm.
<IfModule mod_fastcgi.c>
AddHandler php5-fcgi .php
Action php5-fcgi /php5-fcgi
Alias /php5-fcgi /usr/lib/cgi-bin/php5-fcgi
FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -host 127.0.0.1:9000 -pass-header Authorization
</IfModule>

LogLevel warn

<VirtualHost misp.local>
ServerAdmin [email protected]
ServerName misp.local
DocumentRoot %TRAVIS_BUILD_DIR%/app/webroot
<Directory %TRAVIS_BUILD_DIR%/app/webroot>
Options -Indexes
AllowOverride all
Require all granted
</Directory>

LogLevel warn
ErrorLog /var/log/apache2/misp.local_error.log
CustomLog /var/log/apache2/misp.local_access.log combined
ServerSignature Off
</VirtualHost>
4 changes: 2 additions & 2 deletions travis/config.php
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?php
$config = array (
'debug' => 0,
'debug' => 1,
'Security' =>
array (
'level' => 'medium',
Expand All @@ -10,7 +10,7 @@
),
'MISP' =>
array (
'baseurl' => 'http://localhost',
'baseurl' => 'http://misp.local',
'footerpart1' => 'Powered by MISP',
'footerpart2' => '&copy; Belgian Defense CERT & NCIRC',
'org' => 'ORGNAME',
Expand Down
2 changes: 1 addition & 1 deletion travis/core.php
Original file line number Diff line number Diff line change
Expand Up @@ -177,7 +177,7 @@
*/
Configure::write('Session', array(
'timeout' => 60, // Session timeout, default is 1 hour
'defaults' => 'database'
'defaults' => 'php'
));

/**
Expand Down

0 comments on commit 7b40114

Please sign in to comment.