Quoting Daniel Kral (2025-09-23 11:23:42) > On Mon Sep 22, 2025 at 2:04 PM CEST, Fabian Grünbichler wrote: > > it's not available in the simulator > > > > Signed-off-by: Fabian Grünbichler <f.gruenbich...@proxmox.com> > > --- > > src/PVE/HA/Manager.pm | 21 +++++++++++++++------ > > 1 file changed, 15 insertions(+), 6 deletions(-) > > > > diff --git a/src/PVE/HA/Manager.pm b/src/PVE/HA/Manager.pm > > index ba59f64..cfd509a 100644 > > --- a/src/PVE/HA/Manager.pm > > +++ b/src/PVE/HA/Manager.pm > > @@ -14,7 +14,12 @@ use PVE::HA::Rules::NodeAffinity qw(get_node_affinity); > > use PVE::HA::Rules::ResourceAffinity > > qw(get_affinitive_resources get_resource_affinity > > apply_positive_resource_affinity apply_negative_resource_affinity); > > use PVE::HA::Usage::Basic; > > -use PVE::HA::Usage::Static; > > + > > +my $have_static_scheduling; > > +eval { > > + require PVE::HA::Usage::Static; > > + $have_static_scheduling = 1; > > +}; > > > > ## Variable Name & Abbreviations Convention > > # > > @@ -244,11 +249,15 @@ sub recompute_online_node_usage { > > > > if (my $mode = $self->{crs}->{scheduler}) { > > if ($mode eq 'static') { > > - $online_node_usage = eval { > > - my $scheduler = PVE::HA::Usage::Static->new($haenv); > > - $scheduler->add_node($_) for $online_nodes->@*; > > - return $scheduler; > > - }; > > + if ($have_static_scheduling) { > > + $online_node_usage = eval { > > + my $scheduler = PVE::HA::Usage::Static->new($haenv); > > + $scheduler->add_node($_) for $online_nodes->@*; > > + return $scheduler; > > + }; > > + } else { > > + $@ = "static scheduling not available\n"; > > + } > > Since this cropped up almost 3 years after the static load scheduler was > added and the GTK-based ha-simulator might be on its way out already > [0], I think it would be nice to add a stub for > PVE::HA::Usage::Static here the same way as you did for PVE::Cluster as > otherwise it clutters the main code for the rather rarely used > standalone ha-simulator. > > [0] https://bugzilla.proxmox.com/show_bug.cgi?id=6743
yes, that's definitely doable and should just require a `new()` implementation that dies, so fairly simple.. _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel