From 65d10d5c357af5c2649d29721452a0a5a9f35c15 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9CNaeel=E2=80=9D?= Date: Wed, 29 Jul 2026 14:09:56 +0400 Subject: [PATCH] =?UTF-8?q?v1.1.33:=20CMDB=20delete=20logging=20=E2=80=94?= =?UTF-8?q?=20log=20HTTP=20status=20code?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- site/api/http_client.py | 9 ++++----- site/app.py | 2 +- site/routes/api_test.py | 4 +++- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/site/api/http_client.py b/site/api/http_client.py index c7fb796..fac682d 100644 --- a/site/api/http_client.py +++ b/site/api/http_client.py @@ -120,10 +120,9 @@ class HttpClient: def raw_delete(self, url): """DELETE-запрос к произвольному URL (CMDB API). - Не добавляет Nubes-эндпоинт — используется для жёсткого удаления инстансов. - Возвращает True если 2xx, иначе False.""" + Возвращает кортеж (ok: bool, status_code: int).""" try: r = self._session.delete(url, timeout=10) - return r.ok - except Exception: - return False + return r.ok, r.status_code + except Exception as e: + return False, str(e) diff --git a/site/app.py b/site/app.py index ec64d66..a24853e 100644 --- a/site/app.py +++ b/site/app.py @@ -18,7 +18,7 @@ from routes.api import bp as api_bp from routes.api_test import bp as api_test_bp # Версия — меняется при КАЖДОМ изменении кода. Показывается в топбаре UI. -VERSION = "1.1.32" +VERSION = "1.1.33" app = Flask(__name__, template_folder="templates", static_folder="static") app.config["NUBES_API_ENDPOINT"] = os.getenv("NUBES_API_ENDPOINT", "https://lk-api-gateway-test.ngcloud.ru/api/v1/svc") diff --git a/site/routes/api_test.py b/site/routes/api_test.py index 72eaaf1..095c31b 100644 --- a/site/routes/api_test.py +++ b/site/routes/api_test.py @@ -217,7 +217,9 @@ def api_test(): if op_name == "delete": # Жёсткое удаление через CMDB (без авторизации) — для недосозданных инстансов cmdb_url = f"https://cmdb-api.deck.nubes.ru/instances/{instance_uid}" - if client.raw_delete(cmdb_url): + cmdb_ok, cmdb_code = client.raw_delete(cmdb_url) + _log(f"[CMDB] DELETE {instance_uid} → ok={cmdb_ok} code={cmdb_code}") + if cmdb_ok: return jsonify({"status": "OK", "opUid": "cmdb-"+instance_uid[:8], "instanceUid": instance_uid, "displayName": display_name}) if op_name == "redeploy":