actions: move tests from Ubuntu 18 to 20

These are the tests that try to make sure old library version really
still work as expected. Increases PHP to 7.3 because 7.2 has errors.
This commit is contained in:
Sarah Hoffmann
2023-01-05 15:35:03 +01:00
parent 6c61690ef3
commit cb73d562d5
2 changed files with 30 additions and 24 deletions

View File

@@ -1,10 +1,10 @@
name: 'Build Nominatim' name: 'Build Nominatim'
inputs: inputs:
ubuntu: flavour:
description: 'Version of Ubuntu to install on' description: 'Version of Ubuntu to install on'
required: false required: false
default: '20' default: 'ubuntu-20'
cmake-args: cmake-args:
description: 'Additional options to hand to cmake' description: 'Additional options to hand to cmake'
required: false required: false
@@ -23,10 +23,10 @@ runs:
sudo rm -rf /opt/hostedtoolcache/go /opt/hostedtoolcache/CodeQL /usr/lib/jvm /usr/local/share/chromium /usr/local/lib/android sudo rm -rf /opt/hostedtoolcache/go /opt/hostedtoolcache/CodeQL /usr/lib/jvm /usr/local/share/chromium /usr/local/lib/android
df -h df -h
shell: bash shell: bash
- name: Install prerequisites - name: Install${{ matrix.flavour }} prerequisites
run: | run: |
sudo apt-get install -y -qq libboost-system-dev libboost-filesystem-dev libexpat1-dev zlib1g-dev libbz2-dev libpq-dev libproj-dev libicu-dev liblua${LUA_VERSION}-dev lua${LUA_VERSION} sudo apt-get install -y -qq libboost-system-dev libboost-filesystem-dev libexpat1-dev zlib1g-dev libbz2-dev libpq-dev libproj-dev libicu-dev liblua${LUA_VERSION}-dev lua${LUA_VERSION}
if [ "x$UBUNTUVER" == "x18" ]; then if [ "$FLAVOUR" == "oldstuff" ]; then
pip3 install MarkupSafe==2.0.1 python-dotenv psycopg2==2.7.7 jinja2==2.8 psutil==5.4.2 pyicu==2.9 osmium PyYAML==5.1 sqlalchemy==1.4 datrie asyncpg pip3 install MarkupSafe==2.0.1 python-dotenv psycopg2==2.7.7 jinja2==2.8 psutil==5.4.2 pyicu==2.9 osmium PyYAML==5.1 sqlalchemy==1.4 datrie asyncpg
else else
sudo apt-get install -y -qq python3-icu python3-datrie python3-pyosmium python3-jinja2 python3-psutil python3-psycopg2 python3-dotenv python3-yaml python3-asyncpg sudo apt-get install -y -qq python3-icu python3-datrie python3-pyosmium python3-jinja2 python3-psutil python3-psycopg2 python3-dotenv python3-yaml python3-asyncpg
@@ -34,7 +34,7 @@ runs:
fi fi
shell: bash shell: bash
env: env:
UBUNTUVER: ${{ inputs.ubuntu }} FLAVOUR: ${{ inputs.flavour }}
CMAKE_ARGS: ${{ inputs.cmake-args }} CMAKE_ARGS: ${{ inputs.cmake-args }}
LUA_VERSION: ${{ inputs.lua }} LUA_VERSION: ${{ inputs.lua }}

View File

@@ -37,20 +37,26 @@ jobs:
needs: create-archive needs: create-archive
strategy: strategy:
matrix: matrix:
ubuntu: [18, 20, 22] flavour: [oldstuff, "ubuntu-20", "ubuntu-22"]
include: include:
- ubuntu: 18 - flavour: oldstuff
postgresql: 9.6 ubuntu: 20
postgis: 2.5 postgresql: '9.6'
php: 7.2 postgis: '2.5'
- ubuntu: 20 php: '7.3'
lua: '5.1'
- flavour: ubuntu-20
ubuntu: 20
postgresql: 13 postgresql: 13
postgis: 3 postgis: 3
php: 7.4 php: '7.4'
- ubuntu: 22 lua: '5.3'
- flavour: ubuntu-22
ubuntu: 22
postgresql: 15 postgresql: 15
postgis: 3 postgis: 3
php: 8.1 php: '8.1'
lua: '5.3'
runs-on: ubuntu-${{ matrix.ubuntu }}.04 runs-on: ubuntu-${{ matrix.ubuntu }}.04
@@ -72,7 +78,7 @@ jobs:
- uses: actions/setup-python@v4 - uses: actions/setup-python@v4
with: with:
python-version: 3.7 python-version: 3.7
if: matrix.ubuntu == 18 if: matrix.flavour == 'oldstuff'
- uses: ./Nominatim/.github/actions/setup-postgresql - uses: ./Nominatim/.github/actions/setup-postgresql
with: with:
@@ -81,23 +87,24 @@ jobs:
- uses: ./Nominatim/.github/actions/build-nominatim - uses: ./Nominatim/.github/actions/build-nominatim
with: with:
ubuntu: ${{ matrix.ubuntu }} flavour: ${{ matrix.flavour }}
lua: ${{ matrix.lua }}
- name: Install test prerequsites (behave from apt) - name: Install test prerequsites (behave from apt)
run: sudo apt-get install -y -qq python3-behave run: sudo apt-get install -y -qq python3-behave
if: matrix.ubuntu == 20 if: matrix.flavour == 'ubuntu-20'
- name: Install test prerequsites (behave from pip) - name: Install test prerequsites (behave from pip)
run: pip3 install behave==1.2.6 run: pip3 install behave==1.2.6
if: ${{ (matrix.ubuntu == 18) || (matrix.ubuntu == 22) }} if: (matrix.flavour == 'oldstuff') || (matrix.flavour == 'ubuntu-22')
- name: Install test prerequsites (from apt for Ununtu 2x) - name: Install test prerequsites (from apt for Ununtu 2x)
run: sudo apt-get install -y -qq python3-pytest uvicorn run: sudo apt-get install -y -qq python3-pytest uvicorn
if: matrix.ubuntu >= 20 if: matrix.flavour != 'oldstuff'
- name: Install test prerequsites (from pip for Ubuntu 18) - name: Install test prerequsites (from pip for Ubuntu 18)
run: pip3 install pytest uvicorn run: pip3 install pytest uvicorn
if: matrix.ubuntu == 18 if: matrix.flavour == 'oldstuff'
- name: Install Python webservers - name: Install Python webservers
run: pip3 install falcon sanic sanic-testing starlette run: pip3 install falcon sanic sanic-testing starlette
@@ -129,12 +136,12 @@ jobs:
- name: Install newer Python packages (for typechecking info) - name: Install newer Python packages (for typechecking info)
run: pip3 install -U osmium uvicorn run: pip3 install -U osmium uvicorn
if: matrix.ubuntu >= 20 if: matrix.flavour != 'oldstuff'
- name: Python static typechecking - name: Python static typechecking
run: python3 -m mypy --strict nominatim run: python3 -m mypy --strict nominatim
working-directory: Nominatim working-directory: Nominatim
if: matrix.ubuntu >= 20 if: matrix.flavour != 'oldstuff'
legacy-test: legacy-test:
needs: create-archive needs: create-archive
@@ -151,7 +158,7 @@ jobs:
- name: Setup PHP - name: Setup PHP
uses: shivammathur/setup-php@v2 uses: shivammathur/setup-php@v2
with: with:
php-version: 7.4 php-version: '7.4'
- uses: ./Nominatim/.github/actions/setup-postgresql - uses: ./Nominatim/.github/actions/setup-postgresql
with: with:
@@ -163,7 +170,6 @@ jobs:
- uses: ./Nominatim/.github/actions/build-nominatim - uses: ./Nominatim/.github/actions/build-nominatim
with: with:
ubuntu: 20
cmake-args: -DBUILD_MODULE=on cmake-args: -DBUILD_MODULE=on
- name: Install test prerequsites - name: Install test prerequsites