The API endpoints allow users to set empty 'nodes' and 'resources'
properties for HA rules, which are not handled by the api schema
verification nor the api handlers themselves.
PATCH 1 fixes the
got unexpected error - cannot lookup undefined type! at
/usr/share/perl5/PVE/HA/Config.pm line 232.
error message for existing configs with invalid sections, which prevents
the CRM from doing any other progress. It will only keep logging the
hint that a section misses a required option.
PATCH 2 prevents users from passing empty strings for the 'nodes' and
'resources' parameters, which are catched before these are written to
the rules config itself.
A more general solution is proposed in [0], which fixes this behavior in
PVE::SectionConfig itself.
[0]
https://lore.proxmox.com/pve-devel/[email protected]/
Daniel Kral (2):
rules: ensure rule is defined and has type in set_rule_defaults
api: rules: check for non-empty nodes and resources properties
src/PVE/API2/HA/Rules.pm | 16 ++++++++++------
src/PVE/HA/Rules.pm | 3 ++-
2 files changed, 12 insertions(+), 7 deletions(-)
--
2.47.3