From a49d276c6e253cb2b6d1337f85f413975b3a0efd Mon Sep 17 00:00:00 2001 From: Zsolt Ero Date: Wed, 27 Dec 2023 02:21:02 +0100 Subject: [PATCH] work --- .../extract_mbtiles/extract_mbtiles.py | 17 +++++++++++----- .../extract_mbtiles/out/metadata.json | 20 +++++++++++++++++++ ssh_lib/rclone.py | 5 ++++- 3 files changed, 36 insertions(+), 6 deletions(-) create mode 100644 scripts/tile_gen/extract_mbtiles/out/metadata.json diff --git a/scripts/tile_gen/extract_mbtiles/extract_mbtiles.py b/scripts/tile_gen/extract_mbtiles/extract_mbtiles.py index 1f5eb6a..ac5359e 100755 --- a/scripts/tile_gen/extract_mbtiles/extract_mbtiles.py +++ b/scripts/tile_gen/extract_mbtiles/extract_mbtiles.py @@ -35,11 +35,7 @@ def cli(mbtiles_path: Path, dir_path: Path): write_tile_files(c, dir_path=dir_path) # planetiler has missing tiles by design, so disabling this - # if it's a full planet run, - # make sure there are exactly the right number of files generated - # if 'planet' in mbtiles_path.resolve().parent.name: - # assert count_files(dir_path / 'tiles') == calculate_tiles_sum(14) - # print(f'Tile number: {calculate_tiles_sum(14)} - OK') + # assert_all_tiles_present(mbtiles_path, dir_path) write_metadata(c, dir_path=dir_path) print('extract_mbtiles.py DONE') @@ -113,6 +109,17 @@ def write_tile_files(c, *, dir_path): raise +def assert_all_tiles_present(mbtiles_path, dir_path): + """ + If it's a full planet run, + ake sure there are exactly the right number of files generated. + """ + + if 'planet' in mbtiles_path.resolve().parent.name: + assert count_files(dir_path / 'tiles') == calculate_tiles_sum(14) + print(f'Tile number: {calculate_tiles_sum(14)} - OK') + + def count_files(folder): total = 0 for root, dirs, files in os.walk(folder): diff --git a/scripts/tile_gen/extract_mbtiles/out/metadata.json b/scripts/tile_gen/extract_mbtiles/out/metadata.json new file mode 100644 index 0000000..9125af0 --- /dev/null +++ b/scripts/tile_gen/extract_mbtiles/out/metadata.json @@ -0,0 +1,20 @@ +{ + "format": "pbf", + "center": "7.42892,43.73752,14", + "bounds": "7.40921,43.72335,7.44864,43.75169", + "json": "{\"vector_layers\":[{\"id\":\"aeroway\",\"fields\":{\"ref\":\"String\",\"class\":\"String\"},\"minzoom\":12,\"maxzoom\":14},{\"id\":\"boundary\",\"fields\":{\"disputed\":\"Number\",\"admin_level\":\"Number\",\"maritime\":\"Number\"},\"minzoom\":0,\"maxzoom\":14},{\"id\":\"building\",\"fields\":{\"colour\":\"String\",\"render_height\":\"Number\",\"render_min_height\":\"Number\"},\"minzoom\":13,\"maxzoom\":14},{\"id\":\"housenumber\",\"fields\":{\"housenumber\":\"String\"},\"minzoom\":14,\"maxzoom\":14},{\"id\":\"landcover\",\"fields\":{\"subclass\":\"String\",\"class\":\"String\",\"_numpoints\":\"Number\"},\"minzoom\":13,\"maxzoom\":14},{\"id\":\"landuse\",\"fields\":{\"class\":\"String\"},\"minzoom\":6,\"maxzoom\":14},{\"id\":\"mountain_peak\",\"fields\":{\"rank\":\"Number\",\"class\":\"String\"},\"minzoom\":13,\"maxzoom\":14},{\"id\":\"park\",\"fields\":{\"name_int\":\"String\",\"name:ar\":\"String\",\"name:de\":\"String\",\"name_de\":\"String\",\"name:it\":\"String\",\"name\":\"String\",\"name:fr\":\"String\",\"name:en\":\"String\",\"name:eo\":\"String\",\"name:eu\":\"String\",\"class\":\"String\",\"name:zh\":\"String\",\"name:es\":\"String\",\"name_en\":\"String\",\"name:latin\":\"String\"},\"minzoom\":13,\"maxzoom\":14},{\"id\":\"place\",\"fields\":{\"name:fy\":\"String\",\"name_int\":\"String\",\"name:oc\":\"String\",\"name:bs\":\"String\",\"capital\":\"Number\",\"name:sk\":\"String\",\"name:ka\":\"String\",\"name:sl\":\"String\",\"name:ga\":\"String\",\"name:sr\":\"String\",\"name:kk\":\"String\",\"name:gd\":\"String\",\"name:sq\":\"String\",\"name:ca\":\"String\",\"name:kn\":\"String\",\"name:sv\":\"String\",\"name:ko\":\"String\",\"name_de\":\"String\",\"rank\":\"Number\",\"name:co\":\"String\",\"name:ku\":\"String\",\"name:cs\":\"String\",\"name:ta\":\"String\",\"name:latin\":\"String\",\"name:ar\":\"String\",\"name:ja\":\"String\",\"name:rm\":\"String\",\"name:az\":\"String\",\"name:ro\":\"String\",\"name:nl\":\"String\",\"name:fi\":\"String\",\"name:be\":\"String\",\"name:ru\":\"String\",\"name:no\":\"String\",\"name:bg\":\"String\",\"name\":\"String\",\"name:fr\":\"String\",\"name:br\":\"String\",\"name:hy\":\"String\",\"name:uk\":\"String\",\"name:id\":\"String\",\"name:ml\":\"String\",\"name:mk\":\"String\",\"name:mt\":\"String\",\"name:el\":\"String\",\"name:it\":\"String\",\"name:am\":\"String\",\"name:en\":\"String\",\"name:is\":\"String\",\"name:eo\":\"String\",\"name:et\":\"String\",\"name:eu\":\"String\",\"class\":\"String\",\"iso_a2\":\"String\",\"name:zh\":\"String\",\"name:es\":\"String\",\"name:th\":\"String\",\"name:te\":\"String\",\"name:la\":\"String\",\"name:lb\":\"String\",\"name:cy\":\"String\",\"name:pl\":\"String\",\"name:he\":\"String\",\"name:da\":\"String\",\"name:tr\":\"String\",\"name:pt\":\"String\",\"name:hi\":\"String\",\"name:de\":\"String\",\"name:lt\":\"String\",\"name:lv\":\"String\",\"name:hr\":\"String\",\"name:hu\":\"String\",\"name_en\":\"String\"},\"minzoom\":2,\"maxzoom\":14},{\"id\":\"poi\",\"fields\":{\"name:oc\":\"String\",\"name_int\":\"String\",\"name:sk\":\"String\",\"name:ka\":\"String\",\"name:sl\":\"String\",\"name:ga\":\"String\",\"name:sr\":\"String\",\"name:kk\":\"String\",\"name:sq\":\"String\",\"name:ca\":\"String\",\"name:sv\":\"String\",\"name:ko\":\"String\",\"name_de\":\"String\",\"name:co\":\"String\",\"name:ku\":\"String\",\"name:cs\":\"String\",\"name:latin\":\"String\",\"name:ar\":\"String\",\"name:ja\":\"String\",\"level\":\"Number\",\"name:rm\":\"String\",\"name:az\":\"String\",\"name:ro\":\"String\",\"name:nl\":\"String\",\"name:be\":\"String\",\"name:ru\":\"String\",\"name:fi\":\"String\",\"name\":\"String\",\"indoor\":\"Number\",\"name:fr\":\"String\",\"name:br\":\"String\",\"name:hy\":\"String\",\"name:uk\":\"String\",\"name:id\":\"String\",\"layer\":\"Number\",\"name:mk\":\"String\",\"name:el\":\"String\",\"name:it\":\"String\",\"name:en\":\"String\",\"name:eo\":\"String\",\"name:et\":\"String\",\"name:eu\":\"String\",\"class\":\"String\",\"name:zh\":\"String\",\"name:es\":\"String\",\"name:th\":\"String\",\"name:lb\":\"String\",\"name:cy\":\"String\",\"name:pl\":\"String\",\"name:da\":\"String\",\"name:he\":\"String\",\"name:tr\":\"String\",\"name:pt\":\"String\",\"name:de\":\"String\",\"name:lt\":\"String\",\"subclass\":\"String\",\"name:lv\":\"String\",\"name:hr\":\"String\",\"name:hu\":\"String\",\"name_en\":\"String\"},\"minzoom\":12,\"maxzoom\":14},{\"id\":\"transportation\",\"fields\":{\"brunnel\":\"String\",\"access\":\"String\",\"surface\":\"String\",\"bicycle\":\"String\",\"level\":\"Number\",\"ramp\":\"Number\",\"oneway\":\"Number\",\"layer\":\"Number\",\"horse\":\"String\",\"service\":\"String\",\"subclass\":\"String\",\"indoor\":\"Number\",\"class\":\"String\",\"foot\":\"String\"},\"minzoom\":7,\"maxzoom\":14},{\"id\":\"transportation_name\",\"fields\":{\"name_int\":\"String\",\"level\":\"Number\",\"route_2\":\"String\",\"route_1\":\"String\",\"layer\":\"Number\",\"network\":\"String\",\"ref\":\"String\",\"name_de\":\"String\",\"ref_length\":\"Number\",\"subclass\":\"String\",\"name\":\"String\",\"indoor\":\"Number\",\"class\":\"String\",\"name_en\":\"String\",\"name:latin\":\"String\"},\"minzoom\":12,\"maxzoom\":14},{\"id\":\"water\",\"fields\":{\"intermittent\":\"Number\",\"id\":\"Number\",\"class\":\"String\"},\"minzoom\":0,\"maxzoom\":14},{\"id\":\"water_name\",\"fields\":{\"name_int\":\"String\",\"name_de\":\"String\",\"name\":\"String\",\"intermittent\":\"Number\",\"name:en\":\"String\",\"class\":\"String\",\"name_en\":\"String\",\"name:latin\":\"String\"},\"minzoom\":14,\"maxzoom\":14},{\"id\":\"waterway\",\"fields\":{\"brunnel\":\"String\",\"intermittent\":\"Number\",\"class\":\"String\"},\"minzoom\":4,\"maxzoom\":14}]}", + "name": "OpenFreeMap", + "description": "https://openfreemap.org/", + "attribution": "OpenFreeMap © OpenMapTiles © OpenStreetMap contributors", + "version": "3.14.0", + "type": "baselayer", + "minzoom": "0", + "maxzoom": "14", + "compression": "gzip", + "planetiler:version": "0.7.0", + "planetiler:githash": "79ba9d925f4a3738a07cc6a6dc4a6ede6d0f5c4b", + "planetiler:buildtime": "2023-10-01T17:00:31.116Z", + "planetiler:osm:osmosisreplicationtime": "2023-12-07T21:21:32Z", + "planetiler:osm:osmosisreplicationseq": "3900", + "planetiler:osm:osmosisreplicationurl": "http://download.geofabrik.de/europe/monaco-updates" +} \ No newline at end of file diff --git a/ssh_lib/rclone.py b/ssh_lib/rclone.py index 61a6a1b..ef839f1 100644 --- a/ssh_lib/rclone.py +++ b/ssh_lib/rclone.py @@ -1,6 +1,9 @@ -from ssh_lib.utils import apt_get_update +from ssh_lib.utils import apt_get_update, exists def install_rclone(c): + if exists(c, '/usr/bin/rclone'): + return + apt_get_update(c) c.sudo('curl https://rclone.org/install.sh | sudo bash')