9
0

Compare commits

...

1 Commits

3 changed files with 48 additions and 4 deletions

View File

@@ -1,3 +1,10 @@
-------------------------------------------------------------------
Thu Jun 26 11:58:26 UTC 2025 - Miika Alikirri <miika.alikirri@suse.com>
- Patch cockpit-machines to ignore domain not found errors
when domain is deleted (bsc#1236383)
* added nic-domain-not-found.patch
-------------------------------------------------------------------
Mon Jun 16 08:22:25 UTC 2025 - Alice Brooks <alice.brooks@suse.com>
@@ -188,7 +195,7 @@ Fri Jun 16 12:07:39 UTC 2023 - Adam Majer <adam.majer@suse.de>
-------------------------------------------------------------------
Fri Sep 23 10:30:20 UTC 2022 - Jacek Tomasiak <jtomasiak@suse.com>
- Require qemu-block-curl for installing over https (bsc#1199672)
- Require qemu-block-curl for installing over https (bsc#1199672)
-------------------------------------------------------------------
Wed Aug 10 10:19:26 UTC 2022 - Jacek Tomasiak <jtomasiak@suse.com>
@@ -227,7 +234,7 @@ Thu Mar 17 13:42:11 UTC 2022 - Adam Majer <adam.majer@suse.de>
-------------------------------------------------------------------
Mon Mar 14 22:37:04 UTC 2022 - Jacek Tomasiak <jtomasiak@suse.com>
- Hide links pointing to RHEL docs, hide-docs.patch (bsc#1197003)
- Hide links pointing to RHEL docs, hide-docs.patch (bsc#1197003)
-------------------------------------------------------------------
Thu Mar 10 15:41:35 UTC 2022 - Jacek Tomasiak <jtomasiak@suse.com>
@@ -238,12 +245,12 @@ Thu Mar 10 15:41:35 UTC 2022 - Jacek Tomasiak <jtomasiak@suse.com>
-------------------------------------------------------------------
Mon Jan 31 09:50:20 UTC 2022 - Jacek Tomasiak <jtomasiak@suse.com>
- Remove translate-toolkit which is not available in SLE
- Remove translate-toolkit which is not available in SLE
-------------------------------------------------------------------
Fri Jan 28 10:53:18 UTC 2022 - Jacek Tomasiak <jtomasiak@suse.com>
- Re-add source-offset to _service.
- Re-add source-offset to _service.
-------------------------------------------------------------------
Fri Aug 13 11:23:02 UTC 2021 - Ludwig Nussel <lnussel@suse.de>

View File

@@ -30,6 +30,7 @@ Source12: update_version.sh
Patch10: hide-docs.patch
Patch11: load-css-overrides.patch
Patch12: uefi-default-firmware.patch
Patch13: nic-domain-not-found.patch
BuildArch: noarch
BuildRequires: appstream-glib
BuildRequires: make

View File

@@ -0,0 +1,36 @@
From 6c982496f7b9cd9ef08308e1edd820b3910a7833 Mon Sep 17 00:00:00 2001
From: Miika Alikirri <miika.alikirri@suse.com>
Date: Wed, 25 Jun 2025 14:07:00 +0300
Subject: [PATCH] nics: ignore domain not found error caused by domain being
removed
If user is in the VMDetails page during migration, the VM might get
deleted before domainInterfaceAddresses is done processing. This race
condition can end up causing a confusing view where the UI shows a
redundant "Domain not found" error, and the regular "VM doesn't exist"
page at the same time
---
src/components/vm/nics/vmNicsCard.tsx | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/src/components/vm/nics/vmNicsCard.jsx b/src/components/vm/nics/vmNicsCard.jsx
index 8b309ac0..79efe152 100644
--- a/src/components/vm/nics/vmNicsCard.jsx
+++ b/src/components/vm/nics/vmNicsCard.jsx
@@ -239,8 +239,15 @@ export class VmNetworkTab extends React.Component {
domainInterfaceAddresses({ connectionName: this.props.vm.connectionName, objPath: this.props.vm.id })
.then(domifaddressAllSources => {
const allRejected = !domifaddressAllSources.some(promise => promise.status == 'fulfilled');
+ // If user is in the VMDetails page during migration, the VM might get deleted
+ // before domainInterfaceAddresses is done processing. This race condition can end up
+ // causing a confusing view where the UI shows a redundant "Domain not found error"
+ // and the regular VM doesn't exist page, at the same time.
+ const domainNotFound = domifaddressAllSources.some(promise =>
+ promise.status === 'rejected' && promise.reason?.message.startsWith("Domain not found:")
+ );
- if (allRejected)
+ if (allRejected && !domainNotFound)
this.props.onAddErrorNotification({
text: cockpit.format(_("Failed to fetch the IP addresses of the interfaces present in $0"), this.props.vm.name),
detail: [...new Set(domifaddressAllSources.map(promise => promise.reason ? promise.reason.message : ''))].join(', '),