@openshift-assisted/ui-lib 2.9.8-cim → 2.9.9-cim
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/@types/cim/components/ClusterDeployment/ClusterDeploymentDetailsStep.d.ts +6 -1
- package/build/@types/cim/components/ClusterDeployment/ClusterDeploymentDetailsStep.d.ts.map +1 -1
- package/build/@types/cim/components/ClusterDeployment/ClusterDetailsFormFields.d.ts.map +1 -1
- package/build/@types/cim/components/helpers/versions.d.ts +1 -0
- package/build/@types/cim/components/helpers/versions.d.ts.map +1 -1
- package/build/@types/common/api/accounts-management-service/current-account-api.d.ts +6 -0
- package/build/@types/common/api/accounts-management-service/current-account-api.d.ts.map +1 -0
- package/build/@types/common/api/accounts-management-service/organizations-api.d.ts +6 -0
- package/build/@types/common/api/accounts-management-service/organizations-api.d.ts.map +1 -0
- package/build/@types/common/api/assisted-service/UISettingsAPI.d.ts +8 -0
- package/build/@types/common/api/assisted-service/UISettingsAPI.d.ts.map +1 -0
- package/build/@types/common/api/assisted-service/index.d.ts +1 -0
- package/build/@types/common/api/assisted-service/index.d.ts.map +1 -1
- package/build/@types/common/api/authorization-service/all-apis.d.ts +7 -0
- package/build/@types/common/api/authorization-service/all-apis.d.ts.map +1 -0
- package/build/@types/common/components/clusterConfiguration/DiskEncryptionFields/DiskEncryptionControlGroup.d.ts.map +1 -1
- package/build/@types/common/components/clusterConfiguration/DiskEncryptionFields/DiskEncryptionMode.d.ts +3 -1
- package/build/@types/common/components/clusterConfiguration/DiskEncryptionFields/DiskEncryptionMode.d.ts.map +1 -1
- package/build/@types/common/components/clusterConfiguration/DiskEncryptionFields/TangServers.d.ts +3 -1
- package/build/@types/common/components/clusterConfiguration/DiskEncryptionFields/TangServers.d.ts.map +1 -1
- package/build/@types/common/components/clusterConfiguration/OpenShiftVersionSelect.d.ts +2 -0
- package/build/@types/common/components/clusterConfiguration/OpenShiftVersionSelect.d.ts.map +1 -1
- package/build/@types/common/components/clusterDetail/PostInstallAlert.d.ts +6 -0
- package/build/@types/common/components/clusterDetail/PostInstallAlert.d.ts.map +1 -0
- package/build/@types/common/components/clusterDetail/index.d.ts +1 -0
- package/build/@types/common/components/clusterDetail/index.d.ts.map +1 -1
- package/build/@types/common/components/clusterWizard/ReviewValidations.d.ts.map +1 -1
- package/build/@types/common/components/ui/NoPermissionsError.d.ts +3 -0
- package/build/@types/common/components/ui/NoPermissionsError.d.ts.map +1 -0
- package/build/@types/common/components/ui/formik/InputField.d.ts.map +1 -1
- package/build/@types/common/components/ui/formik/RichInputField.d.ts.map +1 -1
- package/build/@types/common/components/ui/formik/types.d.ts +2 -2
- package/build/@types/common/components/ui/formik/types.d.ts.map +1 -1
- package/build/@types/common/components/ui/index.d.ts +1 -0
- package/build/@types/common/components/ui/index.d.ts.map +1 -1
- package/build/@types/common/config/constants.d.ts.map +1 -1
- package/build/@types/common/features/featureGate.d.ts +1 -1
- package/build/@types/common/features/featureGate.d.ts.map +1 -1
- package/build/@types/common/types/cpuArchitecture.d.ts +1 -1
- package/build/@types/common/types/cpuArchitecture.d.ts.map +1 -1
- package/build/@types/ocm/components/AddHosts/AddHosts.d.ts.map +1 -1
- package/build/@types/ocm/components/AddHosts/InventoryAddHost.d.ts +1 -2
- package/build/@types/ocm/components/AddHosts/InventoryAddHost.d.ts.map +1 -1
- package/build/@types/ocm/components/AddHosts/day2Wizard/Day2ClusterDetails.d.ts.map +1 -1
- package/build/@types/ocm/components/AddHosts/day2Wizard/Day2StaticIpHostConfigurations.d.ts +3 -1
- package/build/@types/ocm/components/AddHosts/day2Wizard/Day2StaticIpHostConfigurations.d.ts.map +1 -1
- package/build/@types/ocm/components/HostsClusterDetailTab/HostsClusterDetailTabContent.d.ts.map +1 -1
- package/build/@types/ocm/components/HostsClusterDetailTab/HostsClusterDetailTabContentErrors.d.ts +1 -4
- package/build/@types/ocm/components/HostsClusterDetailTab/HostsClusterDetailTabContentErrors.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterConfiguration/CpuArchitectureDropdown.d.ts +3 -2
- package/build/@types/ocm/components/clusterConfiguration/CpuArchitectureDropdown.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterConfiguration/CustomManifestCheckbox.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterConfiguration/OcmBaseDomainField.d.ts +2 -1
- package/build/@types/ocm/components/clusterConfiguration/OcmBaseDomainField.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterConfiguration/OcmClusterDetailsFormFields.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterConfiguration/manifestsConfiguration/CustomManifestsPage.d.ts +1 -1
- package/build/@types/ocm/components/clusterConfiguration/manifestsConfiguration/CustomManifestsPage.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterConfiguration/manifestsConfiguration/components/CustomManifestsForm.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterConfiguration/manifestsConfiguration/components/utils.d.ts +3 -4
- package/build/@types/ocm/components/clusterConfiguration/manifestsConfiguration/components/utils.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterConfiguration/manifestsConfiguration/data/dataTypes.d.ts +0 -1
- package/build/@types/ocm/components/clusterConfiguration/manifestsConfiguration/data/dataTypes.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterDetail/ClusterDetailStatusMessages.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterWizard/ClusterDetails.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterWizard/ClusterDetailsForm.d.ts +1 -2
- package/build/@types/ocm/components/clusterWizard/ClusterDetailsForm.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterWizard/ClusterWizardContext.d.ts +5 -3
- package/build/@types/ocm/components/clusterWizard/ClusterWizardContext.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterWizard/ClusterWizardContextProvider.d.ts.map +1 -1
- package/build/@types/ocm/components/ui/OcmFormFields.d.ts +1 -1
- package/build/@types/ocm/hooks/index.d.ts +1 -0
- package/build/@types/ocm/hooks/index.d.ts.map +1 -1
- package/build/@types/ocm/hooks/useOpenshiftVersions.d.ts +1 -2
- package/build/@types/ocm/hooks/useOpenshiftVersions.d.ts.map +1 -1
- package/build/@types/ocm/hooks/useSupportLevelsAPI.d.ts +4 -4
- package/build/@types/ocm/hooks/useSupportLevelsAPI.d.ts.map +1 -1
- package/build/@types/ocm/hooks/useUISettings.d.ts +10 -0
- package/build/@types/ocm/hooks/useUISettings.d.ts.map +1 -0
- package/build/@types/ocm/services/ClusterDetailsService.d.ts +2 -1
- package/build/@types/ocm/services/ClusterDetailsService.d.ts.map +1 -1
- package/build/@types/ocm/services/ClustersService.d.ts +0 -1
- package/build/@types/ocm/services/ClustersService.d.ts.map +1 -1
- package/build/@types/ocm/services/Day2ClusterService.d.ts +3 -2
- package/build/@types/ocm/services/Day2ClusterService.d.ts.map +1 -1
- package/build/@types/ocm/services/UISettingsService.d.ts +8 -0
- package/build/@types/ocm/services/UISettingsService.d.ts.map +1 -0
- package/build/@types/ocm/services/index.d.ts +1 -0
- package/build/@types/ocm/services/index.d.ts.map +1 -1
- package/build/@types/ocm/services/types.d.ts +4 -0
- package/build/@types/ocm/services/types.d.ts.map +1 -1
- package/build/cjs/cim/components/Agent/BMCForm.js +3 -3
- package/build/cjs/cim/components/Agent/BMCForm.js.map +1 -1
- package/build/cjs/cim/components/ClusterDeployment/ClusterDeploymentDetailsStep.js +9 -5
- package/build/cjs/cim/components/ClusterDeployment/ClusterDeploymentDetailsStep.js.map +1 -1
- package/build/cjs/cim/components/ClusterDeployment/ClusterDetailsFormFields.js +6 -2
- package/build/cjs/cim/components/ClusterDeployment/ClusterDetailsFormFields.js.map +1 -1
- package/build/cjs/cim/components/helpers/versions.js +3 -1
- package/build/cjs/cim/components/helpers/versions.js.map +1 -1
- package/build/cjs/common/api/accounts-management-service/access-token-api.js +1 -1
- package/build/cjs/common/api/accounts-management-service/current-account-api.js +17 -0
- package/build/cjs/common/api/accounts-management-service/current-account-api.js.map +1 -0
- package/build/cjs/common/api/accounts-management-service/organizations-api.js +19 -0
- package/build/cjs/common/api/accounts-management-service/organizations-api.js.map +1 -0
- package/build/cjs/common/api/assisted-service/UISettingsAPI.js +21 -0
- package/build/cjs/common/api/assisted-service/UISettingsAPI.js.map +1 -0
- package/build/cjs/common/api/assisted-service/index.js +3 -1
- package/build/cjs/common/api/assisted-service/index.js.map +1 -1
- package/build/cjs/common/api/authorization-service/all-apis.js +23 -0
- package/build/cjs/common/api/authorization-service/all-apis.js.map +1 -0
- package/build/cjs/common/components/clusterConfiguration/DiskEncryptionFields/DiskEncryptionControlGroup.js +1 -1
- package/build/cjs/common/components/clusterConfiguration/DiskEncryptionFields/DiskEncryptionControlGroup.js.map +1 -1
- package/build/cjs/common/components/clusterConfiguration/DiskEncryptionFields/DiskEncryptionMode.js +6 -4
- package/build/cjs/common/components/clusterConfiguration/DiskEncryptionFields/DiskEncryptionMode.js.map +1 -1
- package/build/cjs/common/components/clusterConfiguration/DiskEncryptionFields/TangServers.js +5 -3
- package/build/cjs/common/components/clusterConfiguration/DiskEncryptionFields/TangServers.js.map +1 -1
- package/build/cjs/common/components/clusterConfiguration/OpenShiftVersionSelect.js +2 -2
- package/build/cjs/common/components/clusterConfiguration/OpenShiftVersionSelect.js.map +1 -1
- package/build/cjs/common/components/clusterDetail/PostInstallAlert.js +16 -0
- package/build/cjs/common/components/clusterDetail/PostInstallAlert.js.map +1 -0
- package/build/cjs/common/components/clusterDetail/index.js +3 -1
- package/build/cjs/common/components/clusterDetail/index.js.map +1 -1
- package/build/cjs/common/components/clusterWizard/ReviewValidations.js +3 -0
- package/build/cjs/common/components/clusterWizard/ReviewValidations.js.map +1 -1
- package/build/cjs/common/components/ui/NoPermissionsError.js +14 -0
- package/build/cjs/common/components/ui/NoPermissionsError.js.map +1 -0
- package/build/cjs/common/components/ui/formik/InputField.js +5 -5
- package/build/cjs/common/components/ui/formik/InputField.js.map +1 -1
- package/build/cjs/common/components/ui/formik/RichInputField.js +5 -2
- package/build/cjs/common/components/ui/formik/RichInputField.js.map +1 -1
- package/build/cjs/common/components/ui/formik/SelectField.js +1 -1
- package/build/cjs/common/components/ui/formik/SelectField.js.map +1 -1
- package/build/cjs/common/components/ui/index.js +3 -1
- package/build/cjs/common/components/ui/index.js.map +1 -1
- package/build/cjs/common/config/constants.js +1 -0
- package/build/cjs/common/config/constants.js.map +1 -1
- package/build/cjs/common/features/featureGate.js +1 -3
- package/build/cjs/common/features/featureGate.js.map +1 -1
- package/build/cjs/common/types/cpuArchitecture.js +5 -9
- package/build/cjs/common/types/cpuArchitecture.js.map +1 -1
- package/build/cjs/ocm/components/AddHosts/AddHosts.js +1 -2
- package/build/cjs/ocm/components/AddHosts/AddHosts.js.map +1 -1
- package/build/cjs/ocm/components/AddHosts/InventoryAddHost.js +2 -2
- package/build/cjs/ocm/components/AddHosts/InventoryAddHost.js.map +1 -1
- package/build/cjs/ocm/components/AddHosts/day2Wizard/Day2ClusterDetails.js +4 -4
- package/build/cjs/ocm/components/AddHosts/day2Wizard/Day2ClusterDetails.js.map +1 -1
- package/build/cjs/ocm/components/AddHosts/day2Wizard/Day2StaticIpHostConfigurations.js +7 -6
- package/build/cjs/ocm/components/AddHosts/day2Wizard/Day2StaticIpHostConfigurations.js.map +1 -1
- package/build/cjs/ocm/components/HostsClusterDetailTab/HostsClusterDetailTabContent.js +3 -20
- package/build/cjs/ocm/components/HostsClusterDetailTab/HostsClusterDetailTabContent.js.map +1 -1
- package/build/cjs/ocm/components/HostsClusterDetailTab/HostsClusterDetailTabContentErrors.js +1 -13
- package/build/cjs/ocm/components/HostsClusterDetailTab/HostsClusterDetailTabContentErrors.js.map +1 -1
- package/build/cjs/ocm/components/clusterConfiguration/CpuArchitectureDropdown.js +24 -3
- package/build/cjs/ocm/components/clusterConfiguration/CpuArchitectureDropdown.js.map +1 -1
- package/build/cjs/ocm/components/clusterConfiguration/CustomManifestCheckbox.js +22 -32
- package/build/cjs/ocm/components/clusterConfiguration/CustomManifestCheckbox.js.map +1 -1
- package/build/cjs/ocm/components/clusterConfiguration/OcmBaseDomainField.js +7 -5
- package/build/cjs/ocm/components/clusterConfiguration/OcmBaseDomainField.js.map +1 -1
- package/build/cjs/ocm/components/clusterConfiguration/OcmClusterDetailsFormFields.js +3 -4
- package/build/cjs/ocm/components/clusterConfiguration/OcmClusterDetailsFormFields.js.map +1 -1
- package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/CustomManifestsPage.js +6 -12
- package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/CustomManifestsPage.js.map +1 -1
- package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/components/CustomManifests.js +2 -2
- package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/components/CustomManifests.js.map +1 -1
- package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/components/CustomManifestsArray.js +1 -1
- package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/components/CustomManifestsArray.js.map +1 -1
- package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/components/CustomManifestsForm.js +49 -123
- package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/components/CustomManifestsForm.js.map +1 -1
- package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/components/ExpandedManifest.js +1 -0
- package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/components/ExpandedManifest.js.map +1 -1
- package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/components/utils.js +14 -19
- package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/components/utils.js.map +1 -1
- package/build/cjs/ocm/components/clusterDetail/ClusterDetailStatusMessages.js +2 -7
- package/build/cjs/ocm/components/clusterDetail/ClusterDetailStatusMessages.js.map +1 -1
- package/build/cjs/ocm/components/clusterWizard/ClusterDetails.js +5 -12
- package/build/cjs/ocm/components/clusterWizard/ClusterDetails.js.map +1 -1
- package/build/cjs/ocm/components/clusterWizard/ClusterDetailsForm.js +18 -13
- package/build/cjs/ocm/components/clusterWizard/ClusterDetailsForm.js.map +1 -1
- package/build/cjs/ocm/components/clusterWizard/ClusterWizardContext.js.map +1 -1
- package/build/cjs/ocm/components/clusterWizard/ClusterWizardContextProvider.js +45 -36
- package/build/cjs/ocm/components/clusterWizard/ClusterWizardContextProvider.js.map +1 -1
- package/build/cjs/ocm/hooks/index.js +3 -1
- package/build/cjs/ocm/hooks/index.js.map +1 -1
- package/build/cjs/ocm/hooks/useOpenshiftVersions.js +0 -5
- package/build/cjs/ocm/hooks/useOpenshiftVersions.js.map +1 -1
- package/build/cjs/ocm/hooks/useSupportLevelsAPI.js +34 -1
- package/build/cjs/ocm/hooks/useSupportLevelsAPI.js.map +1 -1
- package/build/cjs/ocm/hooks/useUISettings.js +62 -0
- package/build/cjs/ocm/hooks/useUISettings.js.map +1 -0
- package/build/cjs/ocm/services/ClusterDetailsService.js +2 -2
- package/build/cjs/ocm/services/ClusterDetailsService.js.map +1 -1
- package/build/cjs/ocm/services/ClustersService.js +0 -8
- package/build/cjs/ocm/services/ClustersService.js.map +1 -1
- package/build/cjs/ocm/services/Day2ClusterService.js +13 -4
- package/build/cjs/ocm/services/Day2ClusterService.js.map +1 -1
- package/build/cjs/ocm/services/UISettingsService.js +18 -0
- package/build/cjs/ocm/services/UISettingsService.js.map +1 -0
- package/build/cjs/ocm/services/index.js +3 -1
- package/build/cjs/ocm/services/index.js.map +1 -1
- package/lib/cim/components/Agent/BMCForm.tsx +3 -3
- package/lib/cim/components/ClusterDeployment/ClusterDeploymentDetailsStep.tsx +17 -5
- package/lib/cim/components/ClusterDeployment/ClusterDetailsFormFields.tsx +9 -2
- package/lib/cim/components/helpers/versions.ts +5 -0
- package/lib/common/api/accounts-management-service/access-token-api.ts +1 -1
- package/lib/common/api/accounts-management-service/current-account-api.ts +13 -0
- package/lib/common/api/accounts-management-service/organizations-api.ts +15 -0
- package/lib/common/api/assisted-service/UISettingsAPI.ts +24 -0
- package/lib/common/api/assisted-service/index.ts +1 -0
- package/lib/common/api/authorization-service/all-apis.ts +28 -0
- package/lib/common/components/clusterConfiguration/DiskEncryptionFields/DiskEncryptionControlGroup.tsx +5 -1
- package/lib/common/components/clusterConfiguration/DiskEncryptionFields/DiskEncryptionMode.tsx +27 -16
- package/lib/common/components/clusterConfiguration/DiskEncryptionFields/TangServers.tsx +27 -17
- package/lib/common/components/clusterConfiguration/OpenShiftVersionSelect.tsx +4 -1
- package/lib/common/components/clusterDetail/PostInstallAlert.tsx +29 -0
- package/lib/common/components/clusterDetail/index.ts +1 -0
- package/lib/common/components/clusterWizard/ReviewValidations.tsx +3 -0
- package/lib/common/components/ui/NoPermissionsError.tsx +19 -0
- package/lib/common/components/ui/formik/InputField.tsx +4 -5
- package/lib/common/components/ui/formik/RichInputField.tsx +6 -2
- package/lib/common/components/ui/formik/SelectField.tsx +1 -1
- package/lib/common/components/ui/formik/types.ts +2 -1
- package/lib/common/components/ui/index.ts +1 -0
- package/lib/common/config/constants.ts +1 -0
- package/lib/common/features/featureGate.tsx +0 -4
- package/lib/common/types/cpuArchitecture.ts +3 -8
- package/lib/ocm/components/AddHosts/AddHosts.tsx +1 -3
- package/lib/ocm/components/AddHosts/InventoryAddHost.tsx +2 -8
- package/lib/ocm/components/AddHosts/day2Wizard/Day2ClusterDetails.tsx +6 -11
- package/lib/ocm/components/AddHosts/day2Wizard/Day2StaticIpHostConfigurations.tsx +34 -19
- package/lib/ocm/components/HostsClusterDetailTab/HostsClusterDetailTabContent.tsx +4 -36
- package/lib/ocm/components/HostsClusterDetailTab/HostsClusterDetailTabContentErrors.tsx +1 -15
- package/lib/ocm/components/clusterConfiguration/CpuArchitectureDropdown.tsx +58 -3
- package/lib/ocm/components/clusterConfiguration/CustomManifestCheckbox.tsx +25 -32
- package/lib/ocm/components/clusterConfiguration/OcmBaseDomainField.tsx +23 -12
- package/lib/ocm/components/clusterConfiguration/OcmClusterDetailsFormFields.tsx +4 -5
- package/lib/ocm/components/clusterConfiguration/manifestsConfiguration/CustomManifestsPage.tsx +20 -27
- package/lib/ocm/components/clusterConfiguration/manifestsConfiguration/components/CustomManifests.tsx +3 -3
- package/lib/ocm/components/clusterConfiguration/manifestsConfiguration/components/CustomManifestsArray.tsx +2 -2
- package/lib/ocm/components/clusterConfiguration/manifestsConfiguration/components/CustomManifestsForm.tsx +69 -182
- package/lib/ocm/components/clusterConfiguration/manifestsConfiguration/components/ExpandedManifest.tsx +1 -1
- package/lib/ocm/components/clusterConfiguration/manifestsConfiguration/components/utils.tsx +9 -15
- package/lib/ocm/components/clusterConfiguration/manifestsConfiguration/data/dataTypes.ts +0 -1
- package/lib/ocm/components/clusterDetail/ClusterDetailStatusMessages.tsx +2 -16
- package/lib/ocm/components/clusterWizard/ClusterDetails.tsx +9 -16
- package/lib/ocm/components/clusterWizard/ClusterDetailsForm.tsx +18 -16
- package/lib/ocm/components/clusterWizard/ClusterWizardContext.tsx +5 -3
- package/lib/ocm/components/clusterWizard/ClusterWizardContextProvider.tsx +75 -54
- package/lib/ocm/hooks/index.ts +1 -0
- package/lib/ocm/hooks/useOpenshiftVersions.tsx +1 -15
- package/lib/ocm/hooks/useSupportLevelsAPI.ts +54 -2
- package/lib/ocm/hooks/useUISettings.ts +71 -0
- package/lib/ocm/services/ClusterDetailsService.ts +3 -1
- package/lib/ocm/services/ClustersService.ts +0 -10
- package/lib/ocm/services/Day2ClusterService.ts +17 -3
- package/lib/ocm/services/UISettingsService.ts +17 -0
- package/lib/ocm/services/index.ts +1 -0
- package/lib/ocm/services/types.ts +5 -0
- package/package.json +3 -3
|
@@ -18,9 +18,9 @@ import {
|
|
|
18
18
|
useAlerts,
|
|
19
19
|
} from '../../../common';
|
|
20
20
|
import useSetClusterPermissions from '../../hooks/useSetClusterPermissions';
|
|
21
|
-
import useClusterCustomManifests from '../../hooks/useClusterCustomManifests';
|
|
22
|
-
import { ListManifestsExtended } from '../clusterConfiguration/manifestsConfiguration/data/dataTypes';
|
|
23
21
|
import { Cluster, InfraEnv } from '@openshift-assisted/types/assisted-installer-service';
|
|
22
|
+
import { useUISettings } from '../../hooks';
|
|
23
|
+
import { AlertVariant } from '@patternfly/react-core';
|
|
24
24
|
|
|
25
25
|
const addStepToClusterWizard = (
|
|
26
26
|
wizardStepIds: ClusterWizardStepsType[],
|
|
@@ -52,7 +52,7 @@ const removeStepFromClusterWizard = (
|
|
|
52
52
|
const getWizardStepIds = (
|
|
53
53
|
wizardStepIds: ClusterWizardStepsType[] | undefined,
|
|
54
54
|
staticIpView?: StaticIpView | 'dhcp-selected',
|
|
55
|
-
|
|
55
|
+
customManifestsStep?: boolean,
|
|
56
56
|
isSingleClusterFeatureEnabled?: boolean,
|
|
57
57
|
): ClusterWizardStepsType[] => {
|
|
58
58
|
let stepsCopy = wizardStepIds ? [...wizardStepIds] : [...defaultWizardSteps];
|
|
@@ -66,7 +66,7 @@ const getWizardStepIds = (
|
|
|
66
66
|
stepsCopy = removeStepFromClusterWizard(stepsCopy, 'static-ip-network-wide-configurations', 2);
|
|
67
67
|
}
|
|
68
68
|
|
|
69
|
-
if (
|
|
69
|
+
if (customManifestsStep) {
|
|
70
70
|
stepsCopy = addStepToClusterWizard(stepsCopy, 'networking', ['custom-manifests']);
|
|
71
71
|
} else {
|
|
72
72
|
stepsCopy = removeStepFromClusterWizard(stepsCopy, 'custom-manifests', 1);
|
|
@@ -79,12 +79,6 @@ const getWizardStepIds = (
|
|
|
79
79
|
return stepsCopy;
|
|
80
80
|
};
|
|
81
81
|
|
|
82
|
-
const validateIfCustomsManifestsNeedToBeFilled = (
|
|
83
|
-
customManifests: ListManifestsExtended | undefined,
|
|
84
|
-
): boolean => {
|
|
85
|
-
return (customManifests || []).some((customManifest) => customManifest.yamlContent === '');
|
|
86
|
-
};
|
|
87
|
-
|
|
88
82
|
const ClusterWizardContextProvider = ({
|
|
89
83
|
children,
|
|
90
84
|
cluster,
|
|
@@ -95,48 +89,71 @@ const ClusterWizardContextProvider = ({
|
|
|
95
89
|
infraEnv?: InfraEnv;
|
|
96
90
|
permissions?: AssistedInstallerOCMPermissionTypesListType;
|
|
97
91
|
}>) => {
|
|
92
|
+
const isSingleClusterFeatureEnabled = useFeature('ASSISTED_INSTALLER_SINGLE_CLUSTER_FEATURE');
|
|
98
93
|
const [currentStepId, setCurrentStepId] = React.useState<ClusterWizardStepsType>();
|
|
99
94
|
const [wizardStepIds, setWizardStepIds] = React.useState<ClusterWizardStepsType[]>();
|
|
100
|
-
const [
|
|
95
|
+
const [wizardPerPage, setWizardPerPage] = React.useState(10);
|
|
96
|
+
const [customManifestsStep, setCustomManifestsStep] = React.useState<boolean>(false);
|
|
101
97
|
const { state: locationState } = useLocation<ClusterWizardFlowStateType>();
|
|
102
|
-
const {
|
|
98
|
+
const {
|
|
99
|
+
uiSettings,
|
|
100
|
+
updateUISettings,
|
|
101
|
+
loading: UISettingsLoading,
|
|
102
|
+
error: UISettingsError,
|
|
103
|
+
} = useUISettings(cluster?.id);
|
|
104
|
+
const { clearAlerts, addAlert, alerts } = useAlerts();
|
|
103
105
|
const setClusterPermissions = useSetClusterPermissions();
|
|
104
|
-
const isSingleClusterFeatureEnabled = useFeature('ASSISTED_INSTALLER_SINGLE_CLUSTER_FEATURE');
|
|
105
|
-
const { clearAlerts } = useAlerts();
|
|
106
|
-
const [wizardPerPage, setWizardPerPage] = React.useState(10);
|
|
107
106
|
|
|
108
107
|
React.useEffect(() => {
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
108
|
+
if (!UISettingsLoading) {
|
|
109
|
+
const staticIpInfo = infraEnv ? getStaticIpInfo(infraEnv) : undefined;
|
|
110
|
+
const customManifestsStepEnabled = !!uiSettings?.addCustomManifests;
|
|
111
|
+
const customManifestsStepNeedsToBeFilled = !!(
|
|
112
|
+
uiSettings?.addCustomManifests && !uiSettings?.customManifestsAdded
|
|
113
|
+
);
|
|
114
|
+
|
|
115
|
+
const requiredStepId = getClusterWizardFirstStep(
|
|
116
|
+
locationState,
|
|
117
|
+
staticIpInfo,
|
|
118
|
+
cluster?.status,
|
|
119
|
+
cluster?.hosts,
|
|
120
|
+
isSingleClusterFeatureEnabled,
|
|
121
|
+
customManifestsStepNeedsToBeFilled,
|
|
122
|
+
);
|
|
123
|
+
|
|
124
|
+
const firstStepIds = getWizardStepIds(
|
|
125
|
+
wizardStepIds,
|
|
126
|
+
staticIpInfo?.view,
|
|
127
|
+
customManifestsStepEnabled,
|
|
128
|
+
isSingleClusterFeatureEnabled,
|
|
129
|
+
);
|
|
130
|
+
|
|
131
|
+
// Only move step if there is still none, or the user is at a forbidden step
|
|
132
|
+
if (
|
|
133
|
+
!currentStepId ||
|
|
134
|
+
(customManifestsStepNeedsToBeFilled && isStepAfter(currentStepId, requiredStepId))
|
|
135
|
+
) {
|
|
136
|
+
setCurrentStepId(requiredStepId);
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
setWizardStepIds(firstStepIds);
|
|
140
|
+
setClusterPermissions(cluster, permissions);
|
|
141
|
+
setCustomManifestsStep(!!uiSettings?.addCustomManifests);
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
if (
|
|
145
|
+
!!UISettingsError &&
|
|
146
|
+
!alerts.some((alert) => alert.title === "Couldn't retrieve UI settings")
|
|
147
|
+
) {
|
|
148
|
+
addAlert({
|
|
149
|
+
title: "Couldn't retrieve UI settings",
|
|
150
|
+
message: UISettingsError,
|
|
151
|
+
variant: AlertVariant.warning,
|
|
152
|
+
});
|
|
133
153
|
}
|
|
134
154
|
|
|
135
|
-
setWizardStepIds(firstStepIds);
|
|
136
|
-
setClusterPermissions(cluster, permissions);
|
|
137
|
-
setAddCustomManifests(hasManifests);
|
|
138
155
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
139
|
-
}, [
|
|
156
|
+
}, [uiSettings, UISettingsLoading, UISettingsError]);
|
|
140
157
|
|
|
141
158
|
const contextValue = React.useMemo<ClusterWizardContextType | null>(() => {
|
|
142
159
|
if (!wizardStepIds || !currentStepId) {
|
|
@@ -152,7 +169,7 @@ const ClusterWizardContextProvider = ({
|
|
|
152
169
|
const newStepIds = getWizardStepIds(
|
|
153
170
|
wizardStepIds,
|
|
154
171
|
staticIpInfo.view,
|
|
155
|
-
|
|
172
|
+
customManifestsStep,
|
|
156
173
|
isSingleClusterFeatureEnabled,
|
|
157
174
|
);
|
|
158
175
|
setWizardStepIds(newStepIds);
|
|
@@ -165,8 +182,8 @@ const ClusterWizardContextProvider = ({
|
|
|
165
182
|
setCurrentStepId(stepId);
|
|
166
183
|
};
|
|
167
184
|
|
|
168
|
-
const
|
|
169
|
-
|
|
185
|
+
const onSetAddCustomManifestsStep = (addCustomManifest: boolean) => {
|
|
186
|
+
setCustomManifestsStep(addCustomManifest);
|
|
170
187
|
setWizardStepIds(
|
|
171
188
|
getWizardStepIds(
|
|
172
189
|
wizardStepIds,
|
|
@@ -199,7 +216,7 @@ const ClusterWizardContextProvider = ({
|
|
|
199
216
|
setCurrentStepId('static-ip-network-wide-configurations');
|
|
200
217
|
}
|
|
201
218
|
setWizardStepIds(
|
|
202
|
-
getWizardStepIds(wizardStepIds, view,
|
|
219
|
+
getWizardStepIds(wizardStepIds, view, customManifestsStep, isSingleClusterFeatureEnabled),
|
|
203
220
|
);
|
|
204
221
|
},
|
|
205
222
|
onUpdateHostNetworkConfigType(type: HostsNetworkConfigurationType): void {
|
|
@@ -208,7 +225,7 @@ const ClusterWizardContextProvider = ({
|
|
|
208
225
|
getWizardStepIds(
|
|
209
226
|
wizardStepIds,
|
|
210
227
|
StaticIpView.FORM,
|
|
211
|
-
|
|
228
|
+
customManifestsStep,
|
|
212
229
|
isSingleClusterFeatureEnabled,
|
|
213
230
|
),
|
|
214
231
|
);
|
|
@@ -217,7 +234,7 @@ const ClusterWizardContextProvider = ({
|
|
|
217
234
|
getWizardStepIds(
|
|
218
235
|
wizardStepIds,
|
|
219
236
|
'dhcp-selected',
|
|
220
|
-
|
|
237
|
+
customManifestsStep,
|
|
221
238
|
isSingleClusterFeatureEnabled,
|
|
222
239
|
),
|
|
223
240
|
);
|
|
@@ -226,25 +243,29 @@ const ClusterWizardContextProvider = ({
|
|
|
226
243
|
wizardStepIds,
|
|
227
244
|
currentStepId,
|
|
228
245
|
setCurrentStepId: onSetCurrentStepId,
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
customManifests,
|
|
246
|
+
customManifestsStep,
|
|
247
|
+
setCustomManifestsStep: onSetAddCustomManifestsStep,
|
|
232
248
|
wizardPerPage,
|
|
233
249
|
setWizardPerPage,
|
|
250
|
+
uiSettings,
|
|
251
|
+
updateUISettings,
|
|
234
252
|
};
|
|
235
253
|
}, [
|
|
236
254
|
wizardStepIds,
|
|
237
255
|
currentStepId,
|
|
238
256
|
infraEnv,
|
|
239
|
-
|
|
240
|
-
customManifests,
|
|
257
|
+
customManifestsStep,
|
|
241
258
|
wizardPerPage,
|
|
242
259
|
isSingleClusterFeatureEnabled,
|
|
243
260
|
clearAlerts,
|
|
261
|
+
uiSettings,
|
|
262
|
+
updateUISettings,
|
|
244
263
|
]);
|
|
264
|
+
|
|
245
265
|
if (!contextValue) {
|
|
246
266
|
return null;
|
|
247
267
|
}
|
|
268
|
+
|
|
248
269
|
return (
|
|
249
270
|
<>
|
|
250
271
|
<ClusterWizardContext.Provider value={contextValue}>{children}</ClusterWizardContext.Provider>
|
package/lib/ocm/hooks/index.ts
CHANGED
|
@@ -4,3 +4,4 @@ export { default as useUsedClusterNames } from './useUsedClusterNames';
|
|
|
4
4
|
export { default as useInfraEnvId } from './useInfraEnvId';
|
|
5
5
|
export { default as usePullSecret } from './usePullSecret';
|
|
6
6
|
export { default as useClusterPreflightRequirements } from './useClusterPreflightRequirements';
|
|
7
|
+
export { default as useUISettings } from './useUISettings';
|
|
@@ -3,17 +3,12 @@ import { CpuArchitecture, OpenshiftVersionOptionType } from '../../common';
|
|
|
3
3
|
import { getApiErrorMessage, handleApiError } from '../api';
|
|
4
4
|
import { SupportedOpenshiftVersionsAPI } from '../services/apis';
|
|
5
5
|
import { getKeys } from '../../common/utils';
|
|
6
|
-
import {
|
|
7
|
-
Cluster,
|
|
8
|
-
ImportClusterParams,
|
|
9
|
-
OpenshiftVersion,
|
|
10
|
-
} from '@openshift-assisted/types/assisted-installer-service';
|
|
6
|
+
import { Cluster, OpenshiftVersion } from '@openshift-assisted/types/assisted-installer-service';
|
|
11
7
|
|
|
12
8
|
type OpenShiftVersion = Cluster['openshiftVersion'];
|
|
13
9
|
|
|
14
10
|
type UseOpenshiftVersionsType = {
|
|
15
11
|
versions: OpenshiftVersionOptionType[];
|
|
16
|
-
normalizeClusterVersion: (version: OpenShiftVersion) => ImportClusterParams['openshiftVersion'];
|
|
17
12
|
isSupportedOpenShiftVersion: (version: OpenShiftVersion) => boolean;
|
|
18
13
|
getCpuArchitectures: (version: OpenShiftVersion) => CpuArchitecture[];
|
|
19
14
|
error?: { title: string; message: string };
|
|
@@ -72,14 +67,6 @@ export default function useOpenshiftVersions(): UseOpenshiftVersionsType {
|
|
|
72
67
|
}
|
|
73
68
|
}, []);
|
|
74
69
|
|
|
75
|
-
const normalizeClusterVersion = React.useCallback(
|
|
76
|
-
(version: OpenShiftVersion) => {
|
|
77
|
-
const matchingVersion = findVersionItemByVersion(version);
|
|
78
|
-
return matchingVersion?.value || version;
|
|
79
|
-
},
|
|
80
|
-
[findVersionItemByVersion],
|
|
81
|
-
);
|
|
82
|
-
|
|
83
70
|
const isSupportedOpenShiftVersion = React.useCallback(
|
|
84
71
|
(version: OpenShiftVersion) => {
|
|
85
72
|
if (versions.length === 0) {
|
|
@@ -109,7 +96,6 @@ export default function useOpenshiftVersions(): UseOpenshiftVersionsType {
|
|
|
109
96
|
error,
|
|
110
97
|
loading: !error && versions.length === 0,
|
|
111
98
|
versions,
|
|
112
|
-
normalizeClusterVersion,
|
|
113
99
|
isSupportedOpenShiftVersion,
|
|
114
100
|
getCpuArchitectures,
|
|
115
101
|
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { CpuArchitecture, useAlerts } from '../../common';
|
|
2
|
+
import { CpuArchitecture, SupportedCpuArchitecture, useAlerts } from '../../common';
|
|
3
3
|
import {
|
|
4
4
|
ArchitectureSupportLevelMap,
|
|
5
5
|
NewFeatureSupportLevelMap,
|
|
@@ -8,11 +8,13 @@ import { getApiErrorMessage, handleApiError } from '../api';
|
|
|
8
8
|
import NewFeatureSupportLevelsAPI from '../../common/api/assisted-service/NewFeatureSupportLevelsAPI';
|
|
9
9
|
import { PlatformType } from '@openshift-assisted/types/./assisted-installer-service';
|
|
10
10
|
|
|
11
|
-
type SupportLevelAPIResources = 'architectures' | 'features';
|
|
11
|
+
type SupportLevelAPIResources = 'architectures' | 'features' | 'featureForAllCpus';
|
|
12
12
|
type UseSupportLevelAPIResponse<T extends SupportLevelAPIResources> = T extends 'architectures'
|
|
13
13
|
? ArchitectureSupportLevelMap | null
|
|
14
14
|
: T extends 'features'
|
|
15
15
|
? NewFeatureSupportLevelMap | null
|
|
16
|
+
: T extends 'featureForAllCpus'
|
|
17
|
+
? Record<SupportedCpuArchitecture, NewFeatureSupportLevelMap | null> | null
|
|
16
18
|
: null;
|
|
17
19
|
|
|
18
20
|
export default function useSupportLevelsAPI<T extends SupportLevelAPIResources>(
|
|
@@ -20,10 +22,13 @@ export default function useSupportLevelsAPI<T extends SupportLevelAPIResources>(
|
|
|
20
22
|
openshiftVersion?: string,
|
|
21
23
|
cpuArchitecture?: CpuArchitecture,
|
|
22
24
|
platformType?: PlatformType,
|
|
25
|
+
supportedCpuArchitectures?: SupportedCpuArchitecture[],
|
|
23
26
|
): UseSupportLevelAPIResponse<T> | null {
|
|
24
27
|
const [cpuArchitectures, setCpuArchitectures] =
|
|
25
28
|
React.useState<ArchitectureSupportLevelMap | null>(null);
|
|
26
29
|
const [features, setFeatures] = React.useState<NewFeatureSupportLevelMap | null>(null);
|
|
30
|
+
const [supportLevelData, setSupportLevelData] =
|
|
31
|
+
React.useState<Record<SupportedCpuArchitecture, NewFeatureSupportLevelMap | null>>();
|
|
27
32
|
const { addAlert } = useAlerts();
|
|
28
33
|
|
|
29
34
|
const fetchArchitecturesSupportLevels = React.useCallback(
|
|
@@ -72,10 +77,53 @@ export default function useSupportLevelsAPI<T extends SupportLevelAPIResources>(
|
|
|
72
77
|
[addAlert],
|
|
73
78
|
);
|
|
74
79
|
|
|
80
|
+
const fetchFeaturesSupportLevelsForAllCpuArchs = React.useCallback(
|
|
81
|
+
async (
|
|
82
|
+
supportedCpuArchitectures: SupportedCpuArchitecture[],
|
|
83
|
+
openshiftVersion: string,
|
|
84
|
+
platformType?: PlatformType,
|
|
85
|
+
) => {
|
|
86
|
+
try {
|
|
87
|
+
const data: Record<SupportedCpuArchitecture, NewFeatureSupportLevelMap | null> = {
|
|
88
|
+
x86_64: null,
|
|
89
|
+
arm64: null,
|
|
90
|
+
ppc64le: null,
|
|
91
|
+
s390x: null,
|
|
92
|
+
};
|
|
93
|
+
if (supportedCpuArchitectures) {
|
|
94
|
+
for (const cpuArch of supportedCpuArchitectures) {
|
|
95
|
+
const { data: features } = await NewFeatureSupportLevelsAPI.featuresSupportLevel(
|
|
96
|
+
openshiftVersion,
|
|
97
|
+
cpuArch,
|
|
98
|
+
platformType,
|
|
99
|
+
);
|
|
100
|
+
data[cpuArch] = features.features;
|
|
101
|
+
}
|
|
102
|
+
setSupportLevelData(data);
|
|
103
|
+
}
|
|
104
|
+
} catch (e) {
|
|
105
|
+
handleApiError(e, () =>
|
|
106
|
+
addAlert({
|
|
107
|
+
title: 'Failed to retrieve feature support levels',
|
|
108
|
+
message: getApiErrorMessage(e),
|
|
109
|
+
}),
|
|
110
|
+
);
|
|
111
|
+
setFeatures(null);
|
|
112
|
+
}
|
|
113
|
+
},
|
|
114
|
+
[addAlert],
|
|
115
|
+
);
|
|
116
|
+
|
|
75
117
|
React.useEffect(() => {
|
|
76
118
|
if (openshiftVersion) {
|
|
77
119
|
if (resourceKind === 'architectures') {
|
|
78
120
|
void fetchArchitecturesSupportLevels(openshiftVersion);
|
|
121
|
+
} else if (resourceKind === 'featureForAllCpus' && supportedCpuArchitectures) {
|
|
122
|
+
void fetchFeaturesSupportLevelsForAllCpuArchs(
|
|
123
|
+
supportedCpuArchitectures,
|
|
124
|
+
openshiftVersion,
|
|
125
|
+
platformType,
|
|
126
|
+
);
|
|
79
127
|
} else {
|
|
80
128
|
void fetchFeaturesSupportLevels(openshiftVersion, cpuArchitecture, platformType);
|
|
81
129
|
}
|
|
@@ -87,10 +135,14 @@ export default function useSupportLevelsAPI<T extends SupportLevelAPIResources>(
|
|
|
87
135
|
fetchFeaturesSupportLevels,
|
|
88
136
|
resourceKind,
|
|
89
137
|
platformType,
|
|
138
|
+
supportedCpuArchitectures,
|
|
139
|
+
fetchFeaturesSupportLevelsForAllCpuArchs,
|
|
90
140
|
]);
|
|
91
141
|
|
|
92
142
|
if (resourceKind === 'architectures') {
|
|
93
143
|
return cpuArchitectures as UseSupportLevelAPIResponse<T>;
|
|
144
|
+
} else if (resourceKind === 'featureForAllCpus') {
|
|
145
|
+
return supportLevelData as UseSupportLevelAPIResponse<T>;
|
|
94
146
|
} else {
|
|
95
147
|
return features as UseSupportLevelAPIResponse<T>;
|
|
96
148
|
}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Cluster } from '@openshift-assisted/types/./assisted-installer-service';
|
|
3
|
+
import { UISettingService, UISettingsValues } from '../services';
|
|
4
|
+
import { ClustersAPI } from '../services/apis';
|
|
5
|
+
|
|
6
|
+
const useUISettings = (clusterId?: Cluster['id']) => {
|
|
7
|
+
const [uiSettings, setUISettings] = React.useState<UISettingsValues>();
|
|
8
|
+
const [loading, setLoading] = React.useState(true);
|
|
9
|
+
const [error, setError] = React.useState<string>('');
|
|
10
|
+
|
|
11
|
+
const updateUISettings = React.useCallback(
|
|
12
|
+
async (newSettings: UISettingsValues) => {
|
|
13
|
+
if (clusterId) {
|
|
14
|
+
const updatedSettings = { ...uiSettings, ...newSettings };
|
|
15
|
+
try {
|
|
16
|
+
await UISettingService.update(clusterId, updatedSettings);
|
|
17
|
+
setUISettings(updatedSettings);
|
|
18
|
+
} catch (e) {
|
|
19
|
+
throw new Error();
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
[clusterId, uiSettings],
|
|
24
|
+
);
|
|
25
|
+
|
|
26
|
+
React.useEffect(() => {
|
|
27
|
+
const handleUISettingsError = async () => {
|
|
28
|
+
if (clusterId) {
|
|
29
|
+
try {
|
|
30
|
+
const { data: customManifests } = await ClustersAPI.getManifests(clusterId);
|
|
31
|
+
|
|
32
|
+
const mockUISettings: UISettingsValues = {
|
|
33
|
+
addCustomManifests: !!customManifests.length,
|
|
34
|
+
customManifestsAdded: !!customManifests.length,
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
setUISettings(mockUISettings);
|
|
38
|
+
} catch (error) {
|
|
39
|
+
setError('Failed to retrieve cluster custom manifests information');
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
const fetchUISettings = async () => {
|
|
45
|
+
if (clusterId) {
|
|
46
|
+
try {
|
|
47
|
+
const settings = await UISettingService.fetch(clusterId);
|
|
48
|
+
setUISettings(settings);
|
|
49
|
+
} catch (e) {
|
|
50
|
+
await handleUISettingsError();
|
|
51
|
+
}
|
|
52
|
+
} else {
|
|
53
|
+
setUISettings({});
|
|
54
|
+
}
|
|
55
|
+
setLoading(false);
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
if (!uiSettings) {
|
|
59
|
+
void fetchUISettings();
|
|
60
|
+
}
|
|
61
|
+
}, [clusterId, setUISettings, uiSettings]);
|
|
62
|
+
|
|
63
|
+
const returnValue = React.useMemo(
|
|
64
|
+
() => ({ uiSettings, loading, error, updateUISettings }),
|
|
65
|
+
[uiSettings, loading, error, updateUISettings],
|
|
66
|
+
);
|
|
67
|
+
|
|
68
|
+
return returnValue;
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
export default useUISettings;
|
|
@@ -92,6 +92,7 @@ const ClusterDetailsService = {
|
|
|
92
92
|
cluster,
|
|
93
93
|
infraEnv,
|
|
94
94
|
urlSearchParams,
|
|
95
|
+
addCustomManifests,
|
|
95
96
|
...args
|
|
96
97
|
}: {
|
|
97
98
|
cluster?: Cluster;
|
|
@@ -100,6 +101,7 @@ const ClusterDetailsService = {
|
|
|
100
101
|
managedDomains: ManagedDomain[];
|
|
101
102
|
ocpVersions: OpenshiftVersionOptionType[];
|
|
102
103
|
urlSearchParams: string;
|
|
104
|
+
addCustomManifests?: boolean;
|
|
103
105
|
}): OcmClusterDetailsValues {
|
|
104
106
|
const values = getClusterDetailsInitialValues({
|
|
105
107
|
cluster,
|
|
@@ -118,7 +120,7 @@ const ClusterDetailsService = {
|
|
|
118
120
|
...values,
|
|
119
121
|
cpuArchitecture,
|
|
120
122
|
hostsNetworkConfigurationType,
|
|
121
|
-
addCustomManifest:
|
|
123
|
+
addCustomManifest: !!addCustomManifests,
|
|
122
124
|
isCMNSupported: true,
|
|
123
125
|
};
|
|
124
126
|
},
|
|
@@ -11,7 +11,6 @@ import {
|
|
|
11
11
|
} from '../components/clusterConfiguration/manifestsConfiguration/data/dataTypes';
|
|
12
12
|
import {
|
|
13
13
|
Cluster,
|
|
14
|
-
CreateManifestParams,
|
|
15
14
|
Host,
|
|
16
15
|
InfraEnvCreateParams,
|
|
17
16
|
UpdateManifestParams,
|
|
@@ -138,15 +137,6 @@ const ClustersService = {
|
|
|
138
137
|
return Promise.all(promises);
|
|
139
138
|
},
|
|
140
139
|
|
|
141
|
-
createDummyManifest(clusterId: Cluster['id']) {
|
|
142
|
-
const dummyManifest: CreateManifestParams = {
|
|
143
|
-
folder: 'manifests' as 'manifests' | 'openshift',
|
|
144
|
-
fileName: 'manifest1.yaml',
|
|
145
|
-
content: '',
|
|
146
|
-
};
|
|
147
|
-
return ClustersAPI.createCustomManifest(clusterId, dummyManifest);
|
|
148
|
-
},
|
|
149
|
-
|
|
150
140
|
updateCustomManifest(
|
|
151
141
|
existingManifest: CustomManifestValues,
|
|
152
142
|
updatedManifest: CustomManifestValues,
|
|
@@ -3,7 +3,11 @@ import { ClustersAPI } from './apis';
|
|
|
3
3
|
import { CpuArchitecture, SupportedCpuArchitecture } from '../../common';
|
|
4
4
|
import { OcmClusterType } from '../components/AddHosts/types';
|
|
5
5
|
import { mapOcmArchToCpuArchitecture } from './CpuArchitectureService';
|
|
6
|
-
import {
|
|
6
|
+
import {
|
|
7
|
+
Cluster,
|
|
8
|
+
Platform,
|
|
9
|
+
PlatformType,
|
|
10
|
+
} from '@openshift-assisted/types/assisted-installer-service';
|
|
7
11
|
|
|
8
12
|
export const getApiVipDnsName = (ocmCluster: OcmClusterType) => {
|
|
9
13
|
let apiVipDnsname = '';
|
|
@@ -30,12 +34,20 @@ export const getApiVipDnsName = (ocmCluster: OcmClusterType) => {
|
|
|
30
34
|
return { apiVipDnsname, errorType: apiVipDnsname ? '' : urlType };
|
|
31
35
|
};
|
|
32
36
|
|
|
37
|
+
export const mapCloudProviderToPlatformType = (cloudProviderId?: string) => {
|
|
38
|
+
const platformType = cloudProviderId === 'external' ? 'oci' : cloudProviderId;
|
|
39
|
+
const platform: Platform = {
|
|
40
|
+
type: (platformType as PlatformType) || 'baremetal',
|
|
41
|
+
};
|
|
42
|
+
return platform;
|
|
43
|
+
};
|
|
44
|
+
|
|
33
45
|
const Day2ClusterService = {
|
|
34
46
|
getOpenshiftClusterId(ocmCluster?: OcmClusterType) {
|
|
35
47
|
return ocmCluster && ocmCluster.external_id;
|
|
36
48
|
},
|
|
37
49
|
|
|
38
|
-
async fetchCluster(ocmCluster: OcmClusterType, pullSecret: string
|
|
50
|
+
async fetchCluster(ocmCluster: OcmClusterType, pullSecret: string) {
|
|
39
51
|
const openshiftClusterId = Day2ClusterService.getOpenshiftClusterId(ocmCluster);
|
|
40
52
|
|
|
41
53
|
if (!openshiftClusterId) {
|
|
@@ -53,7 +65,7 @@ const Day2ClusterService = {
|
|
|
53
65
|
ocmCluster.display_name || ocmCluster.name || openshiftClusterId,
|
|
54
66
|
getApiVipDnsName(ocmCluster).apiVipDnsname,
|
|
55
67
|
pullSecret,
|
|
56
|
-
|
|
68
|
+
ocmCluster.openshift_version,
|
|
57
69
|
mapOcmArchToCpuArchitecture(ocmCluster.cpu_architecture) || CpuArchitecture.x86,
|
|
58
70
|
);
|
|
59
71
|
},
|
|
@@ -69,6 +81,7 @@ const Day2ClusterService = {
|
|
|
69
81
|
if (day2Clusters.length > 0) {
|
|
70
82
|
return day2Clusters[0].id;
|
|
71
83
|
}
|
|
84
|
+
|
|
72
85
|
return undefined;
|
|
73
86
|
},
|
|
74
87
|
|
|
@@ -117,6 +130,7 @@ const Day2ClusterService = {
|
|
|
117
130
|
// The field "cpu_architecture" is calculated based on the existing hosts' architecture
|
|
118
131
|
// It can be a specific architecture, or "multi" if hosts from several architectures have been discovered
|
|
119
132
|
cpuArchitecture: mapOcmArchToCpuArchitecture(ocmCluster.cpu_architecture),
|
|
133
|
+
platform: mapCloudProviderToPlatformType(ocmCluster.cloud_provider?.id),
|
|
120
134
|
};
|
|
121
135
|
}
|
|
122
136
|
return treakedCluster;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Cluster } from '@openshift-assisted/types/./assisted-installer-service';
|
|
2
|
+
import { UISettingsAPI } from '../../common/api/assisted-service';
|
|
3
|
+
import { UISettingsValues } from './types';
|
|
4
|
+
|
|
5
|
+
const PREFIX_LENGHT = 6;
|
|
6
|
+
|
|
7
|
+
const UISettingService = {
|
|
8
|
+
async fetch(clusterId: Cluster['id']) {
|
|
9
|
+
const { data } = await UISettingsAPI.get(clusterId);
|
|
10
|
+
return (data.length ? JSON.parse(data.slice(PREFIX_LENGHT)) : {}) as UISettingsValues;
|
|
11
|
+
},
|
|
12
|
+
update(clusterId: Cluster['id'], data: UISettingsValues) {
|
|
13
|
+
return UISettingsAPI.put(clusterId, `AI_UI:${JSON.stringify(data)}`);
|
|
14
|
+
},
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export default UISettingService;
|
|
@@ -7,5 +7,6 @@ export { default as DiscoveryImageFormService } from './DiscoveryImageFormServic
|
|
|
7
7
|
export { default as DiskEncryptionService } from './DiskEncryptionService';
|
|
8
8
|
export { default as OperatorsService } from './OperatorsService';
|
|
9
9
|
export { default as NewFeatureSupportLevelsService } from './NewFeatureSupportLevelsService';
|
|
10
|
+
export { default as UISettingService } from './UISettingsService';
|
|
10
11
|
export * from './types';
|
|
11
12
|
export * as APIs from './apis';
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"dependencies": {
|
|
3
|
-
"@openshift-assisted/locales": "2.9.
|
|
4
|
-
"@openshift-assisted/types": "2.9.
|
|
3
|
+
"@openshift-assisted/locales": "2.9.9-cim",
|
|
4
|
+
"@openshift-assisted/types": "2.9.9-cim",
|
|
5
5
|
"axios-case-converter": "^0.11.1",
|
|
6
6
|
"camel-case": "^4.1.2",
|
|
7
7
|
"cidr-tools": "^4.3.0",
|
|
@@ -127,5 +127,5 @@
|
|
|
127
127
|
]
|
|
128
128
|
}
|
|
129
129
|
},
|
|
130
|
-
"version": "2.9.
|
|
130
|
+
"version": "2.9.9-cim"
|
|
131
131
|
}
|