diff --git a/packages/manager/.changeset/pr-10128-upcoming-features-1706647613582.md b/packages/manager/.changeset/pr-10128-upcoming-features-1706647613582.md new file mode 100644 index 00000000000..c1266c30b22 --- /dev/null +++ b/packages/manager/.changeset/pr-10128-upcoming-features-1706647613582.md @@ -0,0 +1,5 @@ +--- +"@linode/manager": Upcoming Features +--- + +Update ACLB Copy ([#10128](https://github.com/linode/manager/pull/10128)) diff --git a/packages/manager/cypress/e2e/core/loadBalancers/load-balancer-configurations.spec.ts b/packages/manager/cypress/e2e/core/loadBalancers/load-balancer-configurations.spec.ts index af6a62132a8..e180fe1d090 100644 --- a/packages/manager/cypress/e2e/core/loadBalancers/load-balancer-configurations.spec.ts +++ b/packages/manager/cypress/e2e/core/loadBalancers/load-balancer-configurations.spec.ts @@ -90,7 +90,9 @@ describe('Akamai Cloud Load Balancer configurations page', () => { ui.drawer.findByTitle('Add Certificate').within(() => { cy.findByLabelText('Add Existing Certificate').click(); - cy.findByLabelText('Host Header').should('be.visible').type('*'); + cy.findByLabelText('Server Name Indication (SNI) Hostname') + .should('be.visible') + .type('*'); cy.findByLabelText('Certificate').should('be.visible').click(); @@ -319,7 +321,9 @@ describe('Akamai Cloud Load Balancer configurations page', () => { ui.drawer.findByTitle('Add Certificate').within(() => { cy.findByLabelText('Add Existing Certificate').click(); - cy.findByLabelText('Host Header').should('be.visible').type('*'); + cy.findByLabelText('Server Name Indication (SNI) Hostname') + .should('be.visible') + .type('*'); cy.findByLabelText('Certificate').should('be.visible').click(); @@ -424,7 +428,9 @@ describe('Akamai Cloud Load Balancer configurations page', () => { ui.drawer.findByTitle('Add Certificate').within(() => { cy.findByLabelText('Add Existing Certificate').click(); - cy.findByLabelText('Host Header').type('example-1.com'); + cy.findByLabelText('Server Name Indication (SNI) Hostname').type( + 'example-1.com' + ); cy.findByLabelText('Certificate').click(); diff --git a/packages/manager/cypress/e2e/core/loadBalancers/load-balancer-routes.spec.ts b/packages/manager/cypress/e2e/core/loadBalancers/load-balancer-routes.spec.ts index 4df0ea0d548..bcf952ca27b 100644 --- a/packages/manager/cypress/e2e/core/loadBalancers/load-balancer-routes.spec.ts +++ b/packages/manager/cypress/e2e/core/loadBalancers/load-balancer-routes.spec.ts @@ -539,7 +539,7 @@ describe('Akamai Cloud Load Balancer routes page', () => { .findByTitle('Edit Rule') .should('be.visible') .within(() => { - cy.findByLabelText('Hostname (optional)') + cy.findByLabelText('Hostname Match (optional)') .should('have.value', routes[0].rules[0].match_condition.hostname) .clear() .type('example.com'); diff --git a/packages/manager/cypress/e2e/core/loadBalancers/load-balancer-service-targets.spec.ts b/packages/manager/cypress/e2e/core/loadBalancers/load-balancer-service-targets.spec.ts index c0ac906e261..d8df5927f38 100644 --- a/packages/manager/cypress/e2e/core/loadBalancers/load-balancer-service-targets.spec.ts +++ b/packages/manager/cypress/e2e/core/loadBalancers/load-balancer-service-targets.spec.ts @@ -200,7 +200,7 @@ describe('Akamai Cloud Load Balancer service targets', () => { .should('be.visible') .click(); - cy.findByLabelText('Health Check Host') + cy.findByLabelText('Health Check Host Header') .scrollIntoView() .should('be.visible') .type('example.com'); @@ -378,7 +378,7 @@ describe('Akamai Cloud Load Balancer service targets', () => { mockServiceTarget.healthcheck.path ); - cy.findByLabelText('Health Check Host', { exact: false }).should( + cy.findByLabelText('Health Check Host Header', { exact: false }).should( 'have.value', mockServiceTarget.healthcheck.host ); diff --git a/packages/manager/src/features/LoadBalancers/LoadBalancerCreate/AddRouteDrawer.tsx b/packages/manager/src/features/LoadBalancers/LoadBalancerCreate/AddRouteDrawer.tsx index 5784b04a17b..a30d9dd7a23 100644 --- a/packages/manager/src/features/LoadBalancers/LoadBalancerCreate/AddRouteDrawer.tsx +++ b/packages/manager/src/features/LoadBalancers/LoadBalancerCreate/AddRouteDrawer.tsx @@ -58,7 +58,7 @@ export const AddRouteDrawer = (props: Props) => { return ( - {ROUTE_COPY.Description.main} + {ROUTE_COPY.Protocol.main} {ROUTE_COPY.Description[routeProtocol]} setMode(value as Mode)} value={mode}> diff --git a/packages/manager/src/features/LoadBalancers/LoadBalancerCreate/ConfigurationDetails.tsx b/packages/manager/src/features/LoadBalancers/LoadBalancerCreate/ConfigurationDetails.tsx index ee7e3056228..1f3ec5884d7 100644 --- a/packages/manager/src/features/LoadBalancers/LoadBalancerCreate/ConfigurationDetails.tsx +++ b/packages/manager/src/features/LoadBalancers/LoadBalancerCreate/ConfigurationDetails.tsx @@ -9,12 +9,12 @@ import { Link } from 'src/components/Link'; import { TextField } from 'src/components/TextField'; import { TooltipIcon } from 'src/components/TooltipIcon'; import { Typography } from 'src/components/Typography'; -import { ACLB_DOCS_TLS_CERTIFICATE } from 'src/features/LoadBalancers/constants'; import { CONFIGURATION_COPY, protocolOptions, } from '../LoadBalancerDetail/Configurations/constants'; +import { ACLB_DOCS } from '../constants'; import type { Handlers } from './LoadBalancerConfigurations'; import type { LoadBalancerCreateFormData } from './LoadBalancerCreateFormWrapper'; @@ -96,7 +96,7 @@ export const ConfigurationDetails = ({ index }: Props) => { /> After the load balancer is created, and if the protocol is HTTPS, upload TLS termination certificates.{' '} - Learn more. + Learn more. diff --git a/packages/manager/src/features/LoadBalancers/LoadBalancerCreate/RuleDrawer.tsx b/packages/manager/src/features/LoadBalancers/LoadBalancerCreate/RuleDrawer.tsx index 584ed8ce740..186eb968241 100644 --- a/packages/manager/src/features/LoadBalancers/LoadBalancerCreate/RuleDrawer.tsx +++ b/packages/manager/src/features/LoadBalancers/LoadBalancerCreate/RuleDrawer.tsx @@ -188,13 +188,13 @@ export const RuleDrawer = (props: Props) => { ? formik.errors.match_condition?.hostname : undefined } - label="Hostname" + label="Hostname Match" labelTooltipText={ROUTE_COPY.Rule.Hostname} name="match_condition.hostname" onBlur={formik.handleBlur} onChange={formik.handleChange} optional - placeholder="www.example.com" + placeholder="www.example.org" value={formik.values.match_condition.hostname} /> diff --git a/packages/manager/src/features/LoadBalancers/LoadBalancerCreate/ServiceTargetDrawer.tsx b/packages/manager/src/features/LoadBalancers/LoadBalancerCreate/ServiceTargetDrawer.tsx index f4f31d13142..e55104b0444 100644 --- a/packages/manager/src/features/LoadBalancers/LoadBalancerCreate/ServiceTargetDrawer.tsx +++ b/packages/manager/src/features/LoadBalancers/LoadBalancerCreate/ServiceTargetDrawer.tsx @@ -9,10 +9,8 @@ import { Drawer } from 'src/components/Drawer'; import { FormControlLabel } from 'src/components/FormControlLabel'; import { Radio } from 'src/components/Radio/Radio'; import { RadioGroup } from 'src/components/RadioGroup'; -import { Typography } from 'src/components/Typography'; import { getNextLabel } from 'src/utilities/stringUtils'; -import { SERVICE_TARGET_COPY } from '../LoadBalancerDetail/ServiceTargets/constants'; import { LoadBalancerCreateFormData } from './LoadBalancerCreateFormWrapper'; import { ServiceTargetForm } from './ServiceTargetForm'; @@ -38,7 +36,6 @@ export const ServiceTargetDrawer = (props: Props) => { open={open} title={isEditMode ? 'Edit Service Target' : 'Add a Service Target'} > - {SERVICE_TARGET_COPY.Description} {!isEditMode && ( setMode(value as Mode)} diff --git a/packages/manager/src/features/LoadBalancers/LoadBalancerCreate/ServiceTargetForm.tsx b/packages/manager/src/features/LoadBalancers/LoadBalancerCreate/ServiceTargetForm.tsx index f61addf9f32..a3c0b99213b 100644 --- a/packages/manager/src/features/LoadBalancers/LoadBalancerCreate/ServiceTargetForm.tsx +++ b/packages/manager/src/features/LoadBalancers/LoadBalancerCreate/ServiceTargetForm.tsx @@ -147,6 +147,9 @@ export const ServiceTargetForm = (props: Props) => { onChange={(_, { value }) => formik.setFieldValue('protocol', value)} options={protocolOptions} /> + + Algorithm + {SERVICE_TARGET_COPY.Headers.Algorithm} formik.setFieldValue('load_balancing_policy', selected.value) @@ -164,9 +167,6 @@ export const ServiceTargetForm = (props: Props) => { ); }} - textFieldProps={{ - labelTooltipText: SERVICE_TARGET_COPY.Tooltips.Algorithm, - }} value={algorithmOptions.find( (option) => option.value === formik.values.load_balancing_policy )} @@ -187,12 +187,9 @@ export const ServiceTargetForm = (props: Props) => { {formik.values.protocol === 'https' && ( <> - + Service Target CA Certificate - + {SERVICE_TARGET_COPY.Headers.Certificate} { /> Upload service target endpoint CA certificates after the load balancer is created and the protocol is HTTPS.{' '} - Learn more. + Learn more. )} - + Health Checks - + {SERVICE_TARGET_COPY.Headers.HealthCheck} @@ -315,12 +309,12 @@ export const ServiceTargetForm = (props: Props) => { ? formik.errors.healthcheck?.host : undefined } - label="Health Check Host" + label="Health Check Host Header" labelTooltipText={SERVICE_TARGET_COPY.Tooltips.Healthcheck.Host} name="healthcheck.host" onBlur={formik.handleBlur} onChange={formik.handleChange} - placeholder="example.org" + placeholder="check.endpoint.org" value={formik.values.healthcheck.host} /> diff --git a/packages/manager/src/features/LoadBalancers/LoadBalancerDetail/Certificates/Certificates.tsx b/packages/manager/src/features/LoadBalancers/LoadBalancerDetail/Certificates/Certificates.tsx index 708865e90af..41020cba6b4 100644 --- a/packages/manager/src/features/LoadBalancers/LoadBalancerDetail/Certificates/Certificates.tsx +++ b/packages/manager/src/features/LoadBalancers/LoadBalancerDetail/Certificates/Certificates.tsx @@ -4,7 +4,6 @@ import { useHistory, useLocation, useParams } from 'react-router-dom'; import { ActionMenu } from 'src/components/ActionMenu/ActionMenu'; import { Button } from 'src/components/Button/Button'; import { CircleProgress } from 'src/components/CircleProgress'; -import { Link } from 'src/components/Link'; import { PaginationFooter } from 'src/components/PaginationFooter/PaginationFooter'; import { Stack } from 'src/components/Stack'; import { Table } from 'src/components/Table'; @@ -23,6 +22,7 @@ import { useLoadBalancerCertificatesQuery } from 'src/queries/aglb/certificates' import { CreateCertificateDrawer } from './CreateCertificateDrawer'; import { DeleteCertificateDialog } from './DeleteCertificateDialog'; import { EditCertificateDrawer } from './EditCertificateDrawer'; +import { CERTIFICATES_COPY } from './constants'; import type { Certificate, Filter } from '@linode/api-v4'; @@ -98,27 +98,7 @@ export const Certificates = () => { gap={2} justifyContent="space-between" > - {certType === 'ca' ? ( - - Used by the load balancer to accept responses from your endpoints in - your Service Target. This is the certificate installed on your - Endpoints. Apply these certificate(s) in the{' '} - - Service Targets - {' '} - Tab. - - ) : ( - - Certificate used by your load balancer to terminate the connection - and decrypt request from client. Apply these certificate(s) in the - Details section of your HTTPS{' '} - - Configuration - - . - - )} + {CERTIFICATES_COPY.Tabs[certType]}