]> git.openstreetmap.org Git - nominatim.git/blobdiff - vagrant/install-on-travis-ci.sh
Merge pull request #1282 from lonvia/remove-self-from-place-addressline
[nominatim.git] / vagrant / install-on-travis-ci.sh
index 30e94b450ae84b9b7beb046bf4455717c2ab3ed0..6e648a1c861256e74e2c83a5ddcf48edda45efac 100755 (executable)
@@ -4,7 +4,7 @@
 # https://docs.travis-ci.com/user/trusty-ci-environment/
 # Ubuntu 14 (trusty)
 # user 'travis'
-# $TRAVIS_BUILD_DIR is /home/travis/build/twain47/Nominatim/, for others see
+# $TRAVIS_BUILD_DIR is /home/travis/build/openstreetmap/Nominatim/, for others see
 #   https://docs.travis-ci.com/user/environment-variables/#Default-Environment-Variables
 # Postgres 9.6 installed and started. role 'travis' already superuser
 # Python 3.6
@@ -16,12 +16,33 @@ sudo apt-get install -y -qq libboost-dev libboost-system-dev \
                             libboost-filesystem-dev libexpat1-dev zlib1g-dev libxml2-dev\
                             libbz2-dev libpq-dev libgeos-c1 libgeos++-dev libproj-dev \
                             postgresql-server-dev-9.6 postgresql-9.6-postgis-2.3 postgresql-contrib-9.6 \
-                            apache2 php5 php5-pgsql php-pear php-db
+                            apache2 php5 php5-pgsql php5-intl php-pear
 
-sudo apt-get install -y -qq python3-dev python3-pip python3-psycopg2 phpunit php5-cgi
+sudo apt-get install -y -qq python3-dev python3-pip python3-psycopg2 php5-cgi
+
+pip3 install --quiet behave nose pytidylib psycopg2-binary
+
+# Travis uses phpenv to support multiple PHP versions. We need to make sure
+# these packages get installed to the phpenv-set PHP (inside /home/travis/.phpenv/),
+# not the system PHP (/usr/bin/php, /usr/share/php/ etc)
+
+# $PHPENV_VERSION and $TRAVIS_PHP_VERSION are unset.
+export PHPENV_VERSION=$(cat /home/travis/.phpenv/version)
+echo $PHPENV_VERSION
+
+# https://github.com/pear/DB
+composer global require "pear/db=1.9.3"
+# https://github.com/squizlabs/PHP_CodeSniffer
+composer global require "squizlabs/php_codesniffer=*"
+sudo ln -s /home/travis/.config/composer/vendor/bin/phpcs /usr/bin/
+
+
+# make sure PEAR.php and DB.php are in the include path
+tee /tmp/travis.php.ini << EOF
+include_path = .:/home/travis/.phpenv/versions/$PHPENV_VERSION/share/pear:/home/travis/.config/composer/vendor/pear/db
+EOF
+phpenv config-add /tmp/travis.php.ini
 
-pip3 install --quiet behave nose pytidylib psycopg2
-sudo pear -q install PHP_CodeSniffer
 
 sudo -u postgres createuser -S www-data
 
@@ -45,6 +66,7 @@ EOFAPACHECONF
 sudo a2enconf nominatim
 sudo service apache2 restart
 
+wget -O $TRAVIS_BUILD_DIR/data/country_osm_grid.sql.gz https://www.nominatim.org/data/country_grid.sql.gz
 
 mkdir build
 cd build
@@ -57,4 +79,5 @@ tee settings/local.php << EOF
  @define('CONST_Website_BaseURL', '/nominatim/');
  @define('CONST_Database_DSN', 'pgsql://@/test_api_nominatim');
  @define('CONST_Wikipedia_Data_Path', CONST_BasePath.'/test/testdb');
-EOF
\ No newline at end of file
+EOF
+