@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.
Files changed (244) hide show
  1. package/build/@types/cim/components/ClusterDeployment/ClusterDetailsFormFields.d.ts.map +1 -1
  2. package/build/@types/cim/components/ClusterDeployment/wizardTransition.d.ts +1 -1
  3. package/build/@types/cim/components/ClusterDeployment/wizardTransition.d.ts.map +1 -1
  4. package/build/@types/cim/components/common/constants.d.ts.map +1 -1
  5. package/build/@types/cim/components/helpers/toAssisted.d.ts.map +1 -1
  6. package/build/@types/cim/components/modals/AddHostModal.d.ts.map +1 -1
  7. package/build/@types/cim/types/k8s/infra-env-k8s-resource.d.ts +1 -0
  8. package/build/@types/cim/types/k8s/infra-env-k8s-resource.d.ts.map +1 -1
  9. package/build/@types/common/api/assisted-service/BundleAPI.d.ts +8 -0
  10. package/build/@types/common/api/assisted-service/BundleAPI.d.ts.map +1 -0
  11. package/build/@types/common/api/assisted-service/OperatorsAPI.d.ts +6 -0
  12. package/build/@types/common/api/assisted-service/OperatorsAPI.d.ts.map +1 -0
  13. package/build/@types/common/components/clusterConfiguration/ControlPlaneNodesDropdown.d.ts +7 -0
  14. package/build/@types/common/components/clusterConfiguration/ControlPlaneNodesDropdown.d.ts.map +1 -0
  15. package/build/@types/common/components/clusterConfiguration/DiscoveryImageConfigForm.d.ts.map +1 -1
  16. package/build/@types/common/components/clusterConfiguration/DownloadIso.d.ts +2 -1
  17. package/build/@types/common/components/clusterConfiguration/DownloadIso.d.ts.map +1 -1
  18. package/build/@types/common/components/clusterWizard/types.d.ts +3 -1
  19. package/build/@types/common/components/clusterWizard/types.d.ts.map +1 -1
  20. package/build/@types/common/components/hosts/HostRowDetail.d.ts.map +1 -1
  21. package/build/@types/common/components/storage/DisksTable.d.ts.map +1 -1
  22. package/build/@types/common/config/constants.d.ts +6 -0
  23. package/build/@types/common/config/constants.d.ts.map +1 -1
  24. package/build/@types/common/config/docs_links.d.ts +1 -1
  25. package/build/@types/common/config/docs_links.d.ts.map +1 -1
  26. package/build/@types/common/selectors/clusterSelectors.d.ts +1 -0
  27. package/build/@types/common/selectors/clusterSelectors.d.ts.map +1 -1
  28. package/build/@types/common/types/clusters.d.ts +8 -0
  29. package/build/@types/common/types/clusters.d.ts.map +1 -1
  30. package/build/@types/common/types/ui-settings.d.ts +1 -0
  31. package/build/@types/common/types/ui-settings.d.ts.map +1 -1
  32. package/build/@types/ocm/components/SentryErrorMonitorContextProvider.d.ts.map +1 -1
  33. package/build/@types/ocm/components/clusterConfiguration/ControlPlaneNodesDropdown.d.ts.map +1 -1
  34. package/build/@types/ocm/components/clusterConfiguration/DiscoveryImageModal.d.ts.map +1 -1
  35. package/build/@types/ocm/components/clusterConfiguration/operators/AuthorinoCheckbox.d.ts +8 -0
  36. package/build/@types/ocm/components/clusterConfiguration/operators/AuthorinoCheckbox.d.ts.map +1 -0
  37. package/build/@types/ocm/components/clusterConfiguration/operators/CnvCheckbox.d.ts +4 -1
  38. package/build/@types/ocm/components/clusterConfiguration/operators/CnvCheckbox.d.ts.map +1 -1
  39. package/build/@types/ocm/components/clusterConfiguration/operators/LsoCheckbox.d.ts +8 -0
  40. package/build/@types/ocm/components/clusterConfiguration/operators/LsoCheckbox.d.ts.map +1 -0
  41. package/build/@types/ocm/components/clusterConfiguration/operators/LvmCheckbox.d.ts +4 -1
  42. package/build/@types/ocm/components/clusterConfiguration/operators/LvmCheckbox.d.ts.map +1 -1
  43. package/build/@types/ocm/components/clusterConfiguration/operators/MceCheckbox.d.ts +4 -1
  44. package/build/@types/ocm/components/clusterConfiguration/operators/MceCheckbox.d.ts.map +1 -1
  45. package/build/@types/ocm/components/clusterConfiguration/operators/MtvOperatorCheckbox.d.ts +4 -1
  46. package/build/@types/ocm/components/clusterConfiguration/operators/MtvOperatorCheckbox.d.ts.map +1 -1
  47. package/build/@types/ocm/components/clusterConfiguration/operators/NmstateCheckbox.d.ts +10 -0
  48. package/build/@types/ocm/components/clusterConfiguration/operators/NmstateCheckbox.d.ts.map +1 -0
  49. package/build/@types/ocm/components/clusterConfiguration/operators/NmstateRequirements.d.ts +7 -0
  50. package/build/@types/ocm/components/clusterConfiguration/operators/NmstateRequirements.d.ts.map +1 -0
  51. package/build/@types/ocm/components/clusterConfiguration/operators/NodeFeatureDiscoveryCheckbox.d.ts +8 -0
  52. package/build/@types/ocm/components/clusterConfiguration/operators/NodeFeatureDiscoveryCheckbox.d.ts.map +1 -0
  53. package/build/@types/ocm/components/clusterConfiguration/operators/NvidiaGpuCheckbox.d.ts +8 -0
  54. package/build/@types/ocm/components/clusterConfiguration/operators/NvidiaGpuCheckbox.d.ts.map +1 -0
  55. package/build/@types/ocm/components/clusterConfiguration/operators/OdfCheckbox.d.ts +5 -1
  56. package/build/@types/ocm/components/clusterConfiguration/operators/OdfCheckbox.d.ts.map +1 -1
  57. package/build/@types/ocm/components/clusterConfiguration/operators/OpenShiftAICheckbox.d.ts +5 -1
  58. package/build/@types/ocm/components/clusterConfiguration/operators/OpenShiftAICheckbox.d.ts.map +1 -1
  59. package/build/@types/ocm/components/clusterConfiguration/operators/OscCheckbox.d.ts +5 -1
  60. package/build/@types/ocm/components/clusterConfiguration/operators/OscCheckbox.d.ts.map +1 -1
  61. package/build/@types/ocm/components/clusterConfiguration/operators/PipelinesChekbox.d.ts +8 -0
  62. package/build/@types/ocm/components/clusterConfiguration/operators/PipelinesChekbox.d.ts.map +1 -0
  63. package/build/@types/ocm/components/clusterConfiguration/operators/ServerlessCheckbox.d.ts +8 -0
  64. package/build/@types/ocm/components/clusterConfiguration/operators/ServerlessCheckbox.d.ts.map +1 -0
  65. package/build/@types/ocm/components/clusterConfiguration/operators/ServicemeshCheckbox.d.ts +8 -0
  66. package/build/@types/ocm/components/clusterConfiguration/operators/ServicemeshCheckbox.d.ts.map +1 -0
  67. package/build/@types/ocm/components/clusterConfiguration/operators/SupportedOperators.d.ts +24 -0
  68. package/build/@types/ocm/components/clusterConfiguration/operators/SupportedOperators.d.ts.map +1 -0
  69. package/build/@types/ocm/components/clusterWizard/ClusterDetails.d.ts.map +1 -1
  70. package/build/@types/ocm/components/clusterWizard/Operators.d.ts.map +1 -1
  71. package/build/@types/ocm/components/clusterWizard/OperatorsStep.d.ts.map +1 -1
  72. package/build/@types/ocm/components/clusterWizard/wizardTransition.d.ts +1 -1
  73. package/build/@types/ocm/components/clusterWizard/wizardTransition.d.ts.map +1 -1
  74. package/build/@types/ocm/components/featureSupportLevels/featureStateUtils.d.ts.map +1 -1
  75. package/build/@types/ocm/config/constants.d.ts +2 -0
  76. package/build/@types/ocm/config/constants.d.ts.map +1 -1
  77. package/build/@types/ocm/sentry.d.ts +2 -2
  78. package/build/@types/ocm/sentry.d.ts.map +1 -1
  79. package/build/@types/ocm/services/BundleService.d.ts +6 -0
  80. package/build/@types/ocm/services/BundleService.d.ts.map +1 -0
  81. package/build/@types/ocm/services/ClustersService.d.ts +1 -0
  82. package/build/@types/ocm/services/ClustersService.d.ts.map +1 -1
  83. package/build/@types/ocm/services/OperatorsService.d.ts +1 -0
  84. package/build/@types/ocm/services/OperatorsService.d.ts.map +1 -1
  85. package/build/@types/ocm/store/slices/current-cluster/slice.d.ts +1 -0
  86. package/build/@types/ocm/store/slices/current-cluster/slice.d.ts.map +1 -1
  87. package/build/cjs/cim/components/ClusterDeployment/ClusterDetailsFormFields.js +4 -5
  88. package/build/cjs/cim/components/ClusterDeployment/ClusterDetailsFormFields.js.map +1 -1
  89. package/build/cjs/cim/components/InfraEnv/OpenshiftVersionDropdown.js +1 -1
  90. package/build/cjs/cim/components/InfraEnv/OpenshiftVersionDropdown.js.map +1 -1
  91. package/build/cjs/cim/components/common/constants.js +1 -1
  92. package/build/cjs/cim/components/common/constants.js.map +1 -1
  93. package/build/cjs/cim/components/helpers/toAssisted.js +2 -1
  94. package/build/cjs/cim/components/helpers/toAssisted.js.map +1 -1
  95. package/build/cjs/cim/components/modals/AddHostModal.js +4 -5
  96. package/build/cjs/cim/components/modals/AddHostModal.js.map +1 -1
  97. package/build/cjs/common/api/assisted-service/BundleAPI.js +16 -0
  98. package/build/cjs/common/api/assisted-service/BundleAPI.js.map +1 -0
  99. package/build/cjs/common/api/assisted-service/OperatorsAPI.js +13 -0
  100. package/build/cjs/common/api/assisted-service/OperatorsAPI.js.map +1 -0
  101. package/build/cjs/common/components/clusterConfiguration/ControlPlaneNodesDropdown.js +41 -0
  102. package/build/cjs/common/components/clusterConfiguration/ControlPlaneNodesDropdown.js.map +1 -0
  103. package/build/cjs/common/components/clusterConfiguration/DiscoveryImageConfigForm.js +4 -5
  104. package/build/cjs/common/components/clusterConfiguration/DiscoveryImageConfigForm.js.map +1 -1
  105. package/build/cjs/common/components/clusterConfiguration/DiscoveryImageTypeControlGroup.js +5 -5
  106. package/build/cjs/common/components/clusterConfiguration/DiscoveryImageTypeControlGroup.js.map +1 -1
  107. package/build/cjs/common/components/clusterConfiguration/DownloadIso.js +6 -2
  108. package/build/cjs/common/components/clusterConfiguration/DownloadIso.js.map +1 -1
  109. package/build/cjs/common/components/clusterWizard/clusterDetailsValidation.js +2 -2
  110. package/build/cjs/common/components/clusterWizard/clusterDetailsValidation.js.map +1 -1
  111. package/build/cjs/common/components/hosts/AITableMemo.js +16 -13
  112. package/build/cjs/common/components/hosts/AITableMemo.js.map +1 -1
  113. package/build/cjs/common/components/hosts/HostRowDetail.js +35 -1
  114. package/build/cjs/common/components/hosts/HostRowDetail.js.map +1 -1
  115. package/build/cjs/common/components/storage/DisksTable.js +16 -10
  116. package/build/cjs/common/components/storage/DisksTable.js.map +1 -1
  117. package/build/cjs/common/config/constants.js +12 -1
  118. package/build/cjs/common/config/constants.js.map +1 -1
  119. package/build/cjs/common/config/docs_links.js +1 -1
  120. package/build/cjs/common/config/docs_links.js.map +1 -1
  121. package/build/cjs/common/selectors/clusterSelectors.js +7 -1
  122. package/build/cjs/common/selectors/clusterSelectors.js.map +1 -1
  123. package/build/cjs/common/types/clusters.js.map +1 -1
  124. package/build/cjs/ocm/components/SentryErrorMonitorContextProvider.js.map +1 -1
  125. package/build/cjs/ocm/components/clusterConfiguration/ControlPlaneNodesDropdown.js +10 -9
  126. package/build/cjs/ocm/components/clusterConfiguration/ControlPlaneNodesDropdown.js.map +1 -1
  127. package/build/cjs/ocm/components/clusterConfiguration/DiscoveryImageModal.js +14 -1
  128. package/build/cjs/ocm/components/clusterConfiguration/DiscoveryImageModal.js.map +1 -1
  129. package/build/cjs/ocm/components/clusterConfiguration/OcmClusterDetailsFormFields.js +2 -2
  130. package/build/cjs/ocm/components/clusterConfiguration/OcmClusterDetailsFormFields.js.map +1 -1
  131. package/build/cjs/ocm/components/clusterConfiguration/operators/AuthorinoCheckbox.js +29 -0
  132. package/build/cjs/ocm/components/clusterConfiguration/operators/AuthorinoCheckbox.js.map +1 -0
  133. package/build/cjs/ocm/components/clusterConfiguration/operators/CnvCheckbox.js +3 -20
  134. package/build/cjs/ocm/components/clusterConfiguration/operators/CnvCheckbox.js.map +1 -1
  135. package/build/cjs/ocm/components/clusterConfiguration/operators/LsoCheckbox.js +29 -0
  136. package/build/cjs/ocm/components/clusterConfiguration/operators/LsoCheckbox.js.map +1 -0
  137. package/build/cjs/ocm/components/clusterConfiguration/operators/LvmCheckbox.js +5 -21
  138. package/build/cjs/ocm/components/clusterConfiguration/operators/LvmCheckbox.js.map +1 -1
  139. package/build/cjs/ocm/components/clusterConfiguration/operators/MceCheckbox.js +6 -7
  140. package/build/cjs/ocm/components/clusterConfiguration/operators/MceCheckbox.js.map +1 -1
  141. package/build/cjs/ocm/components/clusterConfiguration/operators/MtvOperatorCheckbox.js +8 -13
  142. package/build/cjs/ocm/components/clusterConfiguration/operators/MtvOperatorCheckbox.js.map +1 -1
  143. package/build/cjs/ocm/components/clusterConfiguration/operators/NmstateCheckbox.js +30 -0
  144. package/build/cjs/ocm/components/clusterConfiguration/operators/NmstateCheckbox.js.map +1 -0
  145. package/build/cjs/ocm/components/clusterConfiguration/operators/NmstateRequirements.js +48 -0
  146. package/build/cjs/ocm/components/clusterConfiguration/operators/NmstateRequirements.js.map +1 -0
  147. package/build/cjs/ocm/components/clusterConfiguration/operators/NodeFeatureDiscoveryCheckbox.js +29 -0
  148. package/build/cjs/ocm/components/clusterConfiguration/operators/NodeFeatureDiscoveryCheckbox.js.map +1 -0
  149. package/build/cjs/ocm/components/clusterConfiguration/operators/NvidiaGpuCheckbox.js +29 -0
  150. package/build/cjs/ocm/components/clusterConfiguration/operators/NvidiaGpuCheckbox.js.map +1 -0
  151. package/build/cjs/ocm/components/clusterConfiguration/operators/OdfCheckbox.js +7 -18
  152. package/build/cjs/ocm/components/clusterConfiguration/operators/OdfCheckbox.js.map +1 -1
  153. package/build/cjs/ocm/components/clusterConfiguration/operators/OpenShiftAICheckbox.js +4 -17
  154. package/build/cjs/ocm/components/clusterConfiguration/operators/OpenShiftAICheckbox.js.map +1 -1
  155. package/build/cjs/ocm/components/clusterConfiguration/operators/OscCheckbox.js +3 -12
  156. package/build/cjs/ocm/components/clusterConfiguration/operators/OscCheckbox.js.map +1 -1
  157. package/build/cjs/ocm/components/clusterConfiguration/operators/PipelinesChekbox.js +29 -0
  158. package/build/cjs/ocm/components/clusterConfiguration/operators/PipelinesChekbox.js.map +1 -0
  159. package/build/cjs/ocm/components/clusterConfiguration/operators/ServerlessCheckbox.js +29 -0
  160. package/build/cjs/ocm/components/clusterConfiguration/operators/ServerlessCheckbox.js.map +1 -0
  161. package/build/cjs/ocm/components/clusterConfiguration/operators/ServicemeshCheckbox.js +29 -0
  162. package/build/cjs/ocm/components/clusterConfiguration/operators/ServicemeshCheckbox.js.map +1 -0
  163. package/build/cjs/ocm/components/clusterConfiguration/operators/SupportedOperators.js +73 -0
  164. package/build/cjs/ocm/components/clusterConfiguration/operators/SupportedOperators.js.map +1 -0
  165. package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/FormViewHostsFields.js +1 -1
  166. package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/FormViewHostsFields.js.map +1 -1
  167. package/build/cjs/ocm/components/clusterDetail/AssistedInstallerDetailCard.js +1 -1
  168. package/build/cjs/ocm/components/clusterDetail/AssistedInstallerDetailCard.js.map +1 -1
  169. package/build/cjs/ocm/components/clusterWizard/ClusterDetails.js +4 -0
  170. package/build/cjs/ocm/components/clusterWizard/ClusterDetails.js.map +1 -1
  171. package/build/cjs/ocm/components/clusterWizard/Operators.js +9 -1
  172. package/build/cjs/ocm/components/clusterWizard/Operators.js.map +1 -1
  173. package/build/cjs/ocm/components/clusterWizard/OperatorsStep.js +209 -22
  174. package/build/cjs/ocm/components/clusterWizard/OperatorsStep.js.map +1 -1
  175. package/build/cjs/ocm/components/clusterWizard/wizardTransition.js +1 -1
  176. package/build/cjs/ocm/components/clusterWizard/wizardTransition.js.map +1 -1
  177. package/build/cjs/ocm/components/featureSupportLevels/featureStateUtils.js +40 -0
  178. package/build/cjs/ocm/components/featureSupportLevels/featureStateUtils.js.map +1 -1
  179. package/build/cjs/ocm/config/constants.js +155 -1
  180. package/build/cjs/ocm/config/constants.js.map +1 -1
  181. package/build/cjs/ocm/sentry.js +1 -1
  182. package/build/cjs/ocm/sentry.js.map +1 -1
  183. package/build/cjs/ocm/services/BundleService.js +20 -0
  184. package/build/cjs/ocm/services/BundleService.js.map +1 -0
  185. package/build/cjs/ocm/services/ClustersService.js +33 -1
  186. package/build/cjs/ocm/services/ClustersService.js.map +1 -1
  187. package/build/cjs/ocm/services/OperatorsService.js +16 -8
  188. package/build/cjs/ocm/services/OperatorsService.js.map +1 -1
  189. package/lib/cim/components/ClusterDeployment/ClusterDetailsFormFields.tsx +4 -6
  190. package/lib/cim/components/InfraEnv/OpenshiftVersionDropdown.tsx +1 -1
  191. package/lib/cim/components/common/constants.ts +1 -2
  192. package/lib/cim/components/helpers/toAssisted.ts +1 -0
  193. package/lib/cim/components/modals/AddHostModal.tsx +4 -5
  194. package/lib/cim/types/k8s/infra-env-k8s-resource.ts +1 -0
  195. package/lib/common/api/assisted-service/BundleAPI.ts +18 -0
  196. package/lib/common/api/assisted-service/OperatorsAPI.ts +13 -0
  197. package/lib/common/components/clusterConfiguration/ControlPlaneNodesDropdown.tsx +93 -0
  198. package/lib/common/components/clusterConfiguration/DiscoveryImageConfigForm.tsx +10 -12
  199. package/lib/common/components/clusterConfiguration/DiscoveryImageTypeControlGroup.tsx +9 -9
  200. package/lib/common/components/clusterConfiguration/DownloadIso.tsx +9 -1
  201. package/lib/common/components/clusterWizard/clusterDetailsValidation.ts +1 -1
  202. package/lib/common/components/clusterWizard/types.ts +4 -2
  203. package/lib/common/components/hosts/AITableMemo.tsx +1 -1
  204. package/lib/common/components/hosts/HostRowDetail.tsx +71 -1
  205. package/lib/common/components/storage/DisksTable.tsx +25 -18
  206. package/lib/common/config/constants.ts +12 -0
  207. package/lib/common/config/docs_links.ts +1 -1
  208. package/lib/common/selectors/clusterSelectors.ts +8 -0
  209. package/lib/common/types/clusters.ts +8 -0
  210. package/lib/common/types/ui-settings.ts +1 -0
  211. package/lib/ocm/components/SentryErrorMonitorContextProvider.tsx +1 -2
  212. package/lib/ocm/components/clusterConfiguration/ControlPlaneNodesDropdown.tsx +13 -12
  213. package/lib/ocm/components/clusterConfiguration/DiscoveryImageModal.tsx +24 -1
  214. package/lib/ocm/components/clusterConfiguration/OcmClusterDetailsFormFields.tsx +2 -2
  215. package/lib/ocm/components/clusterConfiguration/operators/AuthorinoCheckbox.tsx +63 -0
  216. package/lib/ocm/components/clusterConfiguration/operators/CnvCheckbox.tsx +7 -31
  217. package/lib/ocm/components/clusterConfiguration/operators/LsoCheckbox.tsx +63 -0
  218. package/lib/ocm/components/clusterConfiguration/operators/LvmCheckbox.tsx +8 -26
  219. package/lib/ocm/components/clusterConfiguration/operators/MceCheckbox.tsx +10 -3
  220. package/lib/ocm/components/clusterConfiguration/operators/MtvOperatorCheckbox.tsx +23 -12
  221. package/lib/ocm/components/clusterConfiguration/operators/NmstateCheckbox.tsx +76 -0
  222. package/lib/ocm/components/clusterConfiguration/operators/NmstateRequirements.tsx +53 -0
  223. package/lib/ocm/components/clusterConfiguration/operators/NodeFeatureDiscoveryCheckbox.tsx +66 -0
  224. package/lib/ocm/components/clusterConfiguration/operators/NvidiaGpuCheckbox.tsx +63 -0
  225. package/lib/ocm/components/clusterConfiguration/operators/OdfCheckbox.tsx +20 -25
  226. package/lib/ocm/components/clusterConfiguration/operators/OpenShiftAICheckbox.tsx +11 -24
  227. package/lib/ocm/components/clusterConfiguration/operators/OscCheckbox.tsx +10 -25
  228. package/lib/ocm/components/clusterConfiguration/operators/PipelinesChekbox.tsx +64 -0
  229. package/lib/ocm/components/clusterConfiguration/operators/ServerlessCheckbox.tsx +63 -0
  230. package/lib/ocm/components/clusterConfiguration/operators/ServicemeshCheckbox.tsx +63 -0
  231. package/lib/ocm/components/clusterConfiguration/operators/SupportedOperators.tsx +105 -0
  232. package/lib/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/FormViewHostsFields.tsx +1 -1
  233. package/lib/ocm/components/clusterDetail/AssistedInstallerDetailCard.tsx +1 -1
  234. package/lib/ocm/components/clusterWizard/ClusterDetails.tsx +4 -0
  235. package/lib/ocm/components/clusterWizard/Operators.tsx +21 -1
  236. package/lib/ocm/components/clusterWizard/OperatorsStep.tsx +374 -38
  237. package/lib/ocm/components/clusterWizard/wizardTransition.ts +1 -1
  238. package/lib/ocm/components/featureSupportLevels/featureStateUtils.ts +40 -0
  239. package/lib/ocm/config/constants.ts +156 -0
  240. package/lib/ocm/sentry.ts +2 -1
  241. package/lib/ocm/services/BundleService.ts +14 -0
  242. package/lib/ocm/services/ClustersService.ts +39 -2
  243. package/lib/ocm/services/OperatorsService.tsx +21 -10
  244. package/package.json +3 -3
@@ -7,6 +7,8 @@ const HostsService_1 = tslib_1.__importDefault(require("./HostsService"));
7
7
  const InfraEnvsService_1 = tslib_1.__importDefault(require("./InfraEnvsService"));
8
8
  const constants_1 = require("../../common/config/constants");
9
9
  const axiosClient_1 = require("../../common/api/axiosClient");
10
+ const config_1 = require("../config");
11
+ const js_yaml_1 = tslib_1.__importDefault(require("js-yaml"));
10
12
  const ClustersService = {
11
13
  findHost(hosts = [], hostId) {
12
14
  return hosts.find((host) => host.id === hostId);
@@ -75,7 +77,13 @@ const ClustersService = {
75
77
  updateClusterTags(clusterTags, params) {
76
78
  const tags = (clusterTags === null || clusterTags === void 0 ? void 0 : clusterTags.split(',')) || [];
77
79
  if (tags.includes(constants_1.AI_UI_TAG)) {
78
- delete params.tags;
80
+ if (params.tags && params.tags.includes(constants_1.AI_CISCO_INTERSIGHT_TAG)) {
81
+ tags === null || tags === void 0 ? void 0 : tags.push(constants_1.AI_CISCO_INTERSIGHT_TAG);
82
+ params.tags = tags === null || tags === void 0 ? void 0 : tags.join(',');
83
+ }
84
+ else {
85
+ delete params.tags;
86
+ }
79
87
  }
80
88
  else {
81
89
  tags === null || tags === void 0 ? void 0 : tags.push(constants_1.AI_UI_TAG);
@@ -120,6 +128,30 @@ const ClustersService = {
120
128
  updateCustomManifest(existingManifest, updatedManifest, clusterId) {
121
129
  return ClustersAPI_1.default.updateCustomManifest(clusterId, this.getUpdateManifestParams(existingManifest, updatedManifest));
122
130
  },
131
+ //TO-DO: Assisted-Migration. Provisional code. Needs to be removed when MTV integration be finished
132
+ createClusterManifestsForAssistedMigration(clusterId) {
133
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
134
+ const manifests = [];
135
+ const parsedYaml1 = js_yaml_1.default.dump(config_1.yamlContentAssistedMigration1);
136
+ manifests.push({
137
+ folder: 'openshift',
138
+ filename: '0gitops.yaml',
139
+ manifestYaml: parsedYaml1,
140
+ created: true,
141
+ });
142
+ const parsedYaml2 = js_yaml_1.default.dump(config_1.yamlContentAssistedMigration2);
143
+ manifests.push({
144
+ folder: 'openshift',
145
+ filename: '1rolebindings.yaml',
146
+ manifestYaml: parsedYaml2,
147
+ created: true,
148
+ });
149
+ const promises = manifests.map((manifest) => {
150
+ return ClustersAPI_1.default.createCustomManifest(clusterId, this.transformFormViewManifest(manifest));
151
+ });
152
+ return Promise.all(promises);
153
+ });
154
+ },
123
155
  };
124
156
  exports.default = ClustersService;
125
157
  //# sourceMappingURL=ClustersService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ClustersService.js","sourceRoot":"","sources":["../../../../lib/ocm/services/ClustersService.ts"],"names":[],"mappings":";;;AAYA,wEAAqC;AACrC,wGAAwE;AACxE,0EAA0C;AAC1C,kFAAkD;AAClD,6DAAqF;AACrF,8DAAuD;AAEvD,MAAM,eAAe,GAAG;IACtB,QAAQ,CAAC,QAA0B,EAAE,EAAE,MAAkB;QACvD,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;IAClD,CAAC;IAEK,MAAM,CAAC,MAA+C,EAAE,mBAA6B;;;YACzF,IAAI,mBAAmB,EAAE;gBACvB,MAAM,CAAC,IAAI,GAAG,qCAAyB,CAAC;aACzC;YACD,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,qBAAW,CAAC,QAAQ,CAAC,IAAA,iBAAI,EAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC,CAAC;YAC1F,MAAM,oBAAoB,GAAyB;gBACjD,IAAI,EAAE,GAAG,MAAM,CAAC,IAAI,YAAY;gBAChC,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;gBACzC,eAAe,EAAE,MAAM,CAAC,eAA0D;gBAClF,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;aAChD,CAAC;YAEF,IAAI,CAAA,MAAA,MAAM,CAAC,QAAQ,0CAAE,IAAI,MAAK,UAAU,IAAI,CAAA,MAAA,MAAM,CAAC,QAAQ,CAAC,QAAQ,0CAAE,YAAY,MAAK,KAAK,EAAE;gBAC5F,oBAAoB,CAAC,SAAS,GAAG,aAAa,CAAC;aAChD;YAED,MAAM,0BAAgB,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;YAEpD,OAAO,OAAO,CAAC;;KAChB;IAEK,MAAM,CAAC,SAAwB;;;YACnC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,qBAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC3D,MAAM,KAAK,GAAG,MAAA,OAAO,CAAC,KAAK,mCAAI,EAAE,CAAC;YAElC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;gBACpB,MAAM,sBAAY,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;aACrC;YACD,MAAM,0BAAgB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;YAC5C,MAAM,qBAAW,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;;KACzC;IAEK,YAAY,CAChB,SAAwB,EACxB,MAAmB;;;YAKnB,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,qBAAW,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAC5E,MAAM,aAAa,GAAuB,OAAO,CAAC,qBAAqB,CAAuB,CAAC;YAC/F,MAAM,QAAQ,GAAuB,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,KAAK,CAAC,iBAAiB,CAAC,0CAAG,CAAC,CAAC,CAAC;YAClF,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;;KAC3B;IAED,MAAM,CAAC,SAAwB,EAAE,WAA4B,EAAE,MAA6B;QAC1F,qBAAW,CAAC,mBAAmB,EAAE,CAAC;QAClC,IAAI,qBAAO,EAAE;YACX,MAAM,GAAG,eAAe,CAAC,iBAAiB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;SACjE;QACD,OAAO,qBAAW,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAC/C,CAAC;IAEK,OAAO,CAAC,SAAwB,EAAE,WAA4B;;YAClE,IAAI,qBAAO,EAAE;gBACX,MAAM,MAAM,GAAG,eAAe,CAAC,iBAAiB,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;gBAClE,IAAI,MAAM,CAAC,IAAI,EAAE;oBACf,MAAM,eAAe,CAAC,MAAM,CAAC,SAAS,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;iBAC1D;aACF;YAED,OAAO,qBAAW,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACxC,CAAC;KAAA;IAED,iBAAiB,CACf,WAA4B,EAC5B,MAA6B;QAE7B,MAAM,IAAI,GAAG,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,KAAK,CAAC,GAAG,CAAC,KAAc,EAAE,CAAC;QACrD,IAAI,IAAI,CAAC,QAAQ,CAAC,qBAAS,CAAC,EAAE;YAC5B,OAAO,MAAM,CAAC,IAAI,CAAC;SACpB;aAAM;YACL,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,CAAC,qBAAS,CAAC,CAAC;YACtB,MAAM,CAAC,IAAI,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,CAAC,GAAG,CAAC,CAAC;SAC/B;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAEK,GAAG,CAAC,SAAwB;;YAChC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,qBAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC3D,OAAO,OAAO,CAAC;QACjB,CAAC;KAAA;IAED,yBAAyB,CAAC,QAA8B;QACtD,OAAO;YACL,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;SAC5C,CAAC;IACJ,CAAC;IAED,uBAAuB,CACrB,gBAAsC,EACtC,eAAqC;QAErC,OAAO;YACL,MAAM,EAAE,gBAAgB,CAAC,MAAM;YAC/B,QAAQ,EAAE,gBAAgB,CAAC,QAAQ;YACnC,aAAa,EAAE,eAAe,CAAC,MAAM;YACrC,eAAe,EAAE,eAAe,CAAC,QAAQ;YACzC,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC;SAC1D,CAAC;IACJ,CAAC;IAED,sBAAsB,CAAC,SAAiC,EAAE,SAAwB;QAChF,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;YAC1C,OAAO,qBAAW,CAAC,oBAAoB,CAAC,SAAS,EAAE,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC/F,CAAC,CAAC,CAAC;QACH,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAED,sBAAsB,CAAC,eAAsC,EAAE,SAAwB;QACrF,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;YAChD,OAAO,qBAAW,CAAC,oBAAoB,CACrC,SAAS,EACT,QAAQ,CAAC,MAAM,IAAI,EAAE,EACrB,QAAQ,CAAC,QAAQ,IAAI,EAAE,CACxB,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAED,oBAAoB,CAClB,gBAAsC,EACtC,eAAqC,EACrC,SAAwB;QAExB,OAAO,qBAAW,CAAC,oBAAoB,CACrC,SAAS,EACT,IAAI,CAAC,uBAAuB,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAChE,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,kBAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"ClustersService.js","sourceRoot":"","sources":["../../../../lib/ocm/services/ClustersService.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
3
4
  const common_1 = require("../../common");
4
5
  const utils_1 = require("../components/clusters/utils");
5
- const utils_2 = require("../../common/utils");
6
- const hasActiveOperators = (values) => {
7
- return (0, utils_2.getKeys)(values).some((operatorParam) => values[operatorParam]);
8
- };
6
+ const OperatorsAPI_1 = tslib_1.__importDefault(require("../../common/api/assisted-service/OperatorsAPI"));
9
7
  const OperatorsService = {
10
8
  getOLMOperators(values, cluster) {
11
9
  const enabledOlmOperatorsByName = (0, utils_1.getOlmOperatorCreateParamsByName)(cluster);
@@ -25,10 +23,14 @@ const OperatorsService = {
25
23
  setOperator(common_1.OPERATOR_NAME_MTV, values.useMigrationToolkitforVirtualization);
26
24
  setOperator(common_1.OPERATOR_NAME_OPENSHIFT_AI, values.useOpenShiftAI);
27
25
  setOperator(common_1.OPERATOR_NAME_OSC, values.useOsc);
28
- // TODO: remove following once the LSO option is exposed to the user
29
- if (!hasActiveOperators(values)) {
30
- setOperator(common_1.OPERATOR_NAME_LSO, false);
31
- }
26
+ setOperator(common_1.OPERATOR_NAME_NODE_FEATURE_DISCOVERY, values.useNodeFeatureDiscovery);
27
+ setOperator(common_1.OPERATOR_NAME_NMSTATE, values.useNmstate);
28
+ setOperator(common_1.OPERATOR_NAME_LSO, values.useLso);
29
+ setOperator(common_1.OPERATOR_NAME_SERVERLESS, values.useServerless);
30
+ setOperator(common_1.OPERATOR_NAME_AUTHORINO, values.useAuthorino);
31
+ setOperator(common_1.OPERATOR_NAME_PIPELINES, values.usePipelines);
32
+ setOperator(common_1.OPERATOR_NAME_SERVICEMESH, values.useServicemesh);
33
+ setOperator(common_1.OPERATOR_NAME_NVIDIA_GPU, values.useNvidiaGpu);
32
34
  return Object.values(enabledOlmOperatorsByName);
33
35
  },
34
36
  /**
@@ -52,6 +54,12 @@ const OperatorsService = {
52
54
  }
53
55
  return updates;
54
56
  },
57
+ getSupportedOperators() {
58
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
59
+ const { data: operators } = yield OperatorsAPI_1.default.list();
60
+ return operators;
61
+ });
62
+ },
55
63
  };
56
64
  exports.default = OperatorsService;
57
65
  //# sourceMappingURL=OperatorsService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"OperatorsService.js","sourceRoot":"","sources":["../../../../lib/ocm/services/OperatorsService.tsx"],"names":[],"mappings":";;AAAA,yCAWsB;AACtB,wDAAgF;AAChF,8CAA6C;AAM7C,MAAM,kBAAkB,GAAG,CAAC,MAAuB,EAAE,EAAE;IACrD,OAAO,IAAA,eAAO,EAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;AACxE,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG;IACvB,eAAe,CAAC,MAAuB,EAAE,OAAgB;QACvD,MAAM,yBAAyB,GAAG,IAAA,wCAAgC,EAAC,OAAO,CAAC,CAAC;QAE5E,8FAA8F;QAC9F,MAAM,WAAW,GAAG,CAAC,IAAkB,EAAE,OAAgB,EAAE,EAAE;YAC3D,IAAI,OAAO,EAAE;gBACX,yBAAyB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;aAC5C;iBAAM;gBACL,OAAO,yBAAyB,CAAC,IAAI,CAAC,CAAC;aACxC;QACH,CAAC,CAAC;QAEF,WAAW,CAAC,0BAAiB,EAAE,MAAM,CAAC,0BAA0B,CAAC,CAAC;QAClE,WAAW,CAAC,0BAAiB,EAAE,MAAM,CAAC,gCAAgC,CAAC,CAAC;QACxE,WAAW,CAAC,0BAAiB,EAAE,MAAM,CAAC,0BAA0B,CAAC,CAAC;QAClE,WAAW,CAAC,0BAAiB,EAAE,MAAM,CAAC,qBAAqB,CAAC,CAAC;QAC7D,WAAW,CAAC,0BAAiB,EAAE,MAAM,CAAC,oCAAoC,CAAC,CAAC;QAC5E,WAAW,CAAC,mCAA0B,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC;QAC/D,WAAW,CAAC,0BAAiB,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QAE9C,oEAAoE;QACpE,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE;YAC/B,WAAW,CAAC,0BAAiB,EAAE,KAAK,CAAC,CAAC;SACvC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;IAClD,CAAC;IAED;;;;OAIG;IACH,aAAa,CACX,WAAmC,EACnC,gBAA+C;QAE/C,MAAM,OAAO,GAA6B,EAAE,CAAC;QAE7C,8FAA8F;QAC9F,MAAM,eAAe,GAAG,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,0BAAiB,CAAC,MAAK,SAAS,CAAC;QAC/F,MAAM,YAAY,GAChB,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,0BAAiB,CAAC,MAAK,SAAS,CAAC;QAC9E,IAAI,eAAe,IAAI,YAAY,EAAE;YACnC,OAAO,CAAC,0BAA0B,GAAG,IAAI,CAAC;SAC3C;QAED,0FAA0F;QAC1F,MAAM,eAAe,GAAG,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,0BAAiB,CAAC,MAAK,SAAS,CAAC;QAC/F,MAAM,YAAY,GAChB,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,0BAAiB,CAAC,MAAK,SAAS,CAAC;QAC9E,IAAI,eAAe,IAAI,YAAY,EAAE;YACnC,OAAO,CAAC,0BAA0B,GAAG,IAAI,CAAC;SAC3C;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;CACF,CAAC;AACF,kBAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"OperatorsService.js","sourceRoot":"","sources":["../../../../lib/ocm/services/OperatorsService.tsx"],"names":[],"mappings":"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"}
@@ -14,8 +14,8 @@ import {
14
14
  import { ClusterDetailsValues } from '../../../common/components/clusterWizard/types';
15
15
  import { useTranslation } from '../../../common/hooks/use-translation-wrapper';
16
16
  import CpuArchitectureDropdown from '../common/CpuArchitectureDropdown';
17
- import { SNOControlGroup } from '../../../common';
18
17
  import { getNetworkType } from '../helpers';
18
+ import ControlPlaneNodesDropdown from '../../../common/components/clusterConfiguration/ControlPlaneNodesDropdown';
19
19
  export type ClusterDetailsFormFieldsProps = {
20
20
  isEditFlow: boolean;
21
21
  forceOpenshiftVersion?: string;
@@ -52,7 +52,7 @@ export const ClusterDetailsFormFields: React.FC<ClusterDetailsFormFieldsProps> =
52
52
  cpuArchitectures,
53
53
  }) => {
54
54
  const { values, setFieldValue } = useFormikContext<ClusterDetailsValues>();
55
- const { name, baseDnsDomain, highAvailabilityMode } = values;
55
+ const { name, baseDnsDomain } = values;
56
56
 
57
57
  const nameInputRef = React.useRef<HTMLInputElement>();
58
58
  React.useEffect(() => {
@@ -110,11 +110,9 @@ export const ClusterDetailsFormFields: React.FC<ClusterDetailsFormFieldsProps> =
110
110
  }}
111
111
  />
112
112
  )}
113
+ <ControlPlaneNodesDropdown isNutanix={isNutanix} isDisabled={isEditFlow} />
113
114
  {!isNutanix && (
114
- <>
115
- <SNOControlGroup versions={versions} highAvailabilityMode={highAvailabilityMode} />
116
- <CpuArchitectureDropdown isDisabled={isEditFlow} cpuArchitectures={cpuArchitectures} />
117
- </>
115
+ <CpuArchitectureDropdown cpuArchitectures={cpuArchitectures} isDisabled={isEditFlow} />
118
116
  )}
119
117
  {extensionAfter?.['openshiftVersion'] && extensionAfter['openshiftVersion']}
120
118
  {!isEditFlow && <PullSecret />}
@@ -35,7 +35,7 @@ const OpenshiftVersionDropdown = ({ osImages }: { osImages: OsImage[] }) => {
35
35
  <Tooltip
36
36
  content={t(
37
37
  'ai:No OpenShift images available for selected CPU architecture {{cpuArchitecture}}.',
38
- architectureData[cpuArchitecture as SupportedCpuArchitecture].label,
38
+ { cpuArchitecture: architectureData[cpuArchitecture as SupportedCpuArchitecture].label },
39
39
  )}
40
40
  hidden={!!filteredImages.length}
41
41
  >
@@ -16,8 +16,7 @@ export const INFRAENV_GENERATED_AI_FLOW = 'agentBareMetal-generated-infraenv-ai-
16
16
  export const CPU_ARCHITECTURE_ANNOTATION_KEY = 'agentBareMetal-cpuArchitecture';
17
17
 
18
18
  export const getInfraEnvDocs = (docVersion: string) =>
19
- `https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/${docVersion}/html-single/clusters/index#enable-cim`;
20
-
19
+ `https://docs.redhat.com/en/documentation/red_hat_advanced_cluster_management_for_kubernetes/${docVersion}/html-single/clusters/index#enable-cim-prerequisites`;
21
20
  export const BMH_HOSTNAME_ANNOTATION = 'bmac.agent-install.openshift.io/hostname';
22
21
 
23
22
  export const OCP_VERSION_MAJOR_MINOR = 'hive.openshift.io/version-major-minor';
@@ -170,6 +170,7 @@ export const getAICluster = ({
170
170
  validationsInfo: JSON.stringify(agentClusterInstall?.status?.validationsInfo || {}),
171
171
  cpuArchitecture: getClusterDeploymentCpuArchitecture(clusterDeployment, infraEnv),
172
172
  networkType: agentClusterInstall?.spec?.networking.networkType,
173
+ controlPlaneCount: agentClusterInstall?.spec?.provisionRequirements.controlPlaneAgents || 3,
173
174
  };
174
175
  /*
175
176
  aiCluster.agentSelectorMasterLabels =
@@ -30,9 +30,8 @@ const AddHostModal: React.FC<AddHostModalProps> = ({
30
30
  const hasDHCP = infraEnv.metadata?.labels?.networkType !== 'static';
31
31
  const sshPublicKey = infraEnv.spec?.sshAuthorizedKey || agentClusterInstall?.spec?.sshPublicKey;
32
32
  const { httpProxy, httpsProxy, noProxy } = infraEnv.spec?.proxy || {};
33
-
34
- const isoDialog = agentClusterInstall ? 'config' : 'download';
35
- const [dialogType, setDialogType] = React.useState<AddHostModalStepType>(isoDialog);
33
+ const imageType = infraEnv.spec?.imageType || 'minimal-iso';
34
+ const [dialogType, setDialogType] = React.useState<AddHostModalStepType>('config');
36
35
  const { t } = useTranslation();
37
36
  const handleIsoConfigSubmit = async (
38
37
  values: DiscoveryImageFormValues,
@@ -66,8 +65,8 @@ const AddHostModal: React.FC<AddHostModalProps> = ({
66
65
  <DiscoveryImageConfigForm
67
66
  onCancel={onClose}
68
67
  handleSubmit={handleIsoConfigSubmit}
69
- hideDiscoveryImageType={true} // So far configured by env variable on backend
70
- imageType="full-iso" // So far the only option for CIM
68
+ hideDiscoveryImageType={isIPXE}
69
+ imageType={imageType}
71
70
  sshPublicKey={sshPublicKey}
72
71
  httpProxy={httpProxy}
73
72
  httpsProxy={httpsProxy}
@@ -25,6 +25,7 @@ export type InfraEnvK8sResource = K8sResourceCommon & {
25
25
  additionalNTPSources?: string[];
26
26
  cpuArchitecture?: 'x86_64' | 'arm64' | 's390x';
27
27
  osImageVersion?: string;
28
+ imageType?: 'full-iso' | 'minimal-iso';
28
29
  };
29
30
  status?: {
30
31
  agentLabelSelector?: Selector;
@@ -0,0 +1,18 @@
1
+ import { client } from '../axiosClient';
2
+ import { Bundle } from '@openshift-assisted/types/assisted-installer-service';
3
+
4
+ const BundleAPI = {
5
+ makeBaseURI() {
6
+ return `/v2/operators/bundles`;
7
+ },
8
+
9
+ list() {
10
+ return client.get<Bundle[]>(`${BundleAPI.makeBaseURI()}`);
11
+ },
12
+
13
+ listOperatorsForBundle(bundleName: string) {
14
+ return client.get<string[]>(`${BundleAPI.makeBaseURI()}?bundle_name=${bundleName}`);
15
+ },
16
+ };
17
+
18
+ export default BundleAPI;
@@ -0,0 +1,13 @@
1
+ import { client } from '../axiosClient';
2
+
3
+ const OperatorsAPI = {
4
+ makeBaseURI() {
5
+ return `/v2/supported-operators`;
6
+ },
7
+
8
+ list() {
9
+ return client.get<string[]>(`${OperatorsAPI.makeBaseURI()}`);
10
+ },
11
+ };
12
+
13
+ export default OperatorsAPI;
@@ -0,0 +1,93 @@
1
+ import * as React from 'react';
2
+ import { Dropdown, DropdownItem, DropdownToggle } from '@patternfly/react-core/deprecated';
3
+ import { FormGroup, Tooltip } from '@patternfly/react-core';
4
+ import { useTranslation } from '../../hooks/use-translation-wrapper';
5
+ import { getFieldId, StaticField } from '../..';
6
+ import { useField } from 'formik';
7
+ import toNumber from 'lodash-es/toNumber';
8
+
9
+ interface ControlPlaneNodesOption {
10
+ value: number;
11
+ label: string;
12
+ }
13
+
14
+ const isDropdownItemEnabled = (controlPlaneNodeCount: number, isNutanix?: boolean): boolean => {
15
+ return (controlPlaneNodeCount === 1 && !isNutanix) || controlPlaneNodeCount !== 1;
16
+ };
17
+
18
+ const ControlPlaneNodesDropdown = ({
19
+ isDisabled = false,
20
+ isNutanix,
21
+ }: {
22
+ isDisabled?: boolean;
23
+ isNutanix?: boolean;
24
+ }) => {
25
+ const { t } = useTranslation();
26
+ const [{ name, value: selectedValue }, , { setValue }] = useField<number | 3>(
27
+ 'controlPlaneCount',
28
+ );
29
+
30
+ const options: ControlPlaneNodesOption[] = [
31
+ { value: 1, label: t('ai:1 (Single Node OpenShift - not highly available cluster)') },
32
+ { value: 3, label: t('ai:3 (highly available cluster)') },
33
+ { value: 4, label: t('ai:4 (highly available cluster+)') },
34
+ { value: 5, label: t('ai:5 (highly available cluster++)') },
35
+ ];
36
+
37
+ const dropdownItems = options.map(({ value, label }) => {
38
+ const isItemEnabled = isDropdownItemEnabled(value, isNutanix);
39
+ const disabledReason = t('ai:This option is not available for Nutanix platform');
40
+ return (
41
+ <DropdownItem
42
+ key={value}
43
+ id={value.toString()}
44
+ isAriaDisabled={!isItemEnabled}
45
+ selected={selectedValue === value}
46
+ value={value}
47
+ >
48
+ <Tooltip hidden={isItemEnabled} content={disabledReason} position="top">
49
+ <div>{label}</div>
50
+ </Tooltip>
51
+ </DropdownItem>
52
+ );
53
+ });
54
+
55
+ const [controlPlanelOpen, setControlPlanelOpen] = React.useState(false);
56
+ const fieldId = getFieldId(name, 'input');
57
+
58
+ const onControlPlaneSelect = (e?: React.SyntheticEvent<HTMLDivElement>) => {
59
+ const val = e?.currentTarget.id as string;
60
+ setValue(toNumber(val));
61
+ setControlPlanelOpen(false);
62
+ };
63
+
64
+ return !isDisabled ? (
65
+ <FormGroup isInline fieldId={fieldId} label={t('ai:Number of control plane nodes')} isRequired>
66
+ <Dropdown
67
+ toggle={
68
+ <DropdownToggle
69
+ onToggle={() => setControlPlanelOpen(!controlPlanelOpen)}
70
+ className="pf-u-w-100"
71
+ >
72
+ {selectedValue ? selectedValue : '3'}
73
+ </DropdownToggle>
74
+ }
75
+ name="controlPlaneCount"
76
+ isOpen={controlPlanelOpen}
77
+ onSelect={onControlPlaneSelect}
78
+ dropdownItems={dropdownItems}
79
+ className="pf-u-w-100"
80
+ />
81
+ </FormGroup>
82
+ ) : (
83
+ <StaticField
84
+ name={'controlPlaneCount'}
85
+ label={t('ai:Number of control plane nodes')}
86
+ isRequired
87
+ >
88
+ {selectedValue}
89
+ </StaticField>
90
+ );
91
+ };
92
+
93
+ export default ControlPlaneNodesDropdown;
@@ -116,17 +116,6 @@ export const DiscoveryImageConfigForm: React.FC<DiscoveryImageConfigFormProps> =
116
116
  <>
117
117
  <ModalBoxBody>
118
118
  <Stack hasGutter>
119
- <StackItem>
120
- <Alert
121
- variant={AlertVariant.info}
122
- isInline
123
- title={
124
- isIPXE
125
- ? t('ai:To add hosts to the cluster, generate iPXE script.')
126
- : t('ai:To add hosts to the cluster, generate a Discovery ISO.')
127
- }
128
- />
129
- </StackItem>
130
119
  {hasDHCP === false && (
131
120
  <StackItem>
132
121
  <StaticIPInfo docVersion={docVersion} />
@@ -134,8 +123,17 @@ export const DiscoveryImageConfigForm: React.FC<DiscoveryImageConfigFormProps> =
134
123
  )}
135
124
  <StackItem>
136
125
  <Form>
137
- <AlertFormikError status={status as StatusErrorType} />
138
126
  {!hideDiscoveryImageType && <DiscoveryImageTypeControlGroup />}
127
+ <AlertFormikError status={status as StatusErrorType} />
128
+ <Alert
129
+ variant={AlertVariant.info}
130
+ isInline
131
+ title={
132
+ isIPXE
133
+ ? t('ai:To add hosts to the cluster, generate iPXE script.')
134
+ : t('ai:To add hosts to the cluster, generate a Discovery ISO.')
135
+ }
136
+ />
139
137
  <UploadSSH />
140
138
  <ProxyFields />
141
139
  </Form>
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { Stack, StackItem } from '@patternfly/react-core';
2
+ import { Flex, FlexItem } from '@patternfly/react-core';
3
3
  import { PopoverIcon, RadioField } from '../ui';
4
4
  import { useTranslation } from '../../hooks/use-translation-wrapper';
5
5
 
@@ -20,38 +20,38 @@ const DiscoveryImageTypeControlGroupLabel = ({
20
20
  const DiscoveryImageTypeControlGroup = () => {
21
21
  const { t } = useTranslation();
22
22
  return (
23
- <Stack hasGutter>
24
- <StackItem>
23
+ <Flex>
24
+ <FlexItem spacer={{ default: 'spacer3xl' }}>
25
25
  <RadioField
26
26
  name={GROUP_NAME}
27
27
  id={'minimal-iso'}
28
28
  value={'minimal-iso'}
29
29
  label={
30
30
  <DiscoveryImageTypeControlGroupLabel
31
- text={t('ai:Minimal image file: Provision with virtual media')}
31
+ text={t('ai:Minimal image file')}
32
32
  popoverContent={t(
33
33
  "ai:Recommended option. The generated discovery ISO will be smaller, but will need to download additional data during boot. This option is useful if ISO storage capacity is limited or if it's being served over a constrained network.",
34
34
  )}
35
35
  />
36
36
  }
37
37
  />
38
- </StackItem>
39
- <StackItem>
38
+ </FlexItem>
39
+ <FlexItem>
40
40
  <RadioField
41
41
  name={GROUP_NAME}
42
42
  id={'full-iso'}
43
43
  value={'full-iso'}
44
44
  label={
45
45
  <DiscoveryImageTypeControlGroupLabel
46
- text={t('ai:Full image file: Provision with physical media')}
46
+ text={t('ai:Full image file')}
47
47
  popoverContent={t(
48
48
  'ai:The generated discovery ISO will contain everything needed to boot.',
49
49
  )}
50
50
  />
51
51
  }
52
52
  />
53
- </StackItem>
54
- </Stack>
53
+ </FlexItem>
54
+ </Flex>
55
55
  );
56
56
  };
57
57
 
@@ -26,6 +26,7 @@ export type DownloadISOProps = {
26
26
  onClose: () => void;
27
27
  onReset?: () => void;
28
28
  docVersion?: string;
29
+ updateTagsForCiscoIntersight?: () => void;
29
30
  };
30
31
 
31
32
  const DownloadIso = ({
@@ -36,9 +37,16 @@ const DownloadIso = ({
36
37
  hasDHCP,
37
38
  isSNO = false,
38
39
  docVersion,
40
+ updateTagsForCiscoIntersight,
39
41
  }: DownloadISOProps) => {
40
42
  const wgetCommand = `wget -O ${fileName} '${downloadUrl || ''}'`;
41
43
  const { t } = useTranslation();
44
+
45
+ const openCiscoIntersightHostsLink = (downloadUrl: string) => {
46
+ updateTagsForCiscoIntersight ? updateTagsForCiscoIntersight() : '';
47
+ window.open(getCiscoIntersightLink(downloadUrl), '_blank', 'noopener');
48
+ };
49
+
42
50
  return (
43
51
  <>
44
52
  <ModalBoxBody>
@@ -66,7 +74,7 @@ const DownloadIso = ({
66
74
  icon={<ExternalLinkAltIcon />}
67
75
  iconPosition="right"
68
76
  isInline
69
- onClick={() => window.open(getCiscoIntersightLink(downloadUrl), '_blank', 'noopener')}
77
+ onClick={() => openCiscoIntersightHostsLink(downloadUrl)}
70
78
  >
71
79
  {t('ai:Add hosts from Cisco Intersight')}
72
80
  </Button>
@@ -82,7 +82,7 @@ export const getClusterDetailsInitialValues = ({
82
82
  platform: cluster?.platform?.type || 'none',
83
83
  customOpenshiftSelect: null,
84
84
  userManagedNetworking: cluster?.userManagedNetworking || false,
85
- controlPlaneCount: cluster?.controlPlaneCount?.toString() || '3',
85
+ controlPlaneCount: cluster?.controlPlaneCount || 3,
86
86
  };
87
87
  };
88
88
 
@@ -34,7 +34,7 @@ export type ClusterDetailsValues = {
34
34
  platform: PlatformType;
35
35
  customOpenshiftSelect: OpenshiftVersionOptionType | null;
36
36
  userManagedNetworking: boolean;
37
- controlPlaneCount: string;
37
+ controlPlaneCount: number;
38
38
  };
39
39
 
40
40
  export type HostsValidationsProps<S extends string, V extends string[]> = {
@@ -69,7 +69,9 @@ export type ValidationActionLinkProps<S extends string> = {
69
69
  wizardStepNames: { [key in S]: string };
70
70
  };
71
71
 
72
- export type ClusterOperatorProps = Pick<Cluster, 'openshiftVersion'> & { clusterId: Cluster['id'] };
72
+ export type ClusterOperatorProps = Pick<Cluster, 'openshiftVersion'> & {
73
+ clusterId: Cluster['id'];
74
+ } & { monitoredOperators?: Cluster['monitoredOperators'] };
73
75
 
74
76
  export type ItemDropdown = {
75
77
  label: string;
@@ -94,7 +94,7 @@ export const AITableMemo = React.memo(
94
94
  </Td>
95
95
  ))}
96
96
 
97
- {row.actions && (
97
+ {!!row.actions?.length && (
98
98
  <Td isActionCell>
99
99
  <ActionsColumn
100
100
  items={row.actions}
@@ -2,7 +2,12 @@ import React from 'react';
2
2
  import { Grid, GridItem } from '@patternfly/react-core';
3
3
  import { TableVariant, Tbody, Thead, Table, Th, Tr, Td } from '@patternfly/react-table';
4
4
  import { DetailItem, DetailList, DetailListProps } from '../ui';
5
- import type { Disk, Host, Interface } from '@openshift-assisted/types/assisted-installer-service';
5
+ import type {
6
+ Disk,
7
+ Host,
8
+ Interface,
9
+ Gpu,
10
+ } from '@openshift-assisted/types/assisted-installer-service';
6
11
  import type { ValidationsInfo } from '../../types/hosts';
7
12
  import type { WithTestID } from '../../types/index';
8
13
  import { DASH } from '../constants';
@@ -107,6 +112,62 @@ const NicsTable: React.FC<NicsTableProps & WithTestID> = ({ interfaces, testId }
107
112
  );
108
113
  };
109
114
 
115
+ type GpusTableProps = {
116
+ gpus: Gpu[];
117
+ };
118
+
119
+ const gpusColumns = (t: TFunction) => [
120
+ { title: t('ai:Vendor') },
121
+ { title: t('ai:Vendor ID') },
122
+ { title: t('ai:Model') },
123
+ { title: t('ai:Device ID') },
124
+ { title: t('ai:Address') },
125
+ ];
126
+
127
+ const GpusTable: React.FC<GpusTableProps & WithTestID> = ({ gpus: gpus, testId }) => {
128
+ const { t } = useTranslation();
129
+ const rows = gpus
130
+ .sort((gpuA, gpuB) => gpuA.name?.localeCompare(gpuB.name || '') || 0)
131
+ .map((gpu) => ({
132
+ cells: [
133
+ { title: gpu.vendor, props: { 'data-testid': 'gpu-vendor' } },
134
+ { title: gpu.vendorId, props: { 'data-testid': 'gpu-vendor-id' } },
135
+ { title: gpu.name, props: { 'data-testid': 'gpu-name' } },
136
+ { title: gpu.deviceId, props: { 'data-testid': 'gpu-device-id' } },
137
+ { title: gpu.address, props: { 'data-testid': 'gpu-address' } },
138
+ ],
139
+ key: gpu.name,
140
+ })) as { cells: { title: string | React.ReactNode; props?: object }[]; key: string }[];
141
+
142
+ return (
143
+ <Table
144
+ data-testid={testId}
145
+ variant={TableVariant.compact}
146
+ aria-label={t("ai:Host's graphics processing units table")}
147
+ borders={false}
148
+ >
149
+ <Thead>
150
+ <Tr>
151
+ {gpusColumns(t).map((col, i) => (
152
+ <Th key={`col-${i}`}>{col.title}</Th>
153
+ ))}
154
+ </Tr>
155
+ </Thead>
156
+ <Tbody>
157
+ {rows.map((row, i) => (
158
+ <Tr key={`gpu-row:${row.key}`}>
159
+ {row.cells?.map((cell, j) => (
160
+ <Td key={`cell-${i}-${j}`} {...cell.props}>
161
+ {cell.title}
162
+ </Td>
163
+ ))}
164
+ </Tr>
165
+ ))}
166
+ </Tbody>
167
+ </Table>
168
+ );
169
+ };
170
+
110
171
  export const HostDetail = ({
111
172
  host,
112
173
  canEditDisks,
@@ -124,6 +185,7 @@ export const HostDetail = ({
124
185
  );
125
186
  const rowInfo = getHostRowHardwareInfo(inventory);
126
187
  const nics = inventory.interfaces || [];
188
+ const gpus = inventory.gpus || [];
127
189
 
128
190
  let bmcAddress = inventory.bmcAddress;
129
191
  if (inventory.bmcV6address) {
@@ -218,6 +280,14 @@ export const HostDetail = ({
218
280
  <GridItem>
219
281
  <NicsTable interfaces={nics} testId={'nics-table'} />
220
282
  </GridItem>
283
+ {gpus.length > 0 && (
284
+ <div>
285
+ <SectionTitle testId={'gpus-section'} title={t('ai:GPU', { count: gpus.length })} />
286
+ <GridItem>
287
+ <GpusTable gpus={gpus} testId={'gpus-table'} />
288
+ </GridItem>
289
+ </div>
290
+ )}
221
291
  </Grid>
222
292
  );
223
293
  };