#! /bin/bash -e

CONTAINER_IMAGE="ghcr.io/leonardehrenfried/osm-lib:2024-11-15T08-23"

STABLE_OSM_FILE_NAME="extract.osm.pbf"
DB_FILE="{{osm_lib_working_directory}}db"

if [ ! -f ${STABLE_OSM_FILE_NAME} ]; then
  echo "Extract file not found. Downloading..."
  aria2c --seed-time=0 {{ osm_lib_extract_url }}
  OSM_FILE_NAME=$(ls *.osm.pbf)
  mv ${OSM_FILE_NAME} ${STABLE_OSM_FILE_NAME}
fi

if [ ! -f "$DB_FILE" ]; then
  echo "Database file ${DB_FILE} doesn't exist, starting import"
  podman run --rm --name osm-lib-importer -e JAVA_TOOL_OPTIONS="-Xmx30G -XX:MaxDirectMemorySize=30g -XX:+UseLargePages" -v {{osm_lib_working_directory}}:/data/ ${CONTAINER_IMAGE} /data/db --load "/data/${STABLE_OSM_FILE_NAME}" --log-driver=none
fi

podman run --rm -i --name osm-lib-server -p {{ osm_lib_port}}:9002 -v {{osm_lib_working_directory}}:/data/ ${CONTAINER_IMAGE} /data/db --log-driver=none
