Merge branch 'refs/heads/cli-dev'

# Conflicts:
#	.idea/workspace.xml
#	code/iottb/logger.py
#	code/iottb/models/capture_metadata_model.py
#	code/iottb/models/device_metadata_model.py
#	code/iottb/subcommands/add_device.py
This commit is contained in:
Sebastian Lenzlinger
2024-05-08 03:07:16 +02:00
5 changed files with 339 additions and 48 deletions

View File

@@ -2,7 +2,6 @@ import pathlib
from iottb import definitions
from iottb.definitions import DEVICE_METADATA_FILE, ReturnCodes
from iottb.logger import logger
from iottb.models.device_metadata_model import DeviceMetadata
from iottb.utils.device_metadata_utils import *
@@ -17,13 +16,10 @@ def setup_init_device_root_parser(subparsers):
def handle_add(args):
logger.info(f"Add device handler called with args {args}")
if args.guided:
logger.debug("Guided setup")
metadata = guided_setup(args.root_dir)
else:
logger.debug("Setup through passed args: setup")
device_name = args.name
args.root_dir.mkdir(parents=True, exist_ok=True)
metadata = DeviceMetadata(device_name, args.root_dir)
@@ -33,7 +29,6 @@ def handle_add(args):
if response.lower() not in definitions.AFFIRMATIVE_USER_RESPONSE.add(""):
configure_metadata()
assert False, "TODO implement dynamic setup"
if metadata.save_to_json(file_path) == ReturnCodes.FILE_ALREADY_EXISTS:
print("Directory already contains a device metadata file. Aborting operation.")
return ReturnCodes.ABORTED
@@ -46,17 +41,12 @@ def configure_metadata():
def guided_setup(device_root) -> DeviceMetadata:
logger.info("Guided setup")
response = "N"
device_name = ""
while response.upper() == "N":
device_name = input("Please enter name of device: ")
response = input(f"Confirm device name: {device_name} [y/N] ")
if device_name == "" or device_name is None:
print("Name cannot be empty")
logger.warning("Name cannot be empty")
logger.debug(f"Response is {response}")
logger.debug(f"Device name is {device_name}")
return DeviceMetadata(device_name, device_root)