]> git.giorgioravera.it Git - network-manager.git/commitdiff
Improved json for backup and moved to post
authorGiorgio Ravera <giorgio.ravera@gmail.com>
Tue, 17 Mar 2026 20:00:02 +0000 (21:00 +0100)
committerGiorgio Ravera <giorgio.ravera@gmail.com>
Tue, 17 Mar 2026 20:00:02 +0000 (21:00 +0100)
backend/backup.py
backend/routes/backup.py
backend/security.py

index c7bab935ae28c5dffccdbd2188cfa3c5e444ff81..8cfcfeca481636c16b4d855be577a10aaaa26c31 100644 (file)
@@ -236,4 +236,3 @@ def restore(cleanup: bool = True) -> Dict[str, Any]:
         # GRGR -> reset db in caso di errori
 
     return result
-
index 88470899c367144a10ef1f69e0198e646583a17b..8c4acc8ccf29d57e91fc60ed1dff9668497ccca1 100644 (file)
@@ -23,7 +23,7 @@ router = APIRouter()
 # ---------------------------------------------------------
 # API ENDPOINTS
 # ---------------------------------------------------------
-@router.get(
+@router.post(
     "/api/backup",
     status_code=status.HTTP_200_OK,
     responses={
@@ -40,26 +40,15 @@ async def api_backup(request: Request):
         # Backup DB
         result = backup()
         errors = result.get("errors") or []
-
         took_ms = (time.monotonic_ns() - start_ns) / 1_000_000
 
-        if errors:
-            logger.warning("Backup executed with %d error(s)", len(errors))
-            return {
-                "code": "BACKUP_ERROR",
-                "status": "failure",
-                "message": "Some operations failed",
-                "took_ms": took_ms,
-                "results": result,
-            }
-
         return {
-                "code": "BACKUP_OK",
-                "status": "success",
-                "message": "BACKUP executed successfully",
-                "took_ms": took_ms,
-                "results": result,
-            }
+            "code": "BACKUP_OK" if not errors else "BACKUP_ERROR",
+            "status": "success" if not errors else "failure",
+            "message": "BACKUP executed successfully" if not errors else "Some operations failed",
+            "took_ms": took_ms,
+            "results": result,
+        }
 
     except HTTPException:
         raise
@@ -80,7 +69,7 @@ async def api_backup(request: Request):
 # ---------------------------------------------------------
 # API: Restore from backup
 # ---------------------------------------------------------
-@router.get(
+@router.post(
     "/api/restore",
     status_code=status.HTTP_200_OK,
     responses={
@@ -92,28 +81,18 @@ async def api_restore(request: Request):
     start_ns = time.monotonic_ns()
 
     try:
-        # Restore hosts DB
+        # Restore DB
         result = restore()
         errors = (result.get("errors") or [])
-
         took_ms = (time.monotonic_ns() - start_ns) / 1_000_000
 
-        if errors:
-            return {
-                "code": "RESTORE_ERROR",
-                "status": "failure",
-                "message": "Some operation failed",
-                "took_ms": took_ms,
-                "results": result,
-            }
-
         return {
-                "code": "RESTORE_OK",
-                "status": "success",
-                "message": "RESTORE executed successfully",
-                "took_ms": took_ms,
-                "results": result,
-            }
+            "code": "RESTORE_OK" if not errors else "RESTORE_ERROR",
+            "status": "success" if not errors else "failure",
+            "message": "RESTORE executed successfully" if not errors else "Some operations failed",
+            "took_ms": took_ms,
+            "results": result,
+        }
 
     except HTTPException:
         raise
@@ -130,4 +109,3 @@ async def api_restore(request: Request):
                 "took_ms": took_ms,
             },
         )
-
index 99f8db63d5f0e985bdba81356dda1f853b36eb48..cd6f5705e3d9fdcb9e12555699ebae49662daede 100644 (file)
@@ -36,7 +36,7 @@ def verify_login(username, password):
         logger.error("Login Failed - password wrong for user %s", username)
         return False
 
-    logger.info("Login successful - user %s", username)
+    logger.debug("Login successful - user %s", username)
     return True
 
 # ----------------------------
@@ -47,11 +47,11 @@ def apply_session(response, username: str | None = None, token: str | None = Non
     # First Login
     if username is not None and token is None:
         token = signer.sign(username).decode()
-        logger.info("Session created - %s", username)
+        logger.debug("Session created - %s", username)
 
     if username is None:
         username = signer.unsign(token, max_age=86400).decode()
-        logger.info("Session updated - %s", username)
+        logger.debug("Session updated - %s", username)
 
     if username is None or token is None:
         logger.error("Session Error - missing username or token")
@@ -91,4 +91,4 @@ def close_session(response):
         path="/"
     )
 
-    logger.info("Session closed")
+    logger.debug("Session closed")