island: Use the data_dir specified in the default server config

This commit is contained in:
Mike Salvatore 2021-06-03 19:28:45 -04:00
parent 00434b9a25
commit 5ecc02d553
4 changed files with 15 additions and 16 deletions

View File

@ -2,20 +2,20 @@ import json
import os import os
from pathlib import Path from pathlib import Path
from monkey_island.cc.server_utils.consts import ( from monkey_island.cc.server_utils.consts import DEFAULT_SERVER_CONFIG_PATH, SERVER_CONFIG_FILENAME
DEFAULT_DEVELOP_SERVER_CONFIG_PATH,
DEFAULT_SERVER_CONFIG_PATH,
)
from monkey_island.cc.setup.island_config_options import IslandConfigOptions from monkey_island.cc.setup.island_config_options import IslandConfigOptions
def create_default_server_config_file() -> None: def create_default_server_config_file(data_dir) -> None:
if not os.path.isfile(DEFAULT_SERVER_CONFIG_PATH): config_file_path = os.path.join(data_dir, SERVER_CONFIG_FILENAME)
write_default_server_config_to_file(DEFAULT_SERVER_CONFIG_PATH) if not os.path.isfile(config_file_path):
write_default_server_config_to_file(config_file_path)
return config_file_path
def write_default_server_config_to_file(path: str) -> None: def write_default_server_config_to_file(path: str) -> None:
default_config = Path(DEFAULT_DEVELOP_SERVER_CONFIG_PATH).read_text() default_config = Path(DEFAULT_SERVER_CONFIG_PATH).read_text()
Path(path).write_text(default_config) Path(path).write_text(default_config)

View File

@ -37,7 +37,7 @@ MONGO_EXECUTABLE_PATH = (
) )
DEFAULT_SERVER_CONFIG_PATH = os.path.expandvars( DEFAULT_SERVER_CONFIG_PATH = os.path.expandvars(
os.path.join(DEFAULT_DATA_DIR, SERVER_CONFIG_FILENAME) os.path.join(MONKEY_ISLAND_ABS_PATH, "cc", SERVER_CONFIG_FILENAME)
) )
DEFAULT_DEVELOP_SERVER_CONFIG_PATH = os.path.join( DEFAULT_DEVELOP_SERVER_CONFIG_PATH = os.path.join(

View File

@ -4,7 +4,7 @@ from typing import Tuple
from monkey_island.cc.arg_parser import IslandCmdArgs from monkey_island.cc.arg_parser import IslandCmdArgs
from monkey_island.cc.environment import server_config_handler from monkey_island.cc.environment import server_config_handler
from monkey_island.cc.environment.utils import create_secure_directory from monkey_island.cc.environment.utils import create_secure_directory
from monkey_island.cc.server_utils.consts import DEFAULT_DATA_DIR, DEFAULT_SERVER_CONFIG_PATH from monkey_island.cc.server_utils.consts import DEFAULT_SERVER_CONFIG_PATH
from monkey_island.cc.setup.island_config_options import IslandConfigOptions from monkey_island.cc.setup.island_config_options import IslandConfigOptions
@ -23,8 +23,7 @@ def _setup_config_by_cmd_arg(server_config_path) -> Tuple[IslandConfigOptions, s
def _setup_default_config() -> Tuple[IslandConfigOptions, str]: def _setup_default_config() -> Tuple[IslandConfigOptions, str]:
server_config_path = DEFAULT_SERVER_CONFIG_PATH config = server_config_handler.load_server_config_from_file(DEFAULT_SERVER_CONFIG_PATH)
create_secure_directory(DEFAULT_DATA_DIR, create_parent_dirs=False) create_secure_directory(config.data_dir, create_parent_dirs=False)
server_config_handler.create_default_server_config_file() server_config_path = server_config_handler.create_default_server_config_file(config.data_dir)
config = server_config_handler.load_server_config_from_file(server_config_path)
return config, server_config_path return config, server_config_path

View File

@ -5,8 +5,8 @@ import monkey_island.cc.server_utils.consts as consts
def test_default_server_config_file_path(): def test_default_server_config_file_path():
if platform.system() == "Windows": if platform.system() == "Windows":
server_file_path = f"{consts.DEFAULT_DATA_DIR}\\{consts.SERVER_CONFIG_FILENAME}" server_file_path = f"{consts.MONKEY_ISLAND_ABS_PATH}\\cc\\{consts.SERVER_CONFIG_FILENAME}"
else: else:
server_file_path = f"{consts.DEFAULT_DATA_DIR}/{consts.SERVER_CONFIG_FILENAME}" server_file_path = f"{consts.MONKEY_ISLAND_ABS_PATH}/cc/{consts.SERVER_CONFIG_FILENAME}"
assert consts.DEFAULT_SERVER_CONFIG_PATH == server_file_path assert consts.DEFAULT_SERVER_CONFIG_PATH == server_file_path