Am 22/06/2023 um 14:15 schrieb Dominik Csapak: > under certain circumstances, the migrate button stays disabled, even > when a valid target node was selected: > * the first node that gets autoselected (most likely the second) > is not a valid migration target > * the user changes to a migration target that is a valid one > > if that happens, the migration button would stay disabled. > switching once to a non valid target and would enable the button. > > To fix it, we have to do two things here: > > 'checkQemuPreconditions' is actually an async function that awaits an > api call and uses the result to set the 'migration.allowedNodes' > property > > 'checkMigratePreconditions' calls 'checkQemuPreconditions' and uses the > 'migration.allowedNodes' property afterwards. > > but since 'checkMigratePreconditions' is not async, that happens before > the api call can return the valid data and thus leaves it empty, making > all nodes valid in the selector. (thus the initial selected node is > valid) > > instead make 'checkMigratePreconditions' also async and await the result > of 'checkQemuPreconditions' > > this unearthed another issue, namely we access an object that is > possibly undefined (worked out before due to race conditions) so > fallback to an empty object. > > and lastly, since we want the 'disallowedNodes' set before actually > checking the qemu preconditions, we move the setting of that on > the node selector above the qemu preconditions check > (this is the only place where we set it anyway, and the source does not > change, we probably could move that out of that function altogether) > > Signed-off-by: Dominik Csapak <d.csa...@proxmox.com> > --- > www/manager6/window/Migrate.js | 9 +++++---- > 1 file changed, 5 insertions(+), 4 deletions(-) > >
applied, thanks! _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel