From 37e6f0d8f33839c3b0c72af291375a975adde41d Mon Sep 17 00:00:00 2001 From: Admin MPCZ Date: Mon, 4 May 2026 16:29:20 +0200 Subject: [PATCH] chore(snapshot): strip() defensif sur credentials vCenter (copier-coller peut ajouter newline/CR) --- app/services/quickwin_snapshot_service.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/app/services/quickwin_snapshot_service.py b/app/services/quickwin_snapshot_service.py index 1adecc3..ede2b7c 100644 --- a/app/services/quickwin_snapshot_service.py +++ b/app/services/quickwin_snapshot_service.py @@ -149,8 +149,9 @@ def snapshot_server(hostname, vm_name, branch, db, snap_name=None): return {"ok": False, "vcenter": "", "detail": "pyvmomi non installe", "skipped": True} # Fallback historique : vcenter_user/vcenter_pass (legacy) ou vsphere_user/vsphere_pass (Settings UI) - vc_user = _get_secret(db, "vcenter_user") or _get_secret(db, "vsphere_user") - vc_pass = _get_secret(db, "vcenter_pass") or _get_secret(db, "vsphere_pass") + # .strip() défensif : un copier-coller peut introduire \n / \r / espaces + vc_user = (_get_secret(db, "vcenter_user") or _get_secret(db, "vsphere_user") or "").strip() + vc_pass = (_get_secret(db, "vcenter_pass") or _get_secret(db, "vsphere_pass") or "").strip() if not vc_user or not vc_pass: return {"ok": False, "vcenter": "", "detail": "Credentials vCenter manquants (renseigner vsphere_user/vsphere_pass dans Settings > vSphere)",