distcloud/distributedcloud/dcmanager/common
Gustavo Herzmann d3b7434a5b Fix peer-controller-gateway-address update
This commit updates the peer group association sync status to
'out-of-sync' after the user updates the
peer-controller-gateway-address attribute of the system-peer object.

This commit also modifies the subcloud update function to update the
subcloud route whenever the systemcontroller_gateway_address is
updated on the primary side and synced to the secondary.

It also adds an informative message to remind the caller to run the
sync command after updating the peer-controller-gateway-address.

Test Plan:
1. PASS: Do the following steps:
         - Create a system peer with an incorrect systemcontroller
         gateway address that's inside the management subcloud, but
         outside the reserved IP range and then create an association.
         Verify that the secondary subcloud and a route was created
         using the incorrect IP.
         - Update the system peer with the correct systemcontroller
         gateway address on the primary site. Verify that the PGA
         sync status is set to 'out-of-sync' on both sites.
         - Sync the PGA and verify that the secondary subcloud
         systemcontroller gateway address was updated and that the
         old route was deleted and a new one using the new address
         was created.
         - Migrate the SPG to the non-primary site and verify that
         it completes successfully and that the subcloud becomes
         online and managed.
2. PASS: Repeat the first step of test case #1, but use an incorrect
         address that's outside the management subnet. Then create
         a PGA and verify that it fails due to the following
         validation:
         "systemcontroller_gateway_address invalid: Address must be in
         subnet <management subnet>"
3. PASS: Repeat the first step of test case #1, but use an incorrect
         address that's inside the reserved IP range. Then create
         a PGA and verify that it fails due to the following
         validation:
         "systemcontroller_gateway_address invalid, is within
         management pool <ip range>"
4. PASS: Create a system peer with a correct systemcontroller gateway
         address for the first time and then create an association.
         Verify that the secondary subcloud and a route was created
         using the correct IP.
5. PASS: Update an attribute of the subcloud (e.g. the subcloud
         description) on the primary site and verify that the sync
         status chages to 'out-of-sync' on both sites, then run
         the PGA sync operation and verify that the attribute was
         synced to the secondary subcloud on the peer site.

Closes-Bug: 2062372

Change-Id: Ibffe6c86656a56a85d10deca54c161bbed7f0d17
Signed-off-by: Gustavo Herzmann <gustavo.herzmann@windriver.com>
2024-04-18 14:04:00 +00:00
..
__init__.py Move content to subdir to support relocated packaging 2019-11-04 13:57:02 -05:00
config.py Remove the use_usm flag 2024-02-15 16:45:21 -03:00
consts.py Merge "Fix issues with PGA sync_status" 2024-03-07 19:22:57 +00:00
context.py Update tox pylint/pep8 for dcmanager 2024-01-18 21:51:25 +00:00
exceptions.py Set PGA status to out-of-sync after certain operations 2024-03-08 19:38:31 +00:00
i18n.py Remove standard WR License notice from StarlingX distributedcloud 2021-12-23 19:55:09 +00:00
manager.py Update tox pylint/pep8 for dcmanager 2024-01-18 21:51:25 +00:00
messaging.py Update endpoint caches post network reconfig 2023-03-14 11:44:15 -03:00
phased_subcloud_deploy.py Fix peer-controller-gateway-address update 2024-04-18 14:04:00 +00:00
prestage.py Display prestage status and versions in subcloud list 2024-01-26 14:09:19 -05:00
scheduler.py Remove standard WR License notice from StarlingX distributedcloud 2021-12-23 19:55:09 +00:00
serializer.py Update tox pylint/pep8 for dcmanager 2024-01-18 21:51:25 +00:00
utils.py Log subcloud health output upon failed health check 2024-03-11 00:39:29 -04:00
version.py Remove standard WR License notice from StarlingX distributedcloud 2021-12-23 19:55:09 +00:00