mirror of
https://github.com/hyperknot/openfreemap.git
synced 2026-05-21 14:02:15 +00:00
tile_gen task
This commit is contained in:
@@ -3,7 +3,7 @@
|
|||||||
import click
|
import click
|
||||||
from fabric import Config, Connection
|
from fabric import Config, Connection
|
||||||
|
|
||||||
from ssh_lib import SCRIPTS_DIR, dotenv_val
|
from ssh_lib import SCRIPTS_DIR, VENV_BIN, dotenv_val
|
||||||
from ssh_lib.planetiler import planetiler
|
from ssh_lib.planetiler import planetiler
|
||||||
from ssh_lib.tasks import (
|
from ssh_lib.tasks import (
|
||||||
prepare_http_host,
|
prepare_http_host,
|
||||||
@@ -118,7 +118,7 @@ def debug(hostname, user, port):
|
|||||||
|
|
||||||
# upload_http_host_config(c)
|
# upload_http_host_config(c)
|
||||||
# upload_http_host_files(c)
|
# upload_http_host_files(c)
|
||||||
# sudo_cmd(c, '/data/ofm/venv/bin/python -u /data/ofm/http_host/bin/host_manager.py nginx-sync')
|
# sudo_cmd(c, f'{VENV_BIN}/python -u /data/ofm/http_host/bin/host_manager.py nginx-sync')
|
||||||
|
|
||||||
planetiler(c)
|
planetiler(c)
|
||||||
|
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ REMOTE_CONFIG = '/data/ofm/config'
|
|||||||
TILE_GEN_SRC = '/data/ofm/tile_gen/src'
|
TILE_GEN_SRC = '/data/ofm/tile_gen/src'
|
||||||
TILE_GEN_BIN = '/data/ofm/tile_gen/bin'
|
TILE_GEN_BIN = '/data/ofm/tile_gen/bin'
|
||||||
HTTP_HOST_BIN = '/data/ofm/http_host/bin'
|
HTTP_HOST_BIN = '/data/ofm/http_host/bin'
|
||||||
|
VENV_BIN = '/data/ofm/venv/bin'
|
||||||
|
|
||||||
DOTENV_VALUES = dotenv_values(f'{CONFIG_DIR}/.env')
|
DOTENV_VALUES = dotenv_values(f'{CONFIG_DIR}/.env')
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
from ssh_lib import TILE_GEN_BIN, TILE_GEN_SRC
|
from ssh_lib import TILE_GEN_BIN, TILE_GEN_SRC
|
||||||
from ssh_lib.utils import apt_get_install, apt_get_update, sudo_cmd
|
from ssh_lib.utils import apt_get_install, apt_get_update, exists, sudo_cmd
|
||||||
|
|
||||||
|
|
||||||
PLANETILER_COMMIT = 'cf6c55'
|
PLANETILER_COMMIT = 'cf6c55'
|
||||||
@@ -7,6 +7,10 @@ PLANETILER_PATH = f'{TILE_GEN_BIN}/planetiler.jar'
|
|||||||
|
|
||||||
|
|
||||||
def planetiler(c):
|
def planetiler(c):
|
||||||
|
if exists(c, TILE_GEN_BIN):
|
||||||
|
print('planetiler exists, skipping')
|
||||||
|
return
|
||||||
|
|
||||||
apt_get_update(c)
|
apt_get_update(c)
|
||||||
apt_get_install(c, 'openjdk-21-jre-headless')
|
apt_get_install(c, 'openjdk-21-jre-headless')
|
||||||
|
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ from ssh_lib import (
|
|||||||
REMOTE_CONFIG,
|
REMOTE_CONFIG,
|
||||||
SCRIPTS_DIR,
|
SCRIPTS_DIR,
|
||||||
TILE_GEN_BIN,
|
TILE_GEN_BIN,
|
||||||
|
VENV_BIN,
|
||||||
dotenv_val,
|
dotenv_val,
|
||||||
)
|
)
|
||||||
from ssh_lib.benchmark import c1000k, wrk
|
from ssh_lib.benchmark import c1000k, wrk
|
||||||
@@ -51,33 +52,10 @@ def prepare_venv(c):
|
|||||||
def prepare_tile_gen(c):
|
def prepare_tile_gen(c):
|
||||||
planetiler(c)
|
planetiler(c)
|
||||||
|
|
||||||
for file in [
|
put_dir(c, SCRIPTS_DIR / 'tile_gen', TILE_GEN_BIN, file_permissions='755')
|
||||||
'extract_btrfs.sh',
|
|
||||||
'planetiler_monaco.sh',
|
|
||||||
'planetiler_planet.sh',
|
|
||||||
'cloudflare_index.sh',
|
|
||||||
'cloudflare_upload.sh',
|
|
||||||
]:
|
|
||||||
put(
|
|
||||||
c,
|
|
||||||
SCRIPTS_DIR / 'tile_gen' / file,
|
|
||||||
TILE_GEN_BIN,
|
|
||||||
permissions='755',
|
|
||||||
)
|
|
||||||
|
|
||||||
put(
|
for dirname in ['tile_gen_lib', 'extract_mbtiles', 'shrink_btrfs']:
|
||||||
c,
|
put_dir(c, SCRIPTS_DIR / 'tile_gen' / dirname, f'{TILE_GEN_BIN}/{dirname}')
|
||||||
SCRIPTS_DIR / 'tile_gen' / 'extract_mbtiles' / 'extract_mbtiles.py',
|
|
||||||
f'{TILE_GEN_BIN}/extract_mbtiles/extract_mbtiles.py',
|
|
||||||
create_parent_dir=True,
|
|
||||||
)
|
|
||||||
|
|
||||||
put(
|
|
||||||
c,
|
|
||||||
SCRIPTS_DIR / 'tile_gen' / 'shrink_btrfs' / 'shrink_btrfs.py',
|
|
||||||
f'{TILE_GEN_BIN}/shrink_btrfs/shrink_btrfs.py',
|
|
||||||
create_parent_dir=True,
|
|
||||||
)
|
|
||||||
|
|
||||||
if (CONFIG_DIR / 'rclone.conf').exists():
|
if (CONFIG_DIR / 'rclone.conf').exists():
|
||||||
put(
|
put(
|
||||||
@@ -88,6 +66,8 @@ def prepare_tile_gen(c):
|
|||||||
user='ofm',
|
user='ofm',
|
||||||
)
|
)
|
||||||
|
|
||||||
|
c.sudo(f'{VENV_BIN}/pip install -e /data/ofm/http_host/bin')
|
||||||
|
|
||||||
c.sudo('chown ofm:ofm /data/ofm/tile_gen')
|
c.sudo('chown ofm:ofm /data/ofm/tile_gen')
|
||||||
c.sudo('chown ofm:ofm -R /data/ofm/tile_gen/bin')
|
c.sudo('chown ofm:ofm -R /data/ofm/tile_gen/bin')
|
||||||
|
|
||||||
@@ -152,11 +132,11 @@ def prepare_http_host(c):
|
|||||||
upload_http_host_files(c)
|
upload_http_host_files(c)
|
||||||
upload_certificates(c)
|
upload_certificates(c)
|
||||||
|
|
||||||
c.sudo('/data/ofm/venv/bin/pip install -e /data/ofm/http_host/bin')
|
c.sudo(f'{VENV_BIN}/pip install -e /data/ofm/http_host/bin')
|
||||||
|
|
||||||
|
|
||||||
def run_http_host_sync(c):
|
def run_http_host_sync(c):
|
||||||
sudo_cmd(c, '/data/ofm/venv/bin/python -u /data/ofm/http_host/bin/host_manager.py sync')
|
sudo_cmd(c, f'{VENV_BIN}/python -u /data/ofm/http_host/bin/host_manager.py sync')
|
||||||
|
|
||||||
|
|
||||||
def upload_http_host_files(c):
|
def upload_http_host_files(c):
|
||||||
|
|||||||
Reference in New Issue
Block a user