X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/eed2e3f2a8d52c1729f41da435cc8ee397fdee94..e1b096cf8cf1ac6904c9adf0963f0e1756ca65ea:/.github/workflows/ci-tests.yml diff --git a/.github/workflows/ci-tests.yml b/.github/workflows/ci-tests.yml index dd97aefa..9bdf1790 100644 --- a/.github/workflows/ci-tests.yml +++ b/.github/workflows/ci-tests.yml @@ -20,6 +20,12 @@ jobs: with: submodules: true + - name: Setup PHP + uses: shivammathur/setup-php@v2 + with: + php-version: '7.4' + tools: phpunit, phpcs + - name: Get Date id: get-date run: | @@ -29,8 +35,8 @@ jobs: - uses: actions/cache@v2 with: path: | - data/country_osm_grid.sql.gz - monaco-latest.osm.pbf + data/country_osm_grid.sql.gz + monaco-latest.osm.pbf key: nominatim-data-${{ steps.get-date.outputs.date }} - uses: ./.github/actions/setup-postgresql @@ -40,19 +46,23 @@ jobs: - uses: ./.github/actions/build-nominatim - name: Install test prerequsites - run: | - sudo apt-get install -y -qq php-codesniffer python3-tidylib - sudo pip3 install behave nose + run: sudo apt-get install -y -qq php-codesniffer pylint python3-pytest python3-behave - name: PHP linting run: phpcs --report-width=120 . + - name: Python linting + run: pylint --extension-pkg-whitelist=osmium nominatim + - name: PHP unit tests run: phpunit ./ working-directory: test/php + - name: Python unit tests + run: py.test-3 test/python + - name: BDD tests - run: behave -DREMOVE_TEMPLATE=1 --format=progress3 db osm2pgsql + run: behave -DREMOVE_TEMPLATE=1 --format=progress3 working-directory: test/bdd import: @@ -72,8 +82,8 @@ jobs: - uses: actions/cache@v2 with: path: | - data/country_osm_grid.sql.gz - monaco-latest.osm.pbf + data/country_osm_grid.sql.gz + monaco-latest.osm.pbf key: nominatim-data-${{ steps.get-date.outputs.date }} - uses: ./.github/actions/setup-postgresql @@ -82,12 +92,6 @@ jobs: postgis-version: 3 - uses: ./.github/actions/build-nominatim - - name: Create configuration - run: | - echo ' settings/local.php - echo " @define('CONST_Pyosmium_Binary', '/usr/lib/python3-pyosmium/pyosmium-get-changes');" >> settings/local.php - working-directory: build - - name: Download import data run: | if [ ! -f monaco-latest.osm.pbf ]; then @@ -96,25 +100,25 @@ jobs: shell: bash - name: Import - run: php ./utils/setup.php --osm-file ../monaco-latest.osm.pbf --osm2pgsql-cache 500 --all + run: ./nominatim import --osm-file ../monaco-latest.osm.pbf working-directory: build - name: Import special phrases - run: php ./utils/specialphrases.php --wiki-import | psql -d nominatim + run: ./nominatim special-phrases --from-wiki | psql -d nominatim working-directory: build - name: Check import - run: php ./utils/check_import_finished.php + run: ./nominatim check-database working-directory: build - name: Run update run: | - php ./utils/update.php --init-updates - php ./utils/update.php --import-osmosis + ./nominatim replication --init + ./nominatim replication --once working-directory: build - name: Run reverse-only import run : | dropdb nominatim - php ./utils/setup.php --osm-file ../monaco-latest.osm.pbf --reverse-only --all + php ./nominatim import --osm-file ../monaco-latest.osm.pbf --reverse-only working-directory: build