workaround for Nova scheduler_hints bug
This patch adds python-glanceclient as a direct dependency. Previously
it was installed indirectly via heat-translator, but starting from
heat-translator 3.4.0 it was removed from its requirements. This
caused Tacker CI failures with "ModuleNotFoundError: glanceclient".
This patch also adds a version constraint for tox to avoid versions
>= 4.48.0, which cause CI failures during the pre-devstack task with
"AttributeError: 'Parsed' object has no attribute 'config_format'".
Additionally, this patch adds a temporary workaround for a Nova bug in
microversion 2.100 where scheduler_hints.group is returned as a list
in GET server responses, but Nova expects it to be a string during
rebuild. This mismatch causes Heat stack updates to fail.
The workaround removes scheduler_hints from nested VDU templates
during change_vnfpkg rolling update operations and disables VDU
IDs validation.
Workaround Impact:
1) Allows change_vnfpkg rolling updates to complete successfully.
2) Heat may replace servers instead of updating them in place.
3) VDU IDs may change after the change_vnfpkg operation.
This workaround should be removed after the Nova bug is fixed.
Related Nova bug: https://bugs.launchpad.net/nova/+bug/2139275
Closes-Bug: https://bugs.launchpad.net/tacker/+bug/2143398
Closes-Bug: https://bugs.launchpad.net/tacker/+bug/2143583
Closes-Bug: https://bugs.launchpad.net/tacker/+bug/2139268
Change-Id: I7e7122ededb9694c57fd37b0d8109efb9fefac08
Signed-off-by: Shivam Shukla <shivam.shukla3@india.nec.com>