diff --git a/python/src/mas/cli/mirror/config.py b/python/src/mas/cli/mirror/config.py index be25cc46bd..6ddf576db4 100644 --- a/python/src/mas/cli/mirror/config.py +++ b/python/src/mas/cli/mirror/config.py @@ -34,12 +34,14 @@ ("Maximo Application Suite", "predict", "ibm-mas-predict", "mas_predict_version", False), ("Maximo Application Suite", "optimizer", "ibm-mas-optimizer", "mas_optimizer_version", False), ("Maximo Application Suite", "visualinspection", "ibm-mas-visualinspection", "mas_visualinspection_version", False), - ("Cloud Pak for Data - Platform", "cp4d-platform", "ibm-cp-common-services", "common_svcs_version", False), - ("Cloud Pak for Data - Platform", "cp4d-platform", "ibm-zen", "ibm_zen_version", False), + ("Cloud Pak for Data - Platform", "cp4d-platform", "ibm-cp-common-services", "common_svcs_version", True), + ("Cloud Pak for Data - Platform", "cp4d-platform", "ibm-zen", "ibm_zen_version", True), ("Cloud Pak for Data - Platform", "cp4d-platform", "ibm-cp-datacore", "cp4d_platform_version", True), - ("Cloud Pak for Data - Platform", "cp4d-platform", "ibm-licensing", "ibm_licensing_version", False), + ("Cloud Pak for Data - Platform", "cp4d-platform", "ibm-swhub-control-center", "swhub_version", True), + ("Cloud Pak for Data - Platform", "cp4d-platform", "ibm-licensing", "ibm_licensing_version", True), ("Cloud Pak for Data - Platform", "cp4d-platform", "ibm-ccs", "ccs_build", True), - ("Cloud Pak for Data - Platform", "cp4d-platform", "ibm-cloud-native-postgresql", "postgress_version", False), + ("Cloud Pak for Data - Platform", "cp4d-platform", "ibm-cloud-native-postgresql", "postgress_version", True), + ("Cloud Pak for Data - Platform", "cp4d-platform", "ibm-pg-operator", "pg_operator_version", True), ("Cloud Pak for Data - Platform", "cp4d-platform", "ibm-datarefinery", "datarefinery_version", True), ("Cloud Pak for Data - Platform", "cp4d-platform", "ibm-elasticsearch-operator", "elasticsearch_version", False), ("Cloud Pak for Data - Platform", "cp4d-platform", "ibm-opensearch-operator", "opensearch_version", False), diff --git a/python/src/mas/cli/update/app.py b/python/src/mas/cli/update/app.py index 5356b5fad3..b4056c6ca1 100644 --- a/python/src/mas/cli/update/app.py +++ b/python/src/mas/cli/update/app.py @@ -712,8 +712,8 @@ def detectCP4D(self) -> None: return elif len(cpds) == 1: cpdUpgradePath = { - "5.3.1": "5.3.1", - "5.2.0": "5.3.1", + "5.3.1": "5.4.0", + "5.2.0": ["5.3.1", "5.4.0"], "5.1.3": "5.2.0", "5.0.0": "5.1.3", } @@ -748,13 +748,18 @@ def detectCP4D(self) -> None: self.fatalError( "Skipping intermediate Cloud Pak for Data updates is not tested and thus not supported\n\nContact IBM support for assistance" ) - elif cpdUpgradePath[cpdInstanceVersion] != cpdTargetVersion: + + validNextVersions = cpdUpgradePath[cpdInstanceVersion] + if isinstance(validNextVersions, str): + validNextVersions = [validNextVersions] + + if cpdTargetVersion not in validNextVersions: h.stop_and_persist( symbol=self.successIcon, text=f"Installed Cloud Pak for Data version ({cpdInstanceVersion}) can not be updated to {cpdTargetVersion} directly", ) self.fatalError( - f"Skipping intermediate Cloud Pak for Data updates is not tested and thus not supported\n\nRefer to the catalog documentation and first update to any catalog that carries Cloud Pak for data v{cpdUpgradePath[cpdInstanceVersion]}:\n- https://ibm-mas.github.io/cli/catalogs" + f"Skipping intermediate Cloud Pak for Data updates is not tested and thus not supported\n\nRefer to the catalog documentation and first update to any catalog that carries Cloud Pak for data v{validNextVersions[0]}:\n- https://ibm-mas.github.io/cli/catalogs" ) currentCpdVersionMajorMinor = f"{cpdInstanceVersion.split('.')[0]}.{cpdInstanceVersion.split('.')[1]}" diff --git a/python/tests/integration/utils/mirror_test_helper.py b/python/tests/integration/utils/mirror_test_helper.py index 469ce105d0..d6f41ed3d8 100644 --- a/python/tests/integration/utils/mirror_test_helper.py +++ b/python/tests/integration/utils/mirror_test_helper.py @@ -192,9 +192,11 @@ def setup_mocks(self): "common_svcs_version": "4.13.0", "ibm_zen_version": "6.2.0+20250530.152516.232", "cp4d_platform_version": "5.2.0+20250709.170324", + "swhub_version": "5.10.0", "ibm_licensing_version": "4.2.17", "ccs_build": "11.0.0+20250605.130237.468", "postgress_version": "5.16.0+20250827.110911.2626", + "pg_operator_version": "1.21.1+20250818.185726.1055", "datarefinery_version": "11.0.0+20250513.203727.232", "elasticsearch_version": "1.1.2667", "opensearch_version": "1.1.2494",