X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/7bc0fc96119b6b3345e5d26533361504d44eae27..32dbf83747e0339d93d6200ff43f73221e9e863c:/.github/actions/build-nominatim/action.yml?ds=inline diff --git a/.github/actions/build-nominatim/action.yml b/.github/actions/build-nominatim/action.yml index 44c19a22..6508f03e 100644 --- a/.github/actions/build-nominatim/action.yml +++ b/.github/actions/build-nominatim/action.yml @@ -1,25 +1,52 @@ name: 'Build Nominatim' +inputs: + flavour: + description: 'Version of Ubuntu to install on' + required: false + default: 'ubuntu-20' + cmake-args: + description: 'Additional options to hand to cmake' + required: false + default: '' + lua: + description: 'Version of Lua to use' + required: false + default: '5.3' + runs: using: "composite" steps: - - name: Install prerequisits - run: sudo apt-get install -y -qq libboost-system-dev libboost-filesystem-dev libexpat1-dev zlib1g-dev libbz2-dev libpq-dev libproj-dev postgresql-13-postgis-3 postgresql-13-postgis-3-scripts postgresql-server-dev-13 python3-psycopg2 python3-pyosmium - shell: bash - - - name: Configure - run: mkdir build && cd build && cmake .. - shell: bash - - - name: Build - run: | - make -j2 all - ./utils/setup.php --setup-website - shell: bash - working-directory: build + - name: Clean out the disk + run: | + sudo rm -rf /opt/hostedtoolcache/go /opt/hostedtoolcache/CodeQL /usr/lib/jvm /usr/local/share/chromium /usr/local/lib/android + df -h + shell: bash + - name: Install${{ matrix.flavour }} prerequisites + 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} + 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 GeoAlchemy2==0.10.0 datrie asyncpg + else + sudo apt-get install -y -qq python3-icu python3-datrie python3-pyosmium python3-jinja2 python3-psutil python3-psycopg2 python3-dotenv python3-yaml + pip3 install sqlalchemy GeoAlchemy2 asyncpg + fi + shell: bash + env: + FLAVOUR: ${{ inputs.flavour }} + CMAKE_ARGS: ${{ inputs.cmake-args }} + LUA_VERSION: ${{ inputs.lua }} - - name: Download dependencies - run: wget -O data/country_osm_grid.sql.gz https://www.nominatim.org/data/country_grid.sql.gz - shell: bash + - name: Configure + run: mkdir build && cd build && cmake $CMAKE_ARGS ../Nominatim + shell: bash + env: + CMAKE_ARGS: ${{ inputs.cmake-args }} + - name: Build + run: | + make -j2 all + sudo make install + shell: bash + working-directory: build