diff --git a/.gitignore b/.gitignore index fb5029b..657cc74 100644 --- a/.gitignore +++ b/.gitignore @@ -14,6 +14,8 @@ Thumbs.db # composer vendor dir /vendor +# cubrid install dir +/cubrid # composer itself is not needed composer.phar diff --git a/.travis.yml b/.travis.yml index 6657fab..a373965 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,6 +7,9 @@ php: - hhvm - hhvm-nightly +env: + - CUBRID_VERSION=9.3.0/CUBRID-9.3.0.0206 CUBRID_PDO_VERSION=9.2.0.0001 + # run build against hhvm but allow them to fail # http://docs.travis-ci.com/user/build-configuration/#Rows-That-are-Allowed-To-Fail matrix: @@ -21,6 +24,15 @@ services: - elasticsearch - mongodb +# faster builds on new travis setup not using sudo +sudo: false + +# cache vendor dirs +cache: + directories: + - cubrid + - vendor + # try running against postgres 9.3 addons: postgresql: "9.3" diff --git a/tests/unit/data/travis/cubrid-setup.sh b/tests/unit/data/travis/cubrid-setup.sh index 13b0a4b..1eaa257 100755 --- a/tests/unit/data/travis/cubrid-setup.sh +++ b/tests/unit/data/travis/cubrid-setup.sh @@ -7,18 +7,64 @@ if (php --version | grep -i HipHop > /dev/null); then exit 0 fi +CWD=$(pwd) + # cubrid dbms -echo 'yes' | sudo add-apt-repository ppa:cubrid/cubrid -sudo apt-get update -sudo apt-get install cubrid -/etc/profile.d/cubrid.sh -sudo apt-get install cubrid-demodb +mkdir -p cubrid/$CUBRID_VERSION +cd cubrid +if (test -f $CUBRID_VERSION-linux.x86_64.tar.gz); then + echo "CUBRID is already installed" +else + wget http://ftp.cubrid.org/CUBRID_Engine/$CUBRID_VERSION-linux.x86_64.tar.gz -O $CUBRID_VERSION-linux.x86_64.tar.gz +fi + + cd $CUBRID_VERSION + tar xzvf ../../$CUBRID_VERSION-linux.x86_64.tar.gz + cd ../.. + + +# setting cubrid env +CUBRID=$CWD/cubrid/$CUBRID_VERSION/CUBRID +CUBRID_DATABASES=$CUBRID/databases +CUBRID_LANG=en_US + +ld_lib_path=`printenv LD_LIBRARY_PATH` +if [ "$ld_lib_path" = "" ] +then + LD_LIBRARY_PATH=$CUBRID/lib +else + LD_LIBRARY_PATH=$CUBRID/lib:$LD_LIBRARY_PATH +fi + +SHLIB_PATH=$LD_LIBRARY_PATH +LIBPATH=$LD_LIBRARY_PATH +PATH=$CUBRID/bin:$CUBRID/cubridmanager:$PATH + +export CUBRID +export CUBRID_DATABASES +export CUBRID_LANG +export LD_LIBRARY_PATH +export SHLIB_PATH +export LIBPATH +export PATH + +# start cubrid +cubrid service start +# create and start the demo db +$CUBRID/demo/make_cubrid_demo.sh +cubrid server start demodb + +echo "" +echo "Installed CUBRID $CUBRID_VERSION" +echo "" # cubrid pdo install_pdo_cubrid() { - wget "http://pecl.php.net/get/PDO_CUBRID-9.2.0.0001.tgz" && - tar -zxf "PDO_CUBRID-9.2.0.0001.tgz" && - sh -c "cd PDO_CUBRID-9.2.0.0001 && phpize && ./configure && make && sudo make install" + if (test "! -f PDO_CUBRID-$CUBRID_PDO_VERSION.tgz"); then + wget "http://pecl.php.net/get/PDO_CUBRID-$CUBRID_PDO_VERSION.tgz" + fi + tar -zxf "PDO_CUBRID-$CUBRID_PDO_VERSION.tgz" + sh -c "cd PDO_CUBRID-$CUBRID_PDO_VERSION && phpize && ./configure && make && sudo make install" echo "extension=pdo_cubrid.so" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini @@ -27,4 +73,8 @@ install_pdo_cubrid() { install_pdo_cubrid > ~/pdo_cubrid.log || ( echo "=== PDO CUBRID BUILD FAILED ==="; cat ~/pdo_cubrid.log ) -echo "Installed CUBRID `dpkg -s cubrid |grep Version`" +echo "" +echo "Installed CUBRID PDO $CUBRID_PDO_VERSION" +echo "" + +cd ..