blob: 8dc7841d52aedafde031ff4cb7e52c4fb524a0cf [file] [log] [blame]
Alex0989ecf2022-03-29 13:43:21 -05001# Author: Alex Savatieiev (osavatieiev@mirantis.com; a.savex@gmail.com)
2# Copyright 2019-2022 Mirantis, Inc.
Alex Savatieievc9055712019-03-01 14:43:56 -06003import os
4
5from cfg_checker.common import logger_cli
6
Alex3ebc5632019-04-18 16:47:18 -05007
Alex Savatieievc9055712019-03-01 14:43:56 -06008def basic_model_validation_by_path(path):
9 logger_cli.debug("\t...validating '{}' as a model".format(path))
10 _checks = []
11 _is_folder = os.path.isdir(path)
12 logger_cli.debug("\t- folder? -> {}".format(_is_folder))
13 _checks.append(_is_folder)
14 _has_classes = os.path.isdir(os.path.join(path, "classes"))
15 logger_cli.debug("\t- has classes? -> {}".format(_has_classes))
16 _checks.append(_has_classes)
17 _has_cluster = os.path.isdir(os.path.join(path, "classes", "cluster"))
18 logger_cli.debug("\t- has classes/cluster? -> {}".format(_has_cluster))
19 _checks.append(_has_cluster)
20 _has_system = os.path.isdir(os.path.join(path, "classes", "system"))
21 logger_cli.debug("\t- has classes/system? -> {}".format(_has_system))
22 _checks.append(_has_system)
23 _has_nodes = os.path.isdir(os.path.join(path, "nodes"))
24 logger_cli.debug("\t- has nodes? -> {}".format(_has_nodes))
25 _checks.append(_has_nodes)
Alex3ebc5632019-04-18 16:47:18 -050026
Alex Savatieievc9055712019-03-01 14:43:56 -060027 logger_cli.debug("\t-> {}".format(
28 all(_checks)
29 ))
30
31 return all(_checks)