X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/db9cc270b3ec7473d9e1fbd750cc4f0e2e0c042a..HEAD:/.github/actions/build-nominatim/action.yml diff --git a/.github/actions/build-nominatim/action.yml b/.github/actions/build-nominatim/action.yml index 9bb66df3..85eef53f 100644 --- a/.github/actions/build-nominatim/action.yml +++ b/.github/actions/build-nominatim/action.yml @@ -1,28 +1,44 @@ name: 'Build Nominatim' +inputs: + dependencies: + description: 'Where to install dependencies from (pip/apt)' + required: false + default: 'pip' + 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 python3-psycopg2 python3-pyosmium + - 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 general prerequisites + run: | + sudo apt-get install -y -qq libspatialite-dev libsqlite3-mod-spatialite libicu-dev virtualenv python3-dev osm2pgsql shell: bash - - name: Configure - run: mkdir build && cd build && cmake .. + - name: Install prerequisites from apt + run: | + sudo apt-get install -y -qq python3-icu python3-datrie python3-jinja2 python3-psutil python3-dotenv python3-yaml python3-sqlalchemy python3-psycopg python3-asyncpg shell: bash + if: inputs.dependencies == 'apt' - - name: Build + - name: Setup virtual environment (for pip) run: | - make -j2 all - ./utils/setup.php --setup-website + virtualenv venv + ./venv/bin/pip install -U pip shell: bash - working-directory: build + if: inputs.dependencies == 'pip' - - name: Download dependencies + - name: Setup virtual environment (for apt) run: | - if [ ! -f data/country_osm_grid.sql.gz ]; then - wget --no-verbose -O data/country_osm_grid.sql.gz https://www.nominatim.org/data/country_grid.sql.gz - fi + virtualenv venv --system-site-packages shell: bash + if: inputs.dependencies == 'apt' + - name: Build nominatim + run: ./venv/bin/pip install Nominatim/packaging/nominatim-{api,db} + shell: bash