From d367102b5743d8ae60cb7aebe9245a70f559f2e5 Mon Sep 17 00:00:00 2001
From: Philipp Schmidt <philipp.schmidt@xfel.eu>
Date: Tue, 6 Aug 2024 14:49:05 +0200
Subject: [PATCH] manager: Return early from pipeline instantation if any
 device failed to instantiate

---
 src/calng/CalibrationManager.py | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/calng/CalibrationManager.py b/src/calng/CalibrationManager.py
index 9bedaaeb..82eb74cd 100644
--- a/src/calng/CalibrationManager.py
+++ b/src/calng/CalibrationManager.py
@@ -1403,7 +1403,9 @@ class CalibrationManager(DeviceClientBase, Device):
             ))
 
         # Perform instantation.
-        await gather(*awaitables)
+        if not all(await gather(*awaitables)):
+            self._set_status('One or more devices failed to instantiate')
+            return
 
         # Force managed DAQ settings.
         await self._apply_managed_values(daq=True)
-- 
GitLab