From 2fbfe15b852149f1636e876d7d395054c91c7018 Mon Sep 17 00:00:00 2001 From: Zsolt Ero Date: Tue, 5 Dec 2023 00:19:50 +0100 Subject: [PATCH] work --- init-server.py | 42 +++++++++++++++++++++++++++--------------- lib/planetiler.py | 2 ++ setup.py | 6 +++++- 3 files changed, 34 insertions(+), 16 deletions(-) diff --git a/init-server.py b/init-server.py index c990c5f..e1f4aed 100755 --- a/init-server.py +++ b/init-server.py @@ -1,32 +1,44 @@ #!/usr/bin/env python3 +import sys -from fabric import Connection +from dotenv import dotenv_values +from fabric import Config, Connection +from lib.kernel import set_cpu_governor, setup_kernel_settings from lib.nginx import certbot, nginx from lib.pkg_base import pkg_base, pkg_clean, pkg_upgrade from lib.planetiler import install_planetiler -from lib.system1 import set_cpu_governor, setup_kernel_settings, setup_time -from lib.utils import add_user +from lib.utils import reboot, setup_time def prepare_server(c): - add_user(c, 'ofm') + pkg_upgrade(c) + pkg_clean(c) + pkg_base(c) - # pkg_upgrade(c) - # pkg_clean(c) - # pkg_base(c) + setup_time(c) + setup_kernel_settings(c) + set_cpu_governor(c) - # setup_time(c) - # setup_kernel_settings(c) - # set_cpu_governor(c) - - # nginx(c) - # certbot(c) + nginx(c) + certbot(c) install_planetiler(c) -c = Connection(host='ofm-o-ca-1', port=22, user='ubuntu') +HOSTNAME = sys.argv[1] +OFM_USER_PASSWD = dotenv_values('.env')['OFM_USER_PASSWD'] +assert OFM_USER_PASSWD + +if input(f'run {sys.argv[0]} on {HOSTNAME}? [y/N]: ') != 'y': + sys.exit() + + +c = Connection( + host=HOSTNAME, + user='ofm', + config=Config(overrides={'sudo': {'password': OFM_USER_PASSWD}}), +) prepare_server(c) -# reboot(c) +reboot(c) diff --git a/lib/planetiler.py b/lib/planetiler.py index 0737bc1..f1971e8 100644 --- a/lib/planetiler.py +++ b/lib/planetiler.py @@ -21,3 +21,5 @@ def install_planetiler(c): c.sudo(f'java -jar {PLANETILER_PATH} --help') put(c, templates / 'planetiler' / 'run_planet.sh', PLANETILER_DIR, permissions='755') + + c.sudo('chown -R ofm:ofm /data/planetiler') diff --git a/setup.py b/setup.py index cfa12ab..88fc4cb 100644 --- a/setup.py +++ b/setup.py @@ -1,7 +1,11 @@ from setuptools import setup -requirements = ['fabric', 'ruff'] +requirements = [ + 'fabric', + 'ruff', + 'python-dotenv', +] setup( python_requires='>=3.10',