|
16 | 16 | from Kathara.setting.Setting import Setting |
17 | 17 | from tqdm import tqdm |
18 | 18 |
|
19 | | -from lab_checker.TestCollector import TestCollector |
20 | | -from lab_checker.checks.BridgeCheck import BridgeCheck |
21 | | -from lab_checker.checks.CollisionDomainCheck import CollisionDomainCheck |
22 | | -from lab_checker.checks.CustomCommandCheck import CustomCommandCheck |
23 | | -from lab_checker.checks.DaemonCheck import DaemonCheck |
24 | | -from lab_checker.checks.DeviceExistenceCheck import DeviceExistenceCheck |
25 | | -from lab_checker.checks.IPv6EnabledCheck import IPv6EnabledCheck |
26 | | -from lab_checker.checks.InterfaceIPCheck import InterfaceIPCheck |
27 | | -from lab_checker.checks.KernelRouteCheck import KernelRouteCheck |
28 | | -from lab_checker.checks.ReachabilityCheck import ReachabilityCheck |
29 | | -from lab_checker.checks.StartupExistenceCheck import StartupExistenceCheck |
30 | | -from lab_checker.checks.SysctlCheck import SysctlCheck |
31 | | -from lab_checker.checks.applications.dns.DNSAuthorityCheck import DNSAuthorityCheck |
32 | | -from lab_checker.checks.applications.dns.DNSRecordCheck import DNSRecordCheck |
33 | | -from lab_checker.checks.applications.dns.LocalNSCheck import LocalNSCheck |
34 | | -from lab_checker.checks.protocols.AnnouncedNetworkCheck import AnnouncedNetworkCheck |
35 | | -from lab_checker.checks.protocols.ProtocolRedistributionCheck import ProtocolRedistributionCheck |
36 | | -from lab_checker.checks.protocols.bgp.BGPPeeringCheck import BGPPeeringCheck |
37 | | -from lab_checker.checks.protocols.evpn.AnnouncedVNICheck import AnnouncedVNICheck |
38 | | -from lab_checker.checks.protocols.evpn.EVPNSessionCheck import EVPNSessionCheck |
39 | | -from lab_checker.checks.protocols.evpn.VTEPCheck import VTEPCheck |
40 | | -from lab_checker.excel_utils import write_final_results_to_excel, write_result_to_excel |
41 | | -from lab_checker.utils import reverse_dictionary |
42 | | - |
43 | | -VERSION = "0.1.3" |
| 19 | +from kathara_lab_checker.TestCollector import TestCollector |
| 20 | +from kathara_lab_checker.checks.BridgeCheck import BridgeCheck |
| 21 | +from kathara_lab_checker.checks.CheckResult import CheckResult |
| 22 | +from kathara_lab_checker.checks.CollisionDomainCheck import CollisionDomainCheck |
| 23 | +from kathara_lab_checker.checks.CustomCommandCheck import CustomCommandCheck |
| 24 | +from kathara_lab_checker.checks.DaemonCheck import DaemonCheck |
| 25 | +from kathara_lab_checker.checks.DeviceExistenceCheck import DeviceExistenceCheck |
| 26 | +from kathara_lab_checker.checks.IPv6EnabledCheck import IPv6EnabledCheck |
| 27 | +from kathara_lab_checker.checks.InterfaceIPCheck import InterfaceIPCheck |
| 28 | +from kathara_lab_checker.checks.KernelRouteCheck import KernelRouteCheck |
| 29 | +from kathara_lab_checker.checks.ReachabilityCheck import ReachabilityCheck |
| 30 | +from kathara_lab_checker.checks.StartupExistenceCheck import StartupExistenceCheck |
| 31 | +from kathara_lab_checker.checks.SysctlCheck import SysctlCheck |
| 32 | +from kathara_lab_checker.checks.applications.dns.DNSAuthorityCheck import DNSAuthorityCheck |
| 33 | +from kathara_lab_checker.checks.applications.dns.DNSRecordCheck import DNSRecordCheck |
| 34 | +from kathara_lab_checker.checks.applications.dns.LocalNSCheck import LocalNSCheck |
| 35 | +from kathara_lab_checker.checks.protocols.AnnouncedNetworkCheck import AnnouncedNetworkCheck |
| 36 | +from kathara_lab_checker.checks.protocols.ProtocolRedistributionCheck import ProtocolRedistributionCheck |
| 37 | +from kathara_lab_checker.checks.protocols.bgp.BGPPeeringCheck import BGPPeeringCheck |
| 38 | +from kathara_lab_checker.checks.protocols.evpn.AnnouncedVNICheck import AnnouncedVNICheck |
| 39 | +from kathara_lab_checker.checks.protocols.evpn.EVPNSessionCheck import EVPNSessionCheck |
| 40 | +from kathara_lab_checker.checks.protocols.evpn.VTEPCheck import VTEPCheck |
| 41 | +from kathara_lab_checker.excel_utils import write_final_results_to_excel, write_result_to_excel |
| 42 | +from kathara_lab_checker.utils import reverse_dictionary |
| 43 | + |
| 44 | +VERSION = "0.1.4" |
44 | 45 | CURRENT_LAB: Optional[Lab] = None |
45 | 46 |
|
46 | 47 |
|
@@ -87,10 +88,14 @@ def run_on_single_network_scenario( |
87 | 88 | CURRENT_LAB = lab |
88 | 89 | except IOError as e: |
89 | 90 | logger.warning(f"{str(e)} Skipping directory") |
90 | | - return |
| 91 | + check_results = [CheckResult("The lab.conf cannot be parsed", False, str(e))] |
| 92 | + test_collector.add_check_results(lab_name, check_results) |
| 93 | + return test_collector |
91 | 94 | except MachineCollisionDomainError as e: |
92 | 95 | logger.warning(f"{str(e)} Skipping directory") |
93 | | - return |
| 96 | + check_results = [CheckResult("The lab.conf cannot be parsed", False, str(e))] |
| 97 | + test_collector.add_check_results(lab_name, check_results) |
| 98 | + return test_collector |
94 | 99 |
|
95 | 100 | if not live: |
96 | 101 | logger.info(f"Undeploying network scenario in case it was running...") |
@@ -279,7 +284,9 @@ def run_on_multiple_network_scenarios( |
279 | 284 |
|
280 | 285 | def parse_arguments(): |
281 | 286 | parser = argparse.ArgumentParser( |
282 | | - description="A tool for automatically check Kathará network scenarios", add_help=True |
| 287 | + description="A tool for automatically check Kathará network scenarios", |
| 288 | + prog="kathara_lab_checker", |
| 289 | + add_help=True |
283 | 290 | ) |
284 | 291 |
|
285 | 292 | parser.add_argument( |
@@ -362,7 +369,7 @@ def main(): |
362 | 369 | if not os.path.exists(conf["structure"]): |
363 | 370 | logger.error(f"The structure file {conf['structure']} does not exist") |
364 | 371 | exit(1) |
365 | | - |
| 372 | + |
366 | 373 | template_lab = LabParser().parse( |
367 | 374 | os.path.dirname(conf["structure"]), |
368 | 375 | conf_name=os.path.basename(conf["structure"]), |
|
0 commit comments