Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 27 additions & 3 deletions libs/locales/lib/en/translation.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@
"ai:{{count}} control plane node installed_plural": "{{count}} control plane nodes installed",
"ai:{{count}} Disk": "{{count}} Disk",
"ai:{{count}} Disk_plural": "{{count}} Disks",
"ai:{{count}} entry": "{{count}} entry",
"ai:{{count}} entry_plural": "{{count}} entries",
"ai:{{count}} filter applied": "{{count}} filter applied",
"ai:{{count}} filter applied_plural": "{{count}} filters applied",
"ai:{{count}} filtering label": "{{count}} filtering label",
Expand Down Expand Up @@ -50,6 +52,7 @@
"ai:Add": "Add",
"ai:Add another Tang server": "Add another Tang server",
"ai:Add BMC host dialog": "Add BMC host dialog",
"ai:Add custom manifests": "Add custom manifests",
"ai:Add host": "Add host",
"ai:Add host dialog": "Add host dialog",
"ai:Add host using Baseboard Management Controller (BMC)": "Add host using Baseboard Management Controller (BMC)",
Expand Down Expand Up @@ -82,9 +85,10 @@
"ai:Already approved": "Already approved",
"ai:Also note that each host's disk write speed should meet the minimum requirements to run OpenShift. ": "Also note that the disk write speed of each host must meet the minimum requirements to run OpenShift. ",
"ai:AMD GPU requirements": "AMD GPU requirements",
"ai:An error occured": "An error occured.",
"ai:An error occured while approving agents": "An error occured while approving agents.",
"ai:An error occured while starting installation.": "An error occured while starting installation.",
"ai:An error occurred": "An error occurred.",
"ai:An error occurred while approving agents": "An error occurred while approving agents.",
"ai:An error occurred while fetching config maps": "An error occurred while fetching config maps",
"ai:An error occurred while starting installation.": "An error occurred while starting installation.",
"ai:And verify that this is the output:": "And verify the following output:",
"ai:API connectivity failure": "API connectivity failure",
"ai:API domain name resolution": "API domain name resolution",
Expand All @@ -105,6 +109,7 @@
"ai:arm64": "arm64",
"ai:arm64 is not supported in this OpenShift version": "arm64 is not supported in this OpenShift version",
"ai:At least 3 hosts are required, capable of functioning as control plane nodes.": "At least 3 hosts are required that are capable of functioning as control plane nodes.",
"ai:At least one config map is required": "At least one config map is required",
"ai:Authentication is provided by the discovery ISO, therefore when you access your host using SSH, a password is not required. Optional -i parameter can be used to specify the private key that matches the public key provided when generating Discovery ISO.": "Authentication is provided by the Discovery ISO, so a password is not required when you access your host using SSH. The optional -i parameter can be used to specify the private key that matches the public key that is provided when generating Discovery ISO.",
"ai:Auto synchronized NTP (Network Time Protocol) sources": "Auto synchronized NTP (Network Time Protocol) sources",
"ai:Auto-assign": "Auto-assign",
Expand Down Expand Up @@ -192,6 +197,9 @@
"ai:Command to download the ISO:": "Command to download the ISO:",
"ai:Compatible with cluster platform": "Compatible with cluster platform",
"ai:Condition": "Condition",
"ai:Config map name is required": "Config map name is required",
"ai:Config map not found": "Config map not found",
"ai:Config maps": "Config maps",
"ai:Configuration is hanging for a long time.": "Configuration is hanging for a long time.",
"ai:Configuration may take a few minutes.": "Configuration might take a few minutes.",
"ai:Configure": "Configure",
Expand Down Expand Up @@ -234,8 +242,12 @@
"ai:Create": "Create",
"ai:Created at": "Created at",
"ai:Currently, adding additional machines to your cluster is not supported.": "Currently, adding additional machines to your cluster is not supported.",
"ai:Custom manifests": "Custom manifests",
"ai:Data": "Data",
"ai:Database storage": "Database storage",
"ai:Default route to host": "Default route to host",
"ai:Define a config map": "Define a config map",
"ai:Define a config map with your custom manifests and select it in the form below.": "Define a config map with your custom manifests and select it in the form below.",
"ai:Define the quantity of worker nodes and nodepools to create for your cluster. Additional worker nodes and nodepools can be added after the cluster is created.": "Define the quantity of worker nodes and nodepools to create for your cluster. Additional worker nodes and nodepools can be added after the cluster is created.",
"ai:Deleted hosts": "Deleted hosts",
"ai:Deprovisioning": "Deprovisioning",
Expand Down Expand Up @@ -287,6 +299,7 @@
"ai:Edit BMH": "Edit BMH",
"ai:Edit BMH dialog": "Edit BMH dialog",
"ai:Edit cluster-wide proxy settings": "Edit cluster-wide proxy settings",
"ai:Edit config map data": "Edit config map data",
"ai:Edit ISO configuration": "Edit ISO configuration",
"ai:Edit NTP sources": "Edit NTP sources",
"ai:Edit Ntp sources dialog": "Edit NTP sources dialog",
Expand Down Expand Up @@ -316,6 +329,8 @@
"ai:Exclude destination domain names, IP addresses, or other network CIDRs from proxying by adding them to this comma-separated list.": "Exclude destination domain names, IP addresses, or other network CIDRs from proxying by adding them to this comma-separated list.",
"ai:Exposes the service externally using a cloud provider's load balancer": "Exposes the service externally using a cloud provider's load balancer",
"ai:Exposes the service on each node's IP at a static port": "Exposes the service on each node's IP at a static port",
"ai:External cloud provider": "External cloud provider",
"ai:External partner platform": "External partner platform",
"ai:Externally provisioned": "Externally provisioned",
"ai:Failed": "Failed",
"ai:Failed on {{humanizedDataTime}}": "Failed on {{humanizedDataTime}}",
Expand Down Expand Up @@ -460,6 +475,7 @@
"ai:Installing {{operatorsCountString}}": "Installing {{operatorsCountString}}",
"ai:Installing SNO will result in an OpenShift deployment that is not highly available.": "Installing SNO will result in an OpenShift deployment that is not highly available.",
"ai:Insufficient": "Insufficient",
"ai:Integrate with external partner platforms": "Integrate with external partner platforms",
"ai:IP address block from which Pod IPs are allocated This block must not overlap with existing physical networks. These IP addresses are used for the Pod network, and if you need to access the Pods from an external network, configure load balancers and routers to manage the traffic.": "IP address block from which Pod IPs are allocated. This block must not overlap with existing physical networks. These IP addresses are used for the Pod network, and if you need to access the Pods from an external network, configure load balancers and routers to manage the traffic.",
"ai:IP allocation from the DHCP server timed out.": "IP allocation from the DHCP server timed out.",
"ai:IPv4 address": "IPv4 address",
Expand Down Expand Up @@ -514,6 +530,7 @@
"ai:Make sure you download and store your credentials files in a safe place": "Make sure you download and store your credentials files in a safe place",
"ai:Manage hosts": "Manage hosts",
"ai:Management": "Management",
"ai:Manifest names in each config map should be unique across all referenced config maps.": "Manifest names in each config map should be unique across all referenced config maps.",
"ai:Manually fix the host's NTP configuration or provide additional NTP sources.": "Manually fix the host's NTP configuration or provide additional NTP sources.",
"ai:Manufacturer": "Manufacturer",
"ai:Maximum availability {{maxAgents}}": "Maximum availability {{maxAgents}}",
Expand Down Expand Up @@ -584,10 +601,12 @@
"ai:No OpenShift images available for selected CPU architecture {{cpuArchitecture}}.": "No OpenShift images available for selected CPU architecture {{cpuArchitecture}}.",
"ai:No options available": "No options available",
"ai:No overlapping CIDR": "No overlapping CIDR",
"ai:No platform integration": "No platform integration",
"ai:No proxy": "No proxy",
"ai:No proxy domains": "No proxy domains",
"ai:No release image is available.": "No release image is available.",
"ai:No results found": "No results found",
"ai:No results found for {{filter}}": "No results found for {{filter}}",
"ai:No results match the filter criteria. Clear filters to show results.": "No results match the filter criteria. Clear filters to show results.",
"ai:No skip installation disk": "No skip installation disk",
"ai:No skip missing disk": "No skip missing disk",
Expand Down Expand Up @@ -617,6 +636,7 @@
"ai:Number of characters between dots (.) must be 1-63": "Number of characters between dots (.) must be 1-63",
"ai:Number of control plane nodes": "Number of control plane nodes",
"ai:Number of hosts": "Number of hosts",
"ai:Nutanix": "Nutanix",
"ai:NVIDIA GPU requirements": "NVIDIA GPU requirements",
"ai:OADP requirements": "OADP requirements",
"ai:OCS requirements": "OCS requirements",
Expand Down Expand Up @@ -727,6 +747,8 @@
"ai:Scale down the nodepool or make more hosts available.": "Scale down the nodepool or make more hosts available.",
"ai:Secret and keys": "Secret and keys",
"ai:Select all": "Select all",
"ai:Select an OpenShift version from the list or use the type ahead to narrow down the list.": "Select an OpenShift version from the list or use the type ahead to narrow down the list.",
"ai:Select config maps from the list or use the type ahead to narrow down the list.": "Select config maps from the list or use the type ahead to narrow down the list.",
"ai:Select how you'd like to add hosts (Discovery ISO, iPXE, or BMC form) and follow the instructions that appear.": "Select the method of adding hosts (Discovery ISO, iPXE, or BMC form) and follow the instructions.",
"ai:Select none": "Select none",
"ai:Select one or more locations to view hosts": "Select one or more locations to view hosts",
Expand All @@ -752,6 +774,7 @@
"ai:Size": "Size",
"ai:SNO: One host is required with at least {{sno_cpu_cores}} CPU cores, {{snoRam}} of RAM, and {{sno_disksize}} GB of disk size storage.": "SNO: One host is required with at least {{sno_cpu_cores}} CPU cores, {{snoRam}} of RAM, and {{sno_disksize}} GB of disk size storage.",
"ai:Software-Defined Networking (SDN)": "Software-Defined Networking (SDN)",
"ai:Some config map items are invalid": "Some config map items are invalid",
"ai:Some details are not editable after the draft cluster was created.": "Some details are not editable after the draft cluster was created.",
"ai:Some hosts are in a warning state.": "Some hosts are in a warning state.",
"ai:Some hosts are in an error state.": "Some hosts are in an error state.",
Expand Down Expand Up @@ -911,6 +934,7 @@
"ai:View host events": "View host events",
"ai:VIP IP allocation from DHCP server has been timed out": "VIP IP allocation from DHCP server has timed out",
"ai:Virtual machine": "Virtual machine",
"ai:vSphere": "vSphere",
"ai:Vsphere disk uuid enabled": "Vsphere disk uuid enabled",
"ai:Waiting for host...": "Waiting for host...",
"ai:Waiting for host..._plural": "Waiting for hosts...",
Expand Down
2 changes: 1 addition & 1 deletion libs/ui-lib/lib/cim/components/Agent/AgentStatus.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import { getAIHosts } from '../helpers/toAssisted';
import { getAgentStatus, getWizardStepAgentStatus } from '../helpers/status';

import '@patternfly/react-styles/css/utilities/Text/text.css';
import { AdditionalNTPSourcesDialogToggle } from '../ClusterDeployment/AdditionalNTPSourcesDialogToggle';
import { AdditionalNTPSourcesDialogToggle } from '../ClusterDeployment/components';
import { useTranslation } from '../../../common/hooks/use-translation-wrapper';
import ValidationsRunningAlert from '../common/ValidationsRunningAlert';
import { agentStatus } from '../helpers/agentStatus';
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,18 @@ import * as React from 'react';
import { useTranslation } from '../../../common/hooks/use-translation-wrapper';
import { Grid, GridItem, Wizard, WizardStep } from '@patternfly/react-core';
import { AlertsContextProvider, LoadingState } from '../../../common';
import ClusterDeploymentDetailsStep from './ClusterDeploymentDetailsStep';
import ClusterDeploymentNetworkingStep from './ClusterDeploymentNetworkingStep';
import ClusterDeploymentHostSelectionStep from './ClusterDeploymentHostSelectionStep';
import { ClusterDeploymentWizardProps } from './types';
import ClusterDeploymentHostsDiscoveryStep from './ClusterDeploymentHostsDiscoveryStep';
import { ACMFeatureSupportLevelProvider } from '../featureSupportLevels';
import ClusterDeploymentReviewStep from './ClusterDeploymentReviewStep';
import { YamlPreview, useYamlPreview } from '../YamlPreview';
import { wizardStepNames } from './constants';
import { ClusterDeploymentWizardContextProvider } from './ClusterDeploymentWizardContext';
import { isCIMFlow } from './helpers';
import { ClusterDeploymentDetailsStep } from './clusterDetails';
import { ClusterDeploymentHostSelectionStep } from './hostSelection';
import { ClusterDeploymentHostsDiscoveryStep } from './hostDiscovery';
import { ClusterDeploymentNetworkingStep } from './networking';
import { ClusterDeploymentReviewStep } from './review';
import { ClusterDeploymentCustomManifestsStep } from './customManifests';

export const ClusterDeploymentWizard = ({
className,
Expand Down Expand Up @@ -76,6 +77,7 @@ export const ClusterDeploymentWizard = ({
id={'installation-type'}
isDisabled
/>

<WizardStep name={stepNames['cluster-details']} id={'cluster-details'}>
<ClusterDeploymentDetailsStep
clusterImages={clusterImages}
Expand All @@ -89,7 +91,9 @@ export const ClusterDeploymentWizard = ({
isNutanix={isNutanix}
/>
</WizardStep>

<WizardStep name={stepNames['automation']} id={'automation'} isDisabled />

{isCIMFlow(clusterDeployment) ? (
<WizardStep name={stepNames['hosts-selection']} id={'host-selection'}>
{agentClusterInstall?.metadata?.name ? (
Expand Down Expand Up @@ -131,6 +135,7 @@ export const ClusterDeploymentWizard = ({
)}
</WizardStep>
)}

<WizardStep name={stepNames['networking']} id={'networking'}>
<ClusterDeploymentNetworkingStep
clusterDeployment={clusterDeployment}
Expand All @@ -145,6 +150,11 @@ export const ClusterDeploymentWizard = ({
isNutanix={isNutanix}
/>
</WizardStep>

<WizardStep name={stepNames['custom-manifests']} id={'custom-manifests'}>
<ClusterDeploymentCustomManifestsStep agentClusterInstall={agentClusterInstall} />
</WizardStep>

<WizardStep name={stepNames['review']} id={'review'}>
<ClusterDeploymentReviewStep
onFinish={onFinish}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { useFormikContext } from 'formik';
import { Flex, FlexItem, Form, FormGroup } from '@patternfly/react-core';
import { getAgentsForSelection } from '../helpers/agents';
import { AgentK8sResource } from '../../types/k8s/agent';
import ClusterDeploymentHostsSelectionAdvanced from './ClusterDeploymentHostsSelectionAdvanced';
import { ClusterDeploymentHostsSelectionAdvanced } from './hostSelection';
import { ScaleUpFormValues } from './types';
import SwitchField from '../../../common/components/ui/formik/SwitchField';
import ClusterScaleUpAutoHostsSelection from './ClusterScaleUpAutoHostsSelection';
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@ import React from 'react';
import { Formik, FormikProps, useFormikContext } from 'formik';
import { Stack } from '@patternfly/react-core';
import noop from 'lodash-es/noop.js';
import { ClusterDetailsValues, getRichTextValidation } from '../../../common';
import { ClusterImageSetK8sResource } from '../../types/k8s/cluster-image-set';
import ClusterDeploymentDetailsForm from './ClusterDeploymentDetailsForm';
import { ClusterDetailsValues, getRichTextValidation } from '../../../../common';
import { ClusterImageSetK8sResource } from '../../../types/k8s/cluster-image-set';
import { useDetailsFormik } from './ClusterDeploymentDetailsStep';
import { ClusterDetailsFormFieldsProps } from './ClusterDetailsFormFields';
import { OsImage } from '../../types';
import { getOCPVersions } from '../helpers';
import { OsImage } from '../../../types';
import { getOCPVersions } from '../../helpers';
import { ClusterDeploymentDetailsForm } from './ClusterDeploymentDetailsForm';

type DetailsFormBodyProps = {
clusterImages: ClusterImageSetK8sResource[];
Expand Down Expand Up @@ -49,7 +49,7 @@ type ACMClusterDeploymentDetailsStepProps = DetailsFormBodyProps & {
formRef: React.Ref<FormikProps<ClusterDetailsValues>>;
};

const ACMClusterDeploymentDetailsStep: React.FC<ACMClusterDeploymentDetailsStepProps> = ({
export const ACMClusterDeploymentDetailsStep: React.FC<ACMClusterDeploymentDetailsStepProps> = ({
clusterImages,
formRef,
usedClusterNames,
Expand Down Expand Up @@ -80,5 +80,3 @@ const ACMClusterDeploymentDetailsStep: React.FC<ACMClusterDeploymentDetailsStepP
</Formik>
);
};

export default ACMClusterDeploymentDetailsStep;
Original file line number Diff line number Diff line change
Expand Up @@ -8,18 +8,26 @@ import {
useWizardFooter,
WizardFooter,
} from '@patternfly/react-core';
import { AgentClusterInstallK8sResource, ClusterDeploymentK8sResource, OsImage } from '../../types';
import { ClusterImageSetK8sResource } from '../../types/k8s/cluster-image-set';
import { getOCPVersions, getSelectedVersion } from '../helpers';
import { useTranslation } from '../../../common/hooks/use-translation-wrapper';
import {
AgentClusterInstallK8sResource,
ClusterDeploymentK8sResource,
OsImage,
} from '../../../types';
import { ClusterImageSetK8sResource } from '../../../types/k8s/cluster-image-set';
import { getOCPVersions, getSelectedVersion } from '../../helpers';
import { useTranslation } from '../../../../common/hooks/use-translation-wrapper';
import {
ClusterDetailsFormFields,
ClusterDetailsFormFieldsProps,
} from './ClusterDetailsFormFields';
import { useFormikContext } from 'formik';
import { ClusterDetailsValues, CpuArchitecture, SupportedCpuArchitecture } from '../../../common';
import { ClusterDeploymentWizardContext } from './ClusterDeploymentWizardContext';
import { ValidationSection } from './components/ValidationSection';
import {
ClusterDetailsValues,
CpuArchitecture,
SupportedCpuArchitecture,
} from '../../../../common';
import { ClusterDeploymentWizardContext } from '../ClusterDeploymentWizardContext';
import { ValidationSection } from '../components/ValidationSection';
import { toNumber } from 'lodash-es';

type ClusterDeploymentDetailsFormProps = {
Expand Down Expand Up @@ -74,7 +82,7 @@ export const ClusterDeploymentDetailsFormWrapper = ({
{syncError && (
<StackItem>
<ValidationSection currentStepId={'networking'} hosts={[]}>
<Alert variant={AlertVariant.danger} title={t('ai:An error occured')} isInline>
<Alert variant={AlertVariant.danger} title={t('ai:An error occurred')} isInline>
{syncError}
</Alert>
</ValidationSection>
Expand All @@ -84,7 +92,7 @@ export const ClusterDeploymentDetailsFormWrapper = ({
);
};

const ClusterDeploymentDetailsForm: React.FC<ClusterDeploymentDetailsFormProps> = ({
export const ClusterDeploymentDetailsForm: React.FC<ClusterDeploymentDetailsFormProps> = ({
agentClusterInstall,
clusterDeployment,
clusterImages,
Expand Down Expand Up @@ -150,5 +158,3 @@ const ClusterDeploymentDetailsForm: React.FC<ClusterDeploymentDetailsFormProps>
</>
);
};

export default ClusterDeploymentDetailsForm;
Loading
Loading