@openshift-assisted/ui-lib 2.37.2 → 2.38.0
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/ClusterDetailsFormFields.d.ts.map +1 -1
- package/build/@types/cim/components/ClusterDeployment/wizardTransition.d.ts +1 -1
- package/build/@types/cim/components/ClusterDeployment/wizardTransition.d.ts.map +1 -1
- package/build/@types/cim/components/common/constants.d.ts.map +1 -1
- package/build/@types/cim/components/helpers/toAssisted.d.ts.map +1 -1
- package/build/@types/cim/components/modals/AddHostModal.d.ts.map +1 -1
- package/build/@types/cim/types/k8s/infra-env-k8s-resource.d.ts +1 -0
- package/build/@types/cim/types/k8s/infra-env-k8s-resource.d.ts.map +1 -1
- package/build/@types/common/api/assisted-service/BundleAPI.d.ts +8 -0
- package/build/@types/common/api/assisted-service/BundleAPI.d.ts.map +1 -0
- package/build/@types/common/api/assisted-service/OperatorsAPI.d.ts +6 -0
- package/build/@types/common/api/assisted-service/OperatorsAPI.d.ts.map +1 -0
- package/build/@types/common/components/clusterConfiguration/ControlPlaneNodesDropdown.d.ts +7 -0
- package/build/@types/common/components/clusterConfiguration/ControlPlaneNodesDropdown.d.ts.map +1 -0
- package/build/@types/common/components/clusterConfiguration/DiscoveryImageConfigForm.d.ts.map +1 -1
- package/build/@types/common/components/clusterConfiguration/DownloadIso.d.ts +2 -1
- package/build/@types/common/components/clusterConfiguration/DownloadIso.d.ts.map +1 -1
- package/build/@types/common/components/clusterWizard/types.d.ts +3 -1
- package/build/@types/common/components/clusterWizard/types.d.ts.map +1 -1
- package/build/@types/common/components/hosts/HostRowDetail.d.ts.map +1 -1
- package/build/@types/common/components/storage/DisksTable.d.ts.map +1 -1
- package/build/@types/common/config/constants.d.ts +6 -0
- package/build/@types/common/config/constants.d.ts.map +1 -1
- package/build/@types/common/config/docs_links.d.ts +1 -1
- package/build/@types/common/config/docs_links.d.ts.map +1 -1
- package/build/@types/common/selectors/clusterSelectors.d.ts +1 -0
- package/build/@types/common/selectors/clusterSelectors.d.ts.map +1 -1
- package/build/@types/common/types/clusters.d.ts +8 -0
- package/build/@types/common/types/clusters.d.ts.map +1 -1
- package/build/@types/common/types/ui-settings.d.ts +1 -0
- package/build/@types/common/types/ui-settings.d.ts.map +1 -1
- package/build/@types/ocm/components/SentryErrorMonitorContextProvider.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterConfiguration/ControlPlaneNodesDropdown.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterConfiguration/DiscoveryImageModal.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterConfiguration/operators/AuthorinoCheckbox.d.ts +8 -0
- package/build/@types/ocm/components/clusterConfiguration/operators/AuthorinoCheckbox.d.ts.map +1 -0
- package/build/@types/ocm/components/clusterConfiguration/operators/CnvCheckbox.d.ts +4 -1
- package/build/@types/ocm/components/clusterConfiguration/operators/CnvCheckbox.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterConfiguration/operators/LsoCheckbox.d.ts +8 -0
- package/build/@types/ocm/components/clusterConfiguration/operators/LsoCheckbox.d.ts.map +1 -0
- package/build/@types/ocm/components/clusterConfiguration/operators/LvmCheckbox.d.ts +4 -1
- package/build/@types/ocm/components/clusterConfiguration/operators/LvmCheckbox.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterConfiguration/operators/MceCheckbox.d.ts +4 -1
- package/build/@types/ocm/components/clusterConfiguration/operators/MceCheckbox.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterConfiguration/operators/MtvOperatorCheckbox.d.ts +4 -1
- package/build/@types/ocm/components/clusterConfiguration/operators/MtvOperatorCheckbox.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterConfiguration/operators/NmstateCheckbox.d.ts +10 -0
- package/build/@types/ocm/components/clusterConfiguration/operators/NmstateCheckbox.d.ts.map +1 -0
- package/build/@types/ocm/components/clusterConfiguration/operators/NmstateRequirements.d.ts +7 -0
- package/build/@types/ocm/components/clusterConfiguration/operators/NmstateRequirements.d.ts.map +1 -0
- package/build/@types/ocm/components/clusterConfiguration/operators/NodeFeatureDiscoveryCheckbox.d.ts +8 -0
- package/build/@types/ocm/components/clusterConfiguration/operators/NodeFeatureDiscoveryCheckbox.d.ts.map +1 -0
- package/build/@types/ocm/components/clusterConfiguration/operators/NvidiaGpuCheckbox.d.ts +8 -0
- package/build/@types/ocm/components/clusterConfiguration/operators/NvidiaGpuCheckbox.d.ts.map +1 -0
- package/build/@types/ocm/components/clusterConfiguration/operators/OdfCheckbox.d.ts +5 -1
- package/build/@types/ocm/components/clusterConfiguration/operators/OdfCheckbox.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterConfiguration/operators/OpenShiftAICheckbox.d.ts +5 -1
- package/build/@types/ocm/components/clusterConfiguration/operators/OpenShiftAICheckbox.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterConfiguration/operators/OscCheckbox.d.ts +5 -1
- package/build/@types/ocm/components/clusterConfiguration/operators/OscCheckbox.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterConfiguration/operators/PipelinesChekbox.d.ts +8 -0
- package/build/@types/ocm/components/clusterConfiguration/operators/PipelinesChekbox.d.ts.map +1 -0
- package/build/@types/ocm/components/clusterConfiguration/operators/ServerlessCheckbox.d.ts +8 -0
- package/build/@types/ocm/components/clusterConfiguration/operators/ServerlessCheckbox.d.ts.map +1 -0
- package/build/@types/ocm/components/clusterConfiguration/operators/ServicemeshCheckbox.d.ts +8 -0
- package/build/@types/ocm/components/clusterConfiguration/operators/ServicemeshCheckbox.d.ts.map +1 -0
- package/build/@types/ocm/components/clusterConfiguration/operators/SupportedOperators.d.ts +24 -0
- package/build/@types/ocm/components/clusterConfiguration/operators/SupportedOperators.d.ts.map +1 -0
- package/build/@types/ocm/components/clusterWizard/ClusterDetails.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterWizard/Operators.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterWizard/OperatorsStep.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterWizard/wizardTransition.d.ts +1 -1
- package/build/@types/ocm/components/clusterWizard/wizardTransition.d.ts.map +1 -1
- package/build/@types/ocm/components/featureSupportLevels/featureStateUtils.d.ts.map +1 -1
- package/build/@types/ocm/config/constants.d.ts +2 -0
- package/build/@types/ocm/config/constants.d.ts.map +1 -1
- package/build/@types/ocm/sentry.d.ts +2 -2
- package/build/@types/ocm/sentry.d.ts.map +1 -1
- package/build/@types/ocm/services/BundleService.d.ts +6 -0
- package/build/@types/ocm/services/BundleService.d.ts.map +1 -0
- package/build/@types/ocm/services/ClustersService.d.ts +1 -0
- package/build/@types/ocm/services/ClustersService.d.ts.map +1 -1
- package/build/@types/ocm/services/OperatorsService.d.ts +1 -0
- package/build/@types/ocm/services/OperatorsService.d.ts.map +1 -1
- package/build/@types/ocm/store/slices/current-cluster/slice.d.ts +1 -0
- package/build/@types/ocm/store/slices/current-cluster/slice.d.ts.map +1 -1
- package/build/cjs/cim/components/ClusterDeployment/ClusterDetailsFormFields.js +4 -5
- package/build/cjs/cim/components/ClusterDeployment/ClusterDetailsFormFields.js.map +1 -1
- package/build/cjs/cim/components/InfraEnv/OpenshiftVersionDropdown.js +1 -1
- package/build/cjs/cim/components/InfraEnv/OpenshiftVersionDropdown.js.map +1 -1
- package/build/cjs/cim/components/common/constants.js +1 -1
- package/build/cjs/cim/components/common/constants.js.map +1 -1
- package/build/cjs/cim/components/helpers/toAssisted.js +2 -1
- package/build/cjs/cim/components/helpers/toAssisted.js.map +1 -1
- package/build/cjs/cim/components/modals/AddHostModal.js +4 -5
- package/build/cjs/cim/components/modals/AddHostModal.js.map +1 -1
- package/build/cjs/common/api/assisted-service/BundleAPI.js +16 -0
- package/build/cjs/common/api/assisted-service/BundleAPI.js.map +1 -0
- package/build/cjs/common/api/assisted-service/OperatorsAPI.js +13 -0
- package/build/cjs/common/api/assisted-service/OperatorsAPI.js.map +1 -0
- package/build/cjs/common/components/clusterConfiguration/ControlPlaneNodesDropdown.js +41 -0
- package/build/cjs/common/components/clusterConfiguration/ControlPlaneNodesDropdown.js.map +1 -0
- package/build/cjs/common/components/clusterConfiguration/DiscoveryImageConfigForm.js +4 -5
- package/build/cjs/common/components/clusterConfiguration/DiscoveryImageConfigForm.js.map +1 -1
- package/build/cjs/common/components/clusterConfiguration/DiscoveryImageTypeControlGroup.js +5 -5
- package/build/cjs/common/components/clusterConfiguration/DiscoveryImageTypeControlGroup.js.map +1 -1
- package/build/cjs/common/components/clusterConfiguration/DownloadIso.js +6 -2
- package/build/cjs/common/components/clusterConfiguration/DownloadIso.js.map +1 -1
- package/build/cjs/common/components/clusterWizard/clusterDetailsValidation.js +2 -2
- package/build/cjs/common/components/clusterWizard/clusterDetailsValidation.js.map +1 -1
- package/build/cjs/common/components/hosts/AITableMemo.js +16 -13
- package/build/cjs/common/components/hosts/AITableMemo.js.map +1 -1
- package/build/cjs/common/components/hosts/HostRowDetail.js +35 -1
- package/build/cjs/common/components/hosts/HostRowDetail.js.map +1 -1
- package/build/cjs/common/components/storage/DisksTable.js +16 -10
- package/build/cjs/common/components/storage/DisksTable.js.map +1 -1
- package/build/cjs/common/config/constants.js +12 -1
- package/build/cjs/common/config/constants.js.map +1 -1
- package/build/cjs/common/config/docs_links.js +1 -1
- package/build/cjs/common/config/docs_links.js.map +1 -1
- package/build/cjs/common/selectors/clusterSelectors.js +7 -1
- package/build/cjs/common/selectors/clusterSelectors.js.map +1 -1
- package/build/cjs/common/types/clusters.js.map +1 -1
- package/build/cjs/ocm/components/SentryErrorMonitorContextProvider.js.map +1 -1
- package/build/cjs/ocm/components/clusterConfiguration/ControlPlaneNodesDropdown.js +10 -9
- package/build/cjs/ocm/components/clusterConfiguration/ControlPlaneNodesDropdown.js.map +1 -1
- package/build/cjs/ocm/components/clusterConfiguration/DiscoveryImageModal.js +14 -1
- package/build/cjs/ocm/components/clusterConfiguration/DiscoveryImageModal.js.map +1 -1
- package/build/cjs/ocm/components/clusterConfiguration/OcmClusterDetailsFormFields.js +2 -2
- package/build/cjs/ocm/components/clusterConfiguration/OcmClusterDetailsFormFields.js.map +1 -1
- package/build/cjs/ocm/components/clusterConfiguration/operators/AuthorinoCheckbox.js +29 -0
- package/build/cjs/ocm/components/clusterConfiguration/operators/AuthorinoCheckbox.js.map +1 -0
- package/build/cjs/ocm/components/clusterConfiguration/operators/CnvCheckbox.js +3 -20
- package/build/cjs/ocm/components/clusterConfiguration/operators/CnvCheckbox.js.map +1 -1
- package/build/cjs/ocm/components/clusterConfiguration/operators/LsoCheckbox.js +29 -0
- package/build/cjs/ocm/components/clusterConfiguration/operators/LsoCheckbox.js.map +1 -0
- package/build/cjs/ocm/components/clusterConfiguration/operators/LvmCheckbox.js +5 -21
- package/build/cjs/ocm/components/clusterConfiguration/operators/LvmCheckbox.js.map +1 -1
- package/build/cjs/ocm/components/clusterConfiguration/operators/MceCheckbox.js +6 -7
- package/build/cjs/ocm/components/clusterConfiguration/operators/MceCheckbox.js.map +1 -1
- package/build/cjs/ocm/components/clusterConfiguration/operators/MtvOperatorCheckbox.js +8 -13
- package/build/cjs/ocm/components/clusterConfiguration/operators/MtvOperatorCheckbox.js.map +1 -1
- package/build/cjs/ocm/components/clusterConfiguration/operators/NmstateCheckbox.js +30 -0
- package/build/cjs/ocm/components/clusterConfiguration/operators/NmstateCheckbox.js.map +1 -0
- package/build/cjs/ocm/components/clusterConfiguration/operators/NmstateRequirements.js +48 -0
- package/build/cjs/ocm/components/clusterConfiguration/operators/NmstateRequirements.js.map +1 -0
- package/build/cjs/ocm/components/clusterConfiguration/operators/NodeFeatureDiscoveryCheckbox.js +29 -0
- package/build/cjs/ocm/components/clusterConfiguration/operators/NodeFeatureDiscoveryCheckbox.js.map +1 -0
- package/build/cjs/ocm/components/clusterConfiguration/operators/NvidiaGpuCheckbox.js +29 -0
- package/build/cjs/ocm/components/clusterConfiguration/operators/NvidiaGpuCheckbox.js.map +1 -0
- package/build/cjs/ocm/components/clusterConfiguration/operators/OdfCheckbox.js +7 -18
- package/build/cjs/ocm/components/clusterConfiguration/operators/OdfCheckbox.js.map +1 -1
- package/build/cjs/ocm/components/clusterConfiguration/operators/OpenShiftAICheckbox.js +4 -17
- package/build/cjs/ocm/components/clusterConfiguration/operators/OpenShiftAICheckbox.js.map +1 -1
- package/build/cjs/ocm/components/clusterConfiguration/operators/OscCheckbox.js +3 -12
- package/build/cjs/ocm/components/clusterConfiguration/operators/OscCheckbox.js.map +1 -1
- package/build/cjs/ocm/components/clusterConfiguration/operators/PipelinesChekbox.js +29 -0
- package/build/cjs/ocm/components/clusterConfiguration/operators/PipelinesChekbox.js.map +1 -0
- package/build/cjs/ocm/components/clusterConfiguration/operators/ServerlessCheckbox.js +29 -0
- package/build/cjs/ocm/components/clusterConfiguration/operators/ServerlessCheckbox.js.map +1 -0
- package/build/cjs/ocm/components/clusterConfiguration/operators/ServicemeshCheckbox.js +29 -0
- package/build/cjs/ocm/components/clusterConfiguration/operators/ServicemeshCheckbox.js.map +1 -0
- package/build/cjs/ocm/components/clusterConfiguration/operators/SupportedOperators.js +73 -0
- package/build/cjs/ocm/components/clusterConfiguration/operators/SupportedOperators.js.map +1 -0
- package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/FormViewHostsFields.js +1 -1
- package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/FormViewHostsFields.js.map +1 -1
- package/build/cjs/ocm/components/clusterDetail/AssistedInstallerDetailCard.js +1 -1
- package/build/cjs/ocm/components/clusterDetail/AssistedInstallerDetailCard.js.map +1 -1
- package/build/cjs/ocm/components/clusterWizard/ClusterDetails.js +4 -0
- package/build/cjs/ocm/components/clusterWizard/ClusterDetails.js.map +1 -1
- package/build/cjs/ocm/components/clusterWizard/Operators.js +9 -1
- package/build/cjs/ocm/components/clusterWizard/Operators.js.map +1 -1
- package/build/cjs/ocm/components/clusterWizard/OperatorsStep.js +209 -22
- package/build/cjs/ocm/components/clusterWizard/OperatorsStep.js.map +1 -1
- package/build/cjs/ocm/components/clusterWizard/wizardTransition.js +1 -1
- package/build/cjs/ocm/components/clusterWizard/wizardTransition.js.map +1 -1
- package/build/cjs/ocm/components/featureSupportLevels/featureStateUtils.js +40 -0
- package/build/cjs/ocm/components/featureSupportLevels/featureStateUtils.js.map +1 -1
- package/build/cjs/ocm/config/constants.js +155 -1
- package/build/cjs/ocm/config/constants.js.map +1 -1
- package/build/cjs/ocm/sentry.js +1 -1
- package/build/cjs/ocm/sentry.js.map +1 -1
- package/build/cjs/ocm/services/BundleService.js +20 -0
- package/build/cjs/ocm/services/BundleService.js.map +1 -0
- package/build/cjs/ocm/services/ClustersService.js +33 -1
- package/build/cjs/ocm/services/ClustersService.js.map +1 -1
- package/build/cjs/ocm/services/OperatorsService.js +16 -8
- package/build/cjs/ocm/services/OperatorsService.js.map +1 -1
- package/lib/cim/components/ClusterDeployment/ClusterDetailsFormFields.tsx +4 -6
- package/lib/cim/components/InfraEnv/OpenshiftVersionDropdown.tsx +1 -1
- package/lib/cim/components/common/constants.ts +1 -2
- package/lib/cim/components/helpers/toAssisted.ts +1 -0
- package/lib/cim/components/modals/AddHostModal.tsx +4 -5
- package/lib/cim/types/k8s/infra-env-k8s-resource.ts +1 -0
- package/lib/common/api/assisted-service/BundleAPI.ts +18 -0
- package/lib/common/api/assisted-service/OperatorsAPI.ts +13 -0
- package/lib/common/components/clusterConfiguration/ControlPlaneNodesDropdown.tsx +93 -0
- package/lib/common/components/clusterConfiguration/DiscoveryImageConfigForm.tsx +10 -12
- package/lib/common/components/clusterConfiguration/DiscoveryImageTypeControlGroup.tsx +9 -9
- package/lib/common/components/clusterConfiguration/DownloadIso.tsx +9 -1
- package/lib/common/components/clusterWizard/clusterDetailsValidation.ts +1 -1
- package/lib/common/components/clusterWizard/types.ts +4 -2
- package/lib/common/components/hosts/AITableMemo.tsx +1 -1
- package/lib/common/components/hosts/HostRowDetail.tsx +71 -1
- package/lib/common/components/storage/DisksTable.tsx +25 -18
- package/lib/common/config/constants.ts +12 -0
- package/lib/common/config/docs_links.ts +1 -1
- package/lib/common/selectors/clusterSelectors.ts +8 -0
- package/lib/common/types/clusters.ts +8 -0
- package/lib/common/types/ui-settings.ts +1 -0
- package/lib/ocm/components/SentryErrorMonitorContextProvider.tsx +1 -2
- package/lib/ocm/components/clusterConfiguration/ControlPlaneNodesDropdown.tsx +13 -12
- package/lib/ocm/components/clusterConfiguration/DiscoveryImageModal.tsx +24 -1
- package/lib/ocm/components/clusterConfiguration/OcmClusterDetailsFormFields.tsx +2 -2
- package/lib/ocm/components/clusterConfiguration/operators/AuthorinoCheckbox.tsx +63 -0
- package/lib/ocm/components/clusterConfiguration/operators/CnvCheckbox.tsx +7 -31
- package/lib/ocm/components/clusterConfiguration/operators/LsoCheckbox.tsx +63 -0
- package/lib/ocm/components/clusterConfiguration/operators/LvmCheckbox.tsx +8 -26
- package/lib/ocm/components/clusterConfiguration/operators/MceCheckbox.tsx +10 -3
- package/lib/ocm/components/clusterConfiguration/operators/MtvOperatorCheckbox.tsx +23 -12
- package/lib/ocm/components/clusterConfiguration/operators/NmstateCheckbox.tsx +76 -0
- package/lib/ocm/components/clusterConfiguration/operators/NmstateRequirements.tsx +53 -0
- package/lib/ocm/components/clusterConfiguration/operators/NodeFeatureDiscoveryCheckbox.tsx +66 -0
- package/lib/ocm/components/clusterConfiguration/operators/NvidiaGpuCheckbox.tsx +63 -0
- package/lib/ocm/components/clusterConfiguration/operators/OdfCheckbox.tsx +20 -25
- package/lib/ocm/components/clusterConfiguration/operators/OpenShiftAICheckbox.tsx +11 -24
- package/lib/ocm/components/clusterConfiguration/operators/OscCheckbox.tsx +10 -25
- package/lib/ocm/components/clusterConfiguration/operators/PipelinesChekbox.tsx +64 -0
- package/lib/ocm/components/clusterConfiguration/operators/ServerlessCheckbox.tsx +63 -0
- package/lib/ocm/components/clusterConfiguration/operators/ServicemeshCheckbox.tsx +63 -0
- package/lib/ocm/components/clusterConfiguration/operators/SupportedOperators.tsx +105 -0
- package/lib/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/FormViewHostsFields.tsx +1 -1
- package/lib/ocm/components/clusterDetail/AssistedInstallerDetailCard.tsx +1 -1
- package/lib/ocm/components/clusterWizard/ClusterDetails.tsx +4 -0
- package/lib/ocm/components/clusterWizard/Operators.tsx +21 -1
- package/lib/ocm/components/clusterWizard/OperatorsStep.tsx +374 -38
- package/lib/ocm/components/clusterWizard/wizardTransition.ts +1 -1
- package/lib/ocm/components/featureSupportLevels/featureStateUtils.ts +40 -0
- package/lib/ocm/config/constants.ts +156 -0
- package/lib/ocm/sentry.ts +2 -1
- package/lib/ocm/services/BundleService.ts +14 -0
- package/lib/ocm/services/ClustersService.ts +39 -2
- package/lib/ocm/services/OperatorsService.tsx +21 -10
- package/package.json +3 -3
|
@@ -3,8 +3,9 @@ import { FormGroup, HelperText, HelperTextItem, Tooltip } from '@patternfly/reac
|
|
|
3
3
|
import { ExternalLinkAltIcon } from '@patternfly/react-icons/dist/js/icons/external-link-alt-icon';
|
|
4
4
|
import { getFieldId, PopoverIcon, getMceDocsLink, ClusterOperatorProps } from '../../../../common';
|
|
5
5
|
import { OcmCheckboxField } from '../../ui/OcmFormFields';
|
|
6
|
-
import { useNewFeatureSupportLevel } from '../../../../common/components/newFeatureSupportLevels';
|
|
7
6
|
import MceRequirements from './MceRequirements';
|
|
7
|
+
import NewFeatureSupportLevelBadge from '../../../../common/components/newFeatureSupportLevels/NewFeatureSupportLevelBadge';
|
|
8
|
+
import { SupportLevel } from '@openshift-assisted/types/./assisted-installer-service';
|
|
8
9
|
|
|
9
10
|
const MCE_FIELD_NAME = 'useMultiClusterEngine';
|
|
10
11
|
|
|
@@ -12,10 +13,12 @@ const MceLabel = ({
|
|
|
12
13
|
disabledReason,
|
|
13
14
|
isVersionEqualsOrMajorThan4_15,
|
|
14
15
|
clusterId,
|
|
16
|
+
supportLevel,
|
|
15
17
|
}: {
|
|
16
18
|
disabledReason?: string;
|
|
17
19
|
isVersionEqualsOrMajorThan4_15: boolean;
|
|
18
20
|
clusterId: ClusterOperatorProps['clusterId'];
|
|
21
|
+
supportLevel?: SupportLevel;
|
|
19
22
|
}) => {
|
|
20
23
|
return (
|
|
21
24
|
<>
|
|
@@ -33,6 +36,7 @@ const MceLabel = ({
|
|
|
33
36
|
/>
|
|
34
37
|
}
|
|
35
38
|
/>
|
|
39
|
+
<NewFeatureSupportLevelBadge featureId="MCE" supportLevel={supportLevel} />
|
|
36
40
|
</>
|
|
37
41
|
);
|
|
38
42
|
};
|
|
@@ -54,14 +58,16 @@ const MceCheckbox = ({
|
|
|
54
58
|
clusterId,
|
|
55
59
|
isVersionEqualsOrMajorThan4_15,
|
|
56
60
|
openshiftVersion,
|
|
61
|
+
supportLevel,
|
|
62
|
+
disabledReason,
|
|
57
63
|
}: {
|
|
58
64
|
isVersionEqualsOrMajorThan4_15: boolean;
|
|
59
65
|
openshiftVersion?: string;
|
|
60
66
|
clusterId: ClusterOperatorProps['clusterId'];
|
|
67
|
+
supportLevel?: SupportLevel | undefined;
|
|
68
|
+
disabledReason?: string;
|
|
61
69
|
}) => {
|
|
62
|
-
const featureSupportLevelContext = useNewFeatureSupportLevel();
|
|
63
70
|
const fieldId = getFieldId(MCE_FIELD_NAME, 'input');
|
|
64
|
-
const disabledReason = featureSupportLevelContext.getFeatureDisabledReason('MCE');
|
|
65
71
|
return (
|
|
66
72
|
<FormGroup isInline fieldId={fieldId}>
|
|
67
73
|
<OcmCheckboxField
|
|
@@ -71,6 +77,7 @@ const MceCheckbox = ({
|
|
|
71
77
|
disabledReason={disabledReason}
|
|
72
78
|
isVersionEqualsOrMajorThan4_15={isVersionEqualsOrMajorThan4_15}
|
|
73
79
|
clusterId={clusterId}
|
|
80
|
+
supportLevel={supportLevel}
|
|
74
81
|
/>
|
|
75
82
|
}
|
|
76
83
|
isDisabled={!!disabledReason}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React
|
|
1
|
+
import React from 'react';
|
|
2
2
|
import { FormGroup, HelperText, HelperTextItem, Tooltip } from '@patternfly/react-core';
|
|
3
3
|
import { ExternalLinkAltIcon } from '@patternfly/react-icons/dist/js/icons/external-link-alt-icon';
|
|
4
4
|
import {
|
|
@@ -9,18 +9,21 @@ import {
|
|
|
9
9
|
ClusterOperatorProps,
|
|
10
10
|
} from '../../../../common';
|
|
11
11
|
import { OcmCheckboxField } from '../../ui/OcmFormFields';
|
|
12
|
-
import { useNewFeatureSupportLevel } from '../../../../common/components/newFeatureSupportLevels';
|
|
13
12
|
import { useFormikContext } from 'formik';
|
|
14
13
|
import MtvRequirements from './MtvRequirements';
|
|
14
|
+
import { SupportLevel } from '@openshift-assisted/types/./assisted-installer-service';
|
|
15
|
+
import NewFeatureSupportLevelBadge from '../../../../common/components/newFeatureSupportLevels/NewFeatureSupportLevelBadge';
|
|
15
16
|
|
|
16
17
|
const Mtv_FIELD_NAME = 'useMigrationToolkitforVirtualization';
|
|
17
18
|
|
|
18
19
|
const MtvLabel = ({
|
|
19
20
|
disabledReason,
|
|
20
21
|
clusterId,
|
|
22
|
+
supportLevel,
|
|
21
23
|
}: {
|
|
22
24
|
disabledReason?: string;
|
|
23
25
|
clusterId: string;
|
|
26
|
+
supportLevel?: SupportLevel;
|
|
24
27
|
}) => (
|
|
25
28
|
<>
|
|
26
29
|
<Tooltip hidden={!disabledReason} content={disabledReason}>
|
|
@@ -31,6 +34,7 @@ const MtvLabel = ({
|
|
|
31
34
|
headerContent="Additional requirements"
|
|
32
35
|
bodyContent={<MtvRequirements clusterId={clusterId} />}
|
|
33
36
|
/>
|
|
37
|
+
<NewFeatureSupportLevelBadge featureId="MTV" supportLevel={supportLevel} />
|
|
34
38
|
</>
|
|
35
39
|
);
|
|
36
40
|
|
|
@@ -49,26 +53,33 @@ const MtvHelperText = () => {
|
|
|
49
53
|
);
|
|
50
54
|
};
|
|
51
55
|
|
|
52
|
-
const MtvCheckbox = ({
|
|
53
|
-
|
|
54
|
-
|
|
56
|
+
const MtvCheckbox = ({
|
|
57
|
+
clusterId,
|
|
58
|
+
disabledReason,
|
|
59
|
+
supportLevel,
|
|
60
|
+
}: {
|
|
61
|
+
clusterId: ClusterOperatorProps['clusterId'];
|
|
62
|
+
disabledReason?: string;
|
|
63
|
+
supportLevel?: SupportLevel | undefined;
|
|
64
|
+
}) => {
|
|
65
|
+
const { setFieldValue } = useFormikContext<OperatorsValues>();
|
|
55
66
|
const fieldId = getFieldId(Mtv_FIELD_NAME, 'input');
|
|
56
|
-
const [disabledReason, setDisabledReason] = useState<string | undefined>();
|
|
57
67
|
|
|
58
68
|
const selectCNVOperator = (checked: boolean) => {
|
|
59
69
|
setFieldValue('useContainerNativeVirtualization', checked);
|
|
60
70
|
};
|
|
61
71
|
|
|
62
|
-
React.useEffect(() => {
|
|
63
|
-
const disabledReason = featureSupportLevelContext.getFeatureDisabledReason('MTV');
|
|
64
|
-
setDisabledReason(disabledReason);
|
|
65
|
-
}, [values, featureSupportLevelContext]);
|
|
66
|
-
|
|
67
72
|
return (
|
|
68
73
|
<FormGroup isInline fieldId={fieldId}>
|
|
69
74
|
<OcmCheckboxField
|
|
70
75
|
name={Mtv_FIELD_NAME}
|
|
71
|
-
label={
|
|
76
|
+
label={
|
|
77
|
+
<MtvLabel
|
|
78
|
+
disabledReason={disabledReason}
|
|
79
|
+
clusterId={clusterId}
|
|
80
|
+
supportLevel={supportLevel}
|
|
81
|
+
/>
|
|
82
|
+
}
|
|
72
83
|
isDisabled={!!disabledReason}
|
|
73
84
|
helperText={<MtvHelperText />}
|
|
74
85
|
onChange={selectCNVOperator}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { FormGroup, HelperText, HelperTextItem, Tooltip } from '@patternfly/react-core';
|
|
3
|
+
import { getFieldId, PopoverIcon, ClusterOperatorProps } from '../../../../common';
|
|
4
|
+
import { OcmCheckboxField } from '../../ui/OcmFormFields';
|
|
5
|
+
import NmstateRequirements from './NmstateRequirements';
|
|
6
|
+
import { SupportLevel } from '@openshift-assisted/types/./assisted-installer-service';
|
|
7
|
+
import NewFeatureSupportLevelBadge from '../../../../common/components/newFeatureSupportLevels/NewFeatureSupportLevelBadge';
|
|
8
|
+
|
|
9
|
+
const NMSTATE_FIELD_NAME = 'useNmstate';
|
|
10
|
+
|
|
11
|
+
const NmstateLabel = ({
|
|
12
|
+
disabledReason,
|
|
13
|
+
clusterId,
|
|
14
|
+
supportLevel,
|
|
15
|
+
}: {
|
|
16
|
+
disabledReason?: string;
|
|
17
|
+
clusterId: ClusterOperatorProps['clusterId'];
|
|
18
|
+
supportLevel?: SupportLevel;
|
|
19
|
+
}) => {
|
|
20
|
+
return (
|
|
21
|
+
<>
|
|
22
|
+
<Tooltip hidden={!disabledReason} content={disabledReason}>
|
|
23
|
+
<span>Install NMState </span>
|
|
24
|
+
</Tooltip>
|
|
25
|
+
<PopoverIcon
|
|
26
|
+
id={NMSTATE_FIELD_NAME}
|
|
27
|
+
component={'a'}
|
|
28
|
+
headerContent="Additional requirements"
|
|
29
|
+
bodyContent={<NmstateRequirements clusterId={clusterId} />}
|
|
30
|
+
/>
|
|
31
|
+
<NewFeatureSupportLevelBadge featureId="NMSTATE" supportLevel={supportLevel} />
|
|
32
|
+
</>
|
|
33
|
+
);
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
const NmstateHelperText = () => {
|
|
37
|
+
return (
|
|
38
|
+
<HelperText>
|
|
39
|
+
<HelperTextItem variant="indeterminate">
|
|
40
|
+
Provides users with functionality to configure various network interface types, DNS, and
|
|
41
|
+
routing on cluster nodes.{' '}
|
|
42
|
+
</HelperTextItem>
|
|
43
|
+
</HelperText>
|
|
44
|
+
);
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
const NmstateCheckbox = ({
|
|
48
|
+
clusterId,
|
|
49
|
+
disabledReason,
|
|
50
|
+
supportLevel,
|
|
51
|
+
}: {
|
|
52
|
+
clusterId: ClusterOperatorProps['clusterId'];
|
|
53
|
+
disabledReason?: string;
|
|
54
|
+
supportLevel?: SupportLevel | undefined;
|
|
55
|
+
}) => {
|
|
56
|
+
const fieldId = getFieldId(NMSTATE_FIELD_NAME, 'input');
|
|
57
|
+
|
|
58
|
+
return (
|
|
59
|
+
<FormGroup isInline fieldId={fieldId}>
|
|
60
|
+
<OcmCheckboxField
|
|
61
|
+
name={NMSTATE_FIELD_NAME}
|
|
62
|
+
label={
|
|
63
|
+
<NmstateLabel
|
|
64
|
+
clusterId={clusterId}
|
|
65
|
+
disabledReason={disabledReason}
|
|
66
|
+
supportLevel={supportLevel}
|
|
67
|
+
/>
|
|
68
|
+
}
|
|
69
|
+
helperText={<NmstateHelperText />}
|
|
70
|
+
isDisabled={!!disabledReason}
|
|
71
|
+
/>
|
|
72
|
+
</FormGroup>
|
|
73
|
+
);
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
export default NmstateCheckbox;
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { useSelector } from 'react-redux';
|
|
3
|
+
import { List, ListItem } from '@patternfly/react-core';
|
|
4
|
+
import { useClusterPreflightRequirements } from '../../../hooks';
|
|
5
|
+
import { ErrorState, LoadingState, OPERATOR_NAME_NMSTATE, RenderIf } from '../../../../common';
|
|
6
|
+
import { Cluster } from '@openshift-assisted/types/assisted-installer-service';
|
|
7
|
+
import { selectIsCurrentClusterSNO } from '../../../store/slices/current-cluster/selectors';
|
|
8
|
+
|
|
9
|
+
const NmstateRequirements = ({ clusterId }: { clusterId: Cluster['id'] }) => {
|
|
10
|
+
const { preflightRequirements, error, isLoading } = useClusterPreflightRequirements(clusterId);
|
|
11
|
+
const isSingleNode = useSelector(selectIsCurrentClusterSNO);
|
|
12
|
+
|
|
13
|
+
if (isLoading) {
|
|
14
|
+
return <LoadingState content="Loading hardware requirements ..." />;
|
|
15
|
+
}
|
|
16
|
+
if (error) {
|
|
17
|
+
return <ErrorState />;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
const NmstateRequirements = preflightRequirements?.operators?.find(
|
|
21
|
+
(operatorRequirements) => operatorRequirements.operatorName === OPERATOR_NAME_NMSTATE,
|
|
22
|
+
);
|
|
23
|
+
|
|
24
|
+
const workerRequirements = NmstateRequirements?.requirements?.worker?.quantitative;
|
|
25
|
+
const masterRequirements = NmstateRequirements?.requirements?.master?.quantitative;
|
|
26
|
+
|
|
27
|
+
return (
|
|
28
|
+
<>
|
|
29
|
+
<List>
|
|
30
|
+
<RenderIf condition={!isSingleNode}>
|
|
31
|
+
<ListItem>
|
|
32
|
+
Each worker node requires an additional {workerRequirements?.ramMib || 360} MiB of
|
|
33
|
+
memory {workerRequirements?.diskSizeGb ? ',' : ''}{' '}
|
|
34
|
+
{workerRequirements?.cpuCores ? ` and ${workerRequirements?.cpuCores} CPUs` : ''}
|
|
35
|
+
{workerRequirements?.diskSizeGb
|
|
36
|
+
? ` and ${workerRequirements?.diskSizeGb} storage space`
|
|
37
|
+
: ''}
|
|
38
|
+
</ListItem>
|
|
39
|
+
</RenderIf>
|
|
40
|
+
<ListItem>
|
|
41
|
+
Each control plane node requires an additional {masterRequirements?.ramMib || 150} MiB of
|
|
42
|
+
memory {masterRequirements?.diskSizeGb ? ',' : ''}{' '}
|
|
43
|
+
{masterRequirements?.cpuCores ? ` and ${masterRequirements?.cpuCores} CPUs` : ''}
|
|
44
|
+
{masterRequirements?.diskSizeGb
|
|
45
|
+
? ` and ${masterRequirements?.diskSizeGb} storage space`
|
|
46
|
+
: ''}
|
|
47
|
+
</ListItem>
|
|
48
|
+
</List>
|
|
49
|
+
</>
|
|
50
|
+
);
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
export default NmstateRequirements;
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { FormGroup, HelperText, HelperTextItem, Tooltip } from '@patternfly/react-core';
|
|
3
|
+
import { getFieldId, PopoverIcon } from '../../../../common';
|
|
4
|
+
import { OcmCheckboxField } from '../../ui/OcmFormFields';
|
|
5
|
+
import NewFeatureSupportLevelBadge from '../../../../common/components/newFeatureSupportLevels/NewFeatureSupportLevelBadge';
|
|
6
|
+
import { SupportLevel } from '@openshift-assisted/types/./assisted-installer-service';
|
|
7
|
+
|
|
8
|
+
const NODEFEATUREDISCOVERY_FIELD_NAME = 'useNodeFeatureDiscovery';
|
|
9
|
+
|
|
10
|
+
const NodeFeatureDiscoveryLabel = ({
|
|
11
|
+
disabledReason,
|
|
12
|
+
supportLevel,
|
|
13
|
+
}: {
|
|
14
|
+
disabledReason?: string;
|
|
15
|
+
supportLevel?: SupportLevel;
|
|
16
|
+
}) => {
|
|
17
|
+
return (
|
|
18
|
+
<>
|
|
19
|
+
<Tooltip hidden={!disabledReason} content={disabledReason}>
|
|
20
|
+
<span>Install Node Feature Discovery </span>
|
|
21
|
+
</Tooltip>
|
|
22
|
+
<PopoverIcon
|
|
23
|
+
id={NODEFEATUREDISCOVERY_FIELD_NAME}
|
|
24
|
+
component={'a'}
|
|
25
|
+
bodyContent={'No additional requirements needed'}
|
|
26
|
+
/>
|
|
27
|
+
<NewFeatureSupportLevelBadge featureId="NODE_FEATURE_DISCOVERY" supportLevel={supportLevel} />
|
|
28
|
+
</>
|
|
29
|
+
);
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
const NodeFeatureDiscoveryHelperText = () => {
|
|
33
|
+
return (
|
|
34
|
+
<HelperText>
|
|
35
|
+
<HelperTextItem variant="indeterminate">
|
|
36
|
+
Manage the detection of hardware features and configuration by labeling nodes with
|
|
37
|
+
hardware-specific information.{' '}
|
|
38
|
+
</HelperTextItem>
|
|
39
|
+
</HelperText>
|
|
40
|
+
);
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
const NodeFeatureDiscoveryCheckbox = ({
|
|
44
|
+
disabledReason,
|
|
45
|
+
supportLevel,
|
|
46
|
+
}: {
|
|
47
|
+
disabledReason?: string;
|
|
48
|
+
supportLevel?: SupportLevel | undefined;
|
|
49
|
+
}) => {
|
|
50
|
+
const fieldId = getFieldId(NODEFEATUREDISCOVERY_FIELD_NAME, 'input');
|
|
51
|
+
|
|
52
|
+
return (
|
|
53
|
+
<FormGroup isInline fieldId={fieldId}>
|
|
54
|
+
<OcmCheckboxField
|
|
55
|
+
name={NODEFEATUREDISCOVERY_FIELD_NAME}
|
|
56
|
+
label={
|
|
57
|
+
<NodeFeatureDiscoveryLabel disabledReason={disabledReason} supportLevel={supportLevel} />
|
|
58
|
+
}
|
|
59
|
+
helperText={<NodeFeatureDiscoveryHelperText />}
|
|
60
|
+
isDisabled={!!disabledReason}
|
|
61
|
+
/>
|
|
62
|
+
</FormGroup>
|
|
63
|
+
);
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
export default NodeFeatureDiscoveryCheckbox;
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { FormGroup, HelperText, HelperTextItem, Tooltip } from '@patternfly/react-core';
|
|
3
|
+
import { getFieldId, PopoverIcon } from '../../../../common';
|
|
4
|
+
import { OcmCheckboxField } from '../../ui/OcmFormFields';
|
|
5
|
+
import { SupportLevel } from '@openshift-assisted/types/./assisted-installer-service';
|
|
6
|
+
import NewFeatureSupportLevelBadge from '../../../../common/components/newFeatureSupportLevels/NewFeatureSupportLevelBadge';
|
|
7
|
+
|
|
8
|
+
const NVIDIAGPU_FIELD_NAME = 'useNvidiaGpu';
|
|
9
|
+
|
|
10
|
+
const NvidiaGpuLabel = ({
|
|
11
|
+
disabledReason,
|
|
12
|
+
supportLevel,
|
|
13
|
+
}: {
|
|
14
|
+
disabledReason?: string;
|
|
15
|
+
supportLevel?: SupportLevel;
|
|
16
|
+
}) => {
|
|
17
|
+
return (
|
|
18
|
+
<>
|
|
19
|
+
<Tooltip hidden={!disabledReason} content={disabledReason}>
|
|
20
|
+
<span>Install NVIDIA GPU </span>
|
|
21
|
+
</Tooltip>
|
|
22
|
+
<PopoverIcon
|
|
23
|
+
id={NVIDIAGPU_FIELD_NAME}
|
|
24
|
+
component={'a'}
|
|
25
|
+
bodyContent={'No additional requirements needed'}
|
|
26
|
+
/>
|
|
27
|
+
<NewFeatureSupportLevelBadge featureId="NVIDIA_GPU" supportLevel={supportLevel} />
|
|
28
|
+
</>
|
|
29
|
+
);
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
const NvidiaGpuHelperText = () => {
|
|
33
|
+
return (
|
|
34
|
+
<HelperText>
|
|
35
|
+
<HelperTextItem variant="indeterminate">
|
|
36
|
+
Automate the management of NVIDIA software components needed to provision and monitor GPUs.{' '}
|
|
37
|
+
</HelperTextItem>
|
|
38
|
+
</HelperText>
|
|
39
|
+
);
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
const NvidiaGpuCheckbox = ({
|
|
43
|
+
disabledReason,
|
|
44
|
+
supportLevel,
|
|
45
|
+
}: {
|
|
46
|
+
disabledReason?: string;
|
|
47
|
+
supportLevel?: SupportLevel | undefined;
|
|
48
|
+
}) => {
|
|
49
|
+
const fieldId = getFieldId(NVIDIAGPU_FIELD_NAME, 'input');
|
|
50
|
+
|
|
51
|
+
return (
|
|
52
|
+
<FormGroup isInline fieldId={fieldId}>
|
|
53
|
+
<OcmCheckboxField
|
|
54
|
+
name={NVIDIAGPU_FIELD_NAME}
|
|
55
|
+
label={<NvidiaGpuLabel disabledReason={disabledReason} supportLevel={supportLevel} />}
|
|
56
|
+
helperText={<NvidiaGpuHelperText />}
|
|
57
|
+
isDisabled={!!disabledReason}
|
|
58
|
+
/>
|
|
59
|
+
</FormGroup>
|
|
60
|
+
);
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
export default NvidiaGpuCheckbox;
|
|
@@ -1,21 +1,20 @@
|
|
|
1
|
-
import React
|
|
1
|
+
import React from 'react';
|
|
2
2
|
import { FormGroup, HelperText, HelperTextItem, Tooltip } from '@patternfly/react-core';
|
|
3
3
|
import { ExternalLinkAltIcon } from '@patternfly/react-icons/dist/js/icons/external-link-alt-icon';
|
|
4
|
-
import {
|
|
5
|
-
getFieldId,
|
|
6
|
-
PopoverIcon,
|
|
7
|
-
ODF_REQUIREMENTS_LINK,
|
|
8
|
-
ODF_LINK,
|
|
9
|
-
OperatorsValues,
|
|
10
|
-
} from '../../../../common';
|
|
4
|
+
import { getFieldId, PopoverIcon, ODF_REQUIREMENTS_LINK, ODF_LINK } from '../../../../common';
|
|
11
5
|
import { OcmCheckboxField } from '../../ui/OcmFormFields';
|
|
12
|
-
import
|
|
13
|
-
import {
|
|
14
|
-
import { getOdfIncompatibleWithLvmsReason } from '../../featureSupportLevels/featureStateUtils';
|
|
6
|
+
import NewFeatureSupportLevelBadge from '../../../../common/components/newFeatureSupportLevels/NewFeatureSupportLevelBadge';
|
|
7
|
+
import { SupportLevel } from '@openshift-assisted/types/./assisted-installer-service';
|
|
15
8
|
|
|
16
9
|
const ODF_FIELD_NAME = 'useOpenShiftDataFoundation';
|
|
17
10
|
|
|
18
|
-
const OdfLabel = ({
|
|
11
|
+
const OdfLabel = ({
|
|
12
|
+
disabledReason,
|
|
13
|
+
supportLevel,
|
|
14
|
+
}: {
|
|
15
|
+
disabledReason?: string;
|
|
16
|
+
supportLevel?: SupportLevel;
|
|
17
|
+
}) => (
|
|
19
18
|
<>
|
|
20
19
|
<Tooltip hidden={!disabledReason} content={disabledReason}>
|
|
21
20
|
<span>Install OpenShift Data Foundation </span>
|
|
@@ -29,6 +28,7 @@ const OdfLabel = ({ disabledReason }: { disabledReason?: string }) => (
|
|
|
29
28
|
</a>
|
|
30
29
|
}
|
|
31
30
|
/>
|
|
31
|
+
<NewFeatureSupportLevelBadge featureId="ODF" supportLevel={supportLevel} />
|
|
32
32
|
</>
|
|
33
33
|
);
|
|
34
34
|
|
|
@@ -45,25 +45,20 @@ const OdfHelperText = () => {
|
|
|
45
45
|
);
|
|
46
46
|
};
|
|
47
47
|
|
|
48
|
-
const OdfCheckbox = (
|
|
49
|
-
|
|
50
|
-
|
|
48
|
+
const OdfCheckbox = ({
|
|
49
|
+
disabledReason,
|
|
50
|
+
supportLevel,
|
|
51
|
+
}: {
|
|
52
|
+
disabledReason?: string;
|
|
53
|
+
supportLevel?: SupportLevel | undefined;
|
|
54
|
+
}) => {
|
|
51
55
|
const fieldId = getFieldId(ODF_FIELD_NAME, 'input');
|
|
52
|
-
const [disabledReason, setDisabledReason] = useState<string | undefined>();
|
|
53
|
-
|
|
54
|
-
React.useEffect(() => {
|
|
55
|
-
let disabledReason = featureSupportLevelContext.getFeatureDisabledReason('ODF');
|
|
56
|
-
if (!disabledReason) {
|
|
57
|
-
disabledReason = getOdfIncompatibleWithLvmsReason(values);
|
|
58
|
-
}
|
|
59
|
-
setDisabledReason(disabledReason);
|
|
60
|
-
}, [values, featureSupportLevelContext]);
|
|
61
56
|
|
|
62
57
|
return (
|
|
63
58
|
<FormGroup isInline fieldId={fieldId}>
|
|
64
59
|
<OcmCheckboxField
|
|
65
60
|
name={ODF_FIELD_NAME}
|
|
66
|
-
label={<OdfLabel disabledReason={disabledReason} />}
|
|
61
|
+
label={<OdfLabel disabledReason={disabledReason} supportLevel={supportLevel} />}
|
|
67
62
|
isDisabled={!!disabledReason}
|
|
68
63
|
helperText={<OdfHelperText />}
|
|
69
64
|
/>
|
|
@@ -1,14 +1,11 @@
|
|
|
1
|
-
import React
|
|
1
|
+
import React from 'react';
|
|
2
2
|
import { FormGroup, HelperText, HelperTextItem, Tooltip } from '@patternfly/react-core';
|
|
3
3
|
import { ExternalLinkAltIcon } from '@patternfly/react-icons/dist/js/icons/external-link-alt-icon';
|
|
4
|
-
import {
|
|
5
|
-
import { getFieldId, PopoverIcon, OPENSHIFT_AI_LINK, OperatorsValues } from '../../../../common';
|
|
4
|
+
import { getFieldId, PopoverIcon, OPENSHIFT_AI_LINK } from '../../../../common';
|
|
6
5
|
import OpenShiftAIRequirements from './OpenShiftAIRequirements';
|
|
7
6
|
import { OcmCheckboxField } from '../../ui/OcmFormFields';
|
|
8
|
-
import { useNewFeatureSupportLevel } from '../../../../common/components/newFeatureSupportLevels';
|
|
9
7
|
import NewFeatureSupportLevelBadge from '../../../../common/components/newFeatureSupportLevels/NewFeatureSupportLevelBadge';
|
|
10
8
|
import { SupportLevel } from '@openshift-assisted/types/assisted-installer-service';
|
|
11
|
-
import { getOpenShiftAIIncompatibleWithLvmsReason } from '../../featureSupportLevels/featureStateUtils';
|
|
12
9
|
|
|
13
10
|
const OPENSHIFT_AI_FIELD_NAME = 'useOpenShiftAI';
|
|
14
11
|
|
|
@@ -21,7 +18,7 @@ const OpenShiftAILabel = ({ disabledReason, supportLevel }: OpenShiftAILabelProp
|
|
|
21
18
|
return (
|
|
22
19
|
<>
|
|
23
20
|
<Tooltip hidden={!disabledReason} content={disabledReason}>
|
|
24
|
-
<span>Install OpenShift AI
|
|
21
|
+
<span>Install OpenShift AI </span>
|
|
25
22
|
</Tooltip>
|
|
26
23
|
<PopoverIcon
|
|
27
24
|
component={'a'}
|
|
@@ -46,30 +43,20 @@ const OpenShiftAIHelperText = () => {
|
|
|
46
43
|
);
|
|
47
44
|
};
|
|
48
45
|
|
|
49
|
-
const OpenShiftAICheckbox = (
|
|
50
|
-
|
|
51
|
-
|
|
46
|
+
const OpenShiftAICheckbox = ({
|
|
47
|
+
disabledReason,
|
|
48
|
+
supportLevel,
|
|
49
|
+
}: {
|
|
50
|
+
disabledReason?: string;
|
|
51
|
+
supportLevel?: SupportLevel | undefined;
|
|
52
|
+
}) => {
|
|
52
53
|
const fieldId = getFieldId(OPENSHIFT_AI_FIELD_NAME, 'input');
|
|
53
|
-
const [disabledReason, setDisabledReason] = useState<string | undefined>();
|
|
54
|
-
|
|
55
|
-
React.useEffect(() => {
|
|
56
|
-
let disabledReason = featureSupportLevel.getFeatureDisabledReason('OPENSHIFT_AI');
|
|
57
|
-
if (!disabledReason) {
|
|
58
|
-
disabledReason = getOpenShiftAIIncompatibleWithLvmsReason(values);
|
|
59
|
-
}
|
|
60
|
-
setDisabledReason(disabledReason);
|
|
61
|
-
}, [values, featureSupportLevel]);
|
|
62
54
|
|
|
63
55
|
return (
|
|
64
56
|
<FormGroup isInline fieldId={fieldId}>
|
|
65
57
|
<OcmCheckboxField
|
|
66
58
|
name={OPENSHIFT_AI_FIELD_NAME}
|
|
67
|
-
label={
|
|
68
|
-
<OpenShiftAILabel
|
|
69
|
-
disabledReason={disabledReason}
|
|
70
|
-
supportLevel={featureSupportLevel.getFeatureSupportLevel('OPENSHIFT_AI')}
|
|
71
|
-
/>
|
|
72
|
-
}
|
|
59
|
+
label={<OpenShiftAILabel disabledReason={disabledReason} supportLevel={supportLevel} />}
|
|
73
60
|
isDisabled={!!disabledReason}
|
|
74
61
|
helperText={<OpenShiftAIHelperText />}
|
|
75
62
|
/>
|
|
@@ -1,16 +1,8 @@
|
|
|
1
|
-
import React
|
|
1
|
+
import React from 'react';
|
|
2
2
|
import { FormGroup, HelperText, HelperTextItem, Tooltip } from '@patternfly/react-core';
|
|
3
3
|
import { ExternalLinkAltIcon } from '@patternfly/react-icons/dist/js/icons/external-link-alt-icon';
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
getFieldId,
|
|
7
|
-
PopoverIcon,
|
|
8
|
-
OSC_REQUIREMENTS_LINK,
|
|
9
|
-
OSC_LINK,
|
|
10
|
-
OperatorsValues,
|
|
11
|
-
} from '../../../../common';
|
|
4
|
+
import { getFieldId, PopoverIcon, OSC_REQUIREMENTS_LINK, OSC_LINK } from '../../../../common';
|
|
12
5
|
import { OcmCheckboxField } from '../../ui/OcmFormFields';
|
|
13
|
-
import { useNewFeatureSupportLevel } from '../../../../common/components/newFeatureSupportLevels';
|
|
14
6
|
import NewFeatureSupportLevelBadge from '../../../../common/components/newFeatureSupportLevels/NewFeatureSupportLevelBadge';
|
|
15
7
|
import { SupportLevel } from '@openshift-assisted/types/assisted-installer-service';
|
|
16
8
|
|
|
@@ -57,27 +49,20 @@ const OscHelperText = () => {
|
|
|
57
49
|
);
|
|
58
50
|
};
|
|
59
51
|
|
|
60
|
-
const OscCheckbox = (
|
|
61
|
-
|
|
62
|
-
|
|
52
|
+
const OscCheckbox = ({
|
|
53
|
+
disabledReason,
|
|
54
|
+
supportLevel,
|
|
55
|
+
}: {
|
|
56
|
+
disabledReason?: string;
|
|
57
|
+
supportLevel?: SupportLevel | undefined;
|
|
58
|
+
}) => {
|
|
63
59
|
const fieldId = getFieldId(OSC_FIELD_NAME, 'input');
|
|
64
|
-
const [disabledReason, setDisabledReason] = useState<string | undefined>();
|
|
65
|
-
|
|
66
|
-
React.useEffect(() => {
|
|
67
|
-
const disabledReason = featureSupportLevel.getFeatureDisabledReason('OSC');
|
|
68
|
-
setDisabledReason(disabledReason);
|
|
69
|
-
}, [values, featureSupportLevel]);
|
|
70
60
|
|
|
71
61
|
return (
|
|
72
62
|
<FormGroup isInline fieldId={fieldId}>
|
|
73
63
|
<OcmCheckboxField
|
|
74
64
|
name={OSC_FIELD_NAME}
|
|
75
|
-
label={
|
|
76
|
-
<OscLabel
|
|
77
|
-
disabledReason={disabledReason}
|
|
78
|
-
supportLevel={featureSupportLevel.getFeatureSupportLevel('OSC')}
|
|
79
|
-
/>
|
|
80
|
-
}
|
|
65
|
+
label={<OscLabel disabledReason={disabledReason} supportLevel={supportLevel} />}
|
|
81
66
|
isDisabled={!!disabledReason}
|
|
82
67
|
helperText={<OscHelperText />}
|
|
83
68
|
/>
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { FormGroup, HelperText, HelperTextItem, Tooltip } from '@patternfly/react-core';
|
|
3
|
+
import { getFieldId, PopoverIcon } from '../../../../common';
|
|
4
|
+
import { OcmCheckboxField } from '../../ui/OcmFormFields';
|
|
5
|
+
import { SupportLevel } from '@openshift-assisted/types/./assisted-installer-service';
|
|
6
|
+
import NewFeatureSupportLevelBadge from '../../../../common/components/newFeatureSupportLevels/NewFeatureSupportLevelBadge';
|
|
7
|
+
|
|
8
|
+
const PIPELINES_FIELD_NAME = 'usePipelines';
|
|
9
|
+
|
|
10
|
+
const PipelinesLabel = ({
|
|
11
|
+
disabledReason,
|
|
12
|
+
supportLevel,
|
|
13
|
+
}: {
|
|
14
|
+
disabledReason?: string;
|
|
15
|
+
supportLevel?: SupportLevel;
|
|
16
|
+
}) => {
|
|
17
|
+
return (
|
|
18
|
+
<>
|
|
19
|
+
<Tooltip hidden={!disabledReason} content={disabledReason}>
|
|
20
|
+
<span>Install Pipelines </span>
|
|
21
|
+
</Tooltip>
|
|
22
|
+
<PopoverIcon
|
|
23
|
+
id={PIPELINES_FIELD_NAME}
|
|
24
|
+
component={'a'}
|
|
25
|
+
bodyContent={'No additional requirements needed'}
|
|
26
|
+
/>
|
|
27
|
+
<NewFeatureSupportLevelBadge featureId="PIPELINES" supportLevel={supportLevel} />
|
|
28
|
+
</>
|
|
29
|
+
);
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
const PipelinesHelperText = () => {
|
|
33
|
+
return (
|
|
34
|
+
<HelperText>
|
|
35
|
+
<HelperTextItem variant="indeterminate">
|
|
36
|
+
Cloud-native continuous integration and delivery (CI/CD) solution for building pipelines
|
|
37
|
+
using Tekton.{' '}
|
|
38
|
+
</HelperTextItem>
|
|
39
|
+
</HelperText>
|
|
40
|
+
);
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
const PipelinesCheckbox = ({
|
|
44
|
+
disabledReason,
|
|
45
|
+
supportLevel,
|
|
46
|
+
}: {
|
|
47
|
+
disabledReason?: string;
|
|
48
|
+
supportLevel?: SupportLevel | undefined;
|
|
49
|
+
}) => {
|
|
50
|
+
const fieldId = getFieldId(PIPELINES_FIELD_NAME, 'input');
|
|
51
|
+
|
|
52
|
+
return (
|
|
53
|
+
<FormGroup isInline fieldId={fieldId}>
|
|
54
|
+
<OcmCheckboxField
|
|
55
|
+
name={PIPELINES_FIELD_NAME}
|
|
56
|
+
label={<PipelinesLabel disabledReason={disabledReason} supportLevel={supportLevel} />}
|
|
57
|
+
helperText={<PipelinesHelperText />}
|
|
58
|
+
isDisabled={!!disabledReason}
|
|
59
|
+
/>
|
|
60
|
+
</FormGroup>
|
|
61
|
+
);
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
export default PipelinesCheckbox;
|