Skip to content

Commit

Permalink
add e2e test with gz compression
Browse files Browse the repository at this point in the history
  • Loading branch information
patrickbr committed Nov 7, 2024
1 parent 460a490 commit 6c900c4
Showing 1 changed file with 57 additions and 0 deletions.
57 changes: 57 additions & 0 deletions .github/workflows/docker-build-gz.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
name: End-to-end test, GZ output (docker build)

on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
merge_group:

concurrency:
group: '${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}'
cancel-in-progress: true

jobs:
build:
name: End-to-end test, GZ output (docker build)
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
dockerfile: [ Dockerfile]

steps:
- name: Checkout the repository
uses: actions/checkout@v3
with:
submodules: "recursive"

- name: Build the docker image
run: |
set -v
docker build -f ${{matrix.dockerfile}} -t osm2rdf .
docker run --rm osm2rdf --help
- name: Build TTL for Malta and check its validity
run: |
set -v
mkdir osm-malta && cd $_
curl -L -o osm-malta.pbf https://download.geofabrik.de/europe/malta-latest.osm.pbf
ls -l osm-malta.pbf
docker run --rm -v $(pwd):/data osm2rdf /data/osm-malta.pbf -o /data/osm-malta.ttl --output-compression gz
ls -l osm-malta.pbf osm-malta.ttl.gz
docker run --rm -v $(pwd):/data stain/jena riot --validate /data/osm-malta.ttl.gz
- name: Build QLever index and count the number of geometries
run: |
set -v
cd osm-malta
docker run -u $(id -u):$(id -g) -v $(pwd):/data -w /data --entrypoint bash adfreiburg/qlever -c "zcat osm-malta.ttl.gz | IndexBuilderMain -F ttl -f - -i osm-malta"
docker run -d -p 7000:7000 -v $(pwd):/data -w /data --entrypoint bash --name qlever adfreiburg/qlever -c "ServerMain -i /data/osm-malta -p 7000"
sleep 5
docker logs qlever
RESULT_JSON=$(curl http://localhost:7000 --data-urlencode "query=PREFIX geo: <http://www.opengis.net/ont/geosparql#> SELECT (COUNT(?geometry) AS ?count) WHERE { ?osm_id geo:hasGeometry ?geometry }")
echo "${RESULT_JSON}"
NUM_GEOMS=$(echo "${RESULT_JSON}" | jq --exit-status --raw-output .results.bindings[0].count.value)
echo ${NUM_GEOMS} | numfmt --grouping
test ${NUM_GEOMS} -gt 100000

0 comments on commit 6c900c4

Please sign in to comment.