From 797560beb532b2586f63fdddb782ca486323f8bf Mon Sep 17 00:00:00 2001 From: Thomas Gelf Date: Mon, 30 Nov 2020 07:21:43 +0100 Subject: [PATCH] KickstartHelper: friendlier error message... ...when unable to delete fixes #2206 --- doc/82-Changelog.md | 3 +++ library/Director/KickstartHelper.php | 18 ++++++++++++++++-- 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/doc/82-Changelog.md b/doc/82-Changelog.md index 2de5ce41..bc57c1ad 100644 --- a/doc/82-Changelog.md +++ b/doc/82-Changelog.md @@ -68,6 +68,9 @@ next (will be 1.8.0) ### Authentication and Permissions * FIX: Users restricted to Hostgroups can now use related Templates (#2020, #2101) +### Kickstart +* FEATURE: Friendlier message if object to be removed is still in use (#2206) + ### Icinga Configuration * FIX: Correctly render Service Dependencies with Array-style parent hosts (#2088) * REMOVED: magic-apply-for (a hidden deprecated feature) has been removed (#1851) diff --git a/library/Director/KickstartHelper.php b/library/Director/KickstartHelper.php index 326ee03b..b582be01 100644 --- a/library/Director/KickstartHelper.php +++ b/library/Director/KickstartHelper.php @@ -280,7 +280,14 @@ class KickstartHelper protected function removeZones() { foreach ($this->removeZones as $zone) { - $zone->delete(); + try { + $zone->delete(); + } catch (Exception $e) { + throw new Exception(sprintf( + "Failed to remove external Zone '%s', it's eventually still in use", + $zone->getObjectName() + ), 0, $e); + } } return $this; @@ -339,7 +346,14 @@ class KickstartHelper protected function removeEndpoints() { foreach ($this->removeEndpoints as $endpoint) { - $endpoint->delete(); + try { + $endpoint->delete(); + } catch (Exception $e) { + throw new Exception(sprintf( + "Failed to remove external Endpoint '%s', it's eventually still in use", + $endpoint->getObjectName() + ), 0, $e); + } } return $this;