def imp_controls_from_json(json_filepath=CONTROLS_FILE): try: with open(json_filepath, 'r') as f: contrs = json.load(f) query = Control.select() cursor = db.execute(query) control_fnames = [x[0] for x in cursor.fetchall()] for uid in contrs: if contrs.get("filename") not in control_fnames: Control.create( uid=uid, filename=contrs.get(uid).get("filename"), title=contrs.get(uid).get("title"), requirements=contrs.get(uid).get("requirements"), description=contrs.get(uid).get("description")) except (ValueError, FileNotFoundError): print( "[{FAIL}ERR{END}] {CONTROLS_FILE} file error! Test the project (doc tests/README.md)" .format(FAIL=C_FAIL, END=C_END, CONTROLS_FILE=CONTROLS_FILE)) close_program() else: print("[{OK}OK{END}] Imported data from {CONTROLS_FILE}".format( OK=C_OKGREEN, END=C_END, CONTROLS_FILE=CONTROLS_FILE))
def add_control(filename, status, time_sec): contrs = Control.filter(filename=filename) if not contrs: contr = Control.create(filename=filename) print("[{WARN}WR{END}] Control info about {SCRIPT} not found!".format( WARN=C_WARNING, END=C_END, SCRIPT=filename)) else: contr = contrs[0] Scandata.create(control=contr, status=status, lead_time_sec=time_sec)