- Removed the patch steps from kube upgrade orchestration.
They were no longer needed, and would cause a failure if
there were no patches at all in the subcloud.
- The version selected for the subcloud is now the
available version in the kube version list.
This permits 'stepping' up a subcloud by one upgrade,
where it would have previously attempted to jump
multiple versions.
- Audit considers a subcloud out-of-sync if the
kube version is higher, so added a pre-check step
to determine if the upgrade should be skipped.
- Added support for to-version as an extra arg to
the strategy so that the subcloud can be upgraded
to a version greater or equal to the available version
in the subcloud.
- Added the ability for force to permit the kube
upgrade of a subcloud that is in-sync.
- Allow the --force to orchestrate all subclouds
if no explicit subcloud is indicated.
Test Plan:
=========
PASS:-System Controller and Subcloud same version.
-Audit shows in-sync.
-Subcloud not added to orchestration steps.
PASS:-System Controller lower version than Subcloud.
-Audit shows out-of-sync.
-Subcloud added to orchestration, but not upgraded.
-Skipped during pre-check.
PASS:-System Controller lower version than Subcloud.
-Audit shows out-of-sync.
-Pass in 'to-version' lower than subcloud available
version.
-Subcloud added to orchestration, but not upgraded.
-Skipped during pre-check.
PASS:-System Controller lower version than Subcloud.
-Audit shows out-of-sync.
-Pass in partial 'to-version' lower than subcloud
available version.
-Subcloud added to orchestration, but not upgraded.
-Skipped during pre-check.
PASS:-System Controller lower version than Subcloud.
-Audit shows out-of-sync.
-Pass in 'to-version' higher than subcloud available
version.
-Subcloud added to orchestration, and upgraded to its
'available' version.
PASS:-System Controller lower version than Subcloud.
-Audit shows out-of-sync.
-Pass in 'to-version' equal to subcloud available
version.
-Subcloud added to orchestration, and upgraded to its
'available' version.
PASS:-System Controller lower version than Subcloud.
-Subcloud at its highest version, no available version.
-Audit shows out-of-sync.
-Pass in 'to-version' higher that the version on subcloud
-Subcloud added to orchestration, but not upgraded.
-Skipped during pre-check.
PASS:-System Controller higher version than Subcloud.
-Audit shows out-of-sync.
-Subcloud added to orchestration, and upgraded to its
'available' version.
PASS:-Subcloud already has a kube upgrade in progress and
versions showing as partial. to-version is equal.
-Audit shows out-of-sync.
-Subcloud added to orchestration, and its upgrade is
resumed.
PASS:-Subcloud already has a kube upgrade in progress but
to-version passed to orchestration is lower version.
-Audit shows out-of-sync.
-Subcloud added to orchestration, and is skipped by
the pre-check.
PASS:-Subcloud in sync with system controller. Passing
force and an explicit to-version allows the subcloud
to be orchestrated beyond the version on the system
controller.
Change-Id: Ia00a329349afe0c651d66ea04a6b1b388172a8eb
Story: 2008972
Task: 44133
Signed-off-by: albailey <Al.Bailey@windriver.com>