""" Сохранение результатов тестов в БД. """ import json from db.pool import get_conn, put_conn def save_run(client_id, stand, user_email, svc_id, svc_name, op_name, svc_op_id, op_uid, instance_uid, display_name, status, duration_sec, error_log, params, stages, app_version): """Сохранить один запуск в таблицу runs.""" conn = get_conn() if not conn: return try: cur = conn.cursor() cur.execute(""" INSERT INTO runs (client_id, stand, user_email, svc_id, svc_name, op_name, svc_op_id, op_uid, instance_uid, display_name, status, duration_sec, error_log, params, stages, app_version) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s) """, ( client_id, stand, user_email, svc_id, svc_name, op_name, svc_op_id, op_uid, instance_uid, display_name, status, duration_sec, error_log, json.dumps(params) if params else None, json.dumps(stages) if stages else None, app_version, )) conn.commit() cur.close() except Exception as e: print(f"[DB] save_run error: {e}", flush=True) conn.rollback() finally: put_conn(conn)