Skip to content

Commit ab96330

Browse files
committed
Fix copy and add missing help panels
1 parent 9b5c7b6 commit ab96330

File tree

6 files changed

+131
-35
lines changed

6 files changed

+131
-35
lines changed

frontend/locales/en/strings.json

Lines changed: 43 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@
117117
"tooltiptext": "Copy the command to SSH into the head node. If the key pair you use to create the head node isn't the default, you must specify the path to the key pair. See <0>Connect to your Linux instance using an SSH Client</0> for more information."
118118
},
119119
"configurationLabel": "Cluster configuration",
120-
"configurationLink": "VIEW",
120+
"configurationLink": "View YAML",
121121
"statusLabel": "Cluster status",
122122
"computeFleetStatusLabel": "Compute fleet status",
123123
"creationTimeLabel": "Created time",
@@ -280,14 +280,14 @@
280280
"cancel": "Cancel",
281281
"create": "Create cluster",
282282
"edit": "Edit cluster",
283-
"createFromWizard": "Use interface",
284-
"createFromTemplate": "Upload a template",
285-
"createFromCluster": "From another cluster",
283+
"createFromWizard": "Step by step",
284+
"createFromTemplate": "With a template",
285+
"createFromCluster": "With an existing cluster",
286286
"start": "Start fleet",
287287
"stop": "Stop fleet",
288288
"delete": "Delete cluster",
289289
"shell": "Shell",
290-
"filesystem": "File system",
290+
"filesystem": "View file system",
291291
"dcv": "DCV",
292292
"logs": "View logs"
293293
},
@@ -339,8 +339,8 @@
339339
"preferencesModalDarkThemes": "Dark themes"
340340
},
341341
"fromClusterModal": {
342-
"title": "Create cluster from another cluster",
343-
"description": "Use an existing cluster as starting point for the configuration of your new cluster. Only clusters whose version matches the version of AWS ParallelCluster can be selected.",
342+
"title": "Start with an existing cluster",
343+
"description": "Choose an existing cluster to populate the wizard before you start. Only clusters whose version matches the version of AWS ParallelCluster can be selected.",
344344
"actions": {
345345
"cancel": "Cancel",
346346
"create": "Create"
@@ -575,12 +575,12 @@
575575
},
576576
"headNode": {
577577
"title": "Head node",
578-
"description": "Configure the head node.",
578+
"description": "Configure the cluster head node.",
579579
"instance": {
580580
"title": "Head node instance"
581581
},
582582
"help": {
583-
"main": "<p>Configure the head node of your cluster.</p><p>Choose <strong>Refresh</strong> to view recently changed or added AWS resources.</p>",
583+
"main": "<p>Configure the head node of your cluster. The head node serves as the management node for cluster operations. You use the head node to access and manage the cluster and users. Cluster users access the head node to submit jobs.</p><p>Choose <strong>Refresh</strong> to view recently changed or added AWS resources.</p>",
584584
"instanceSelectionLink": {
585585
"title": "Head node instance type selection",
586586
"href": "https://docs.aws.amazon.com/parallelcluster/latest/ug/best-practices-v3.html?icmpid=docs_parallelcluster_hp_headnode_v1#best-practices-head-node-instance-type"
@@ -648,7 +648,7 @@
648648
"header": "Networking",
649649
"subnetId": {
650650
"label": "Subnet ID",
651-
"description": "Subnet ID for head node."
651+
"description": "Subnet ID for the head node."
652652
}
653653
},
654654
"security": {
@@ -728,9 +728,10 @@
728728
},
729729
"storage": {
730730
"title": "Storage",
731-
"description": "Configure shared storage for your cluster.",
731+
"description": "Add and configure shared storage for your cluster. Shared storage is shared between the head node and compute nodes.",
732732
"container": {
733733
"title": "Storage settings",
734+
"description": "Add up to <0>20 file systems</0> for shared storage.",
734735
"noStorageSelected": "No shared storage options selected.",
735736
"storageTypes": "Storage types",
736737
"storageTypesPlaceholder": "Select file system types",
@@ -786,7 +787,11 @@
786787
},
787788
"lustreType": {
788789
"label": "FSx for Lustre",
789-
"help": "Choose SCRATCH_1 and SCRATCH_2 deployment types when you need temporary storage and shorter-term processing of data. The SCRATCH_2 deployment type provides in-transit encryption of data and higher burst throughput capacity than SCRATCH_1. Choose the PERSISTENT_2 deployment type for longer-term storage and workloads and encryption of data in transit, choose PERSISTENT_1 only for backwards compatibility. See <0>DeploymentType</0>."
790+
"help": "<p>Choose <code>SCRATCH_1</code> and <code>SCRATCH_2</code> deployment types when you need temporary storage and shorter-term processing of data.</p><p>The <code>SCRATCH_2</code> deployment type provides in-transit encryption of data and higher burst throughput capacity than <code>SCRATCH_1</code>.</p><p>Choose the <code>PERSISTENT_2</code> deployment type for longer-term storage and workloads and encryption of data in transit.</p><p>Choose <code>PERSISTENT_1</code> only for backwards compatibility.</p>",
791+
"link": {
792+
"title": "DeploymentType settings",
793+
"href": "https://docs.aws.amazon.com/parallelcluster/latest/ug/SharedStorage-v3.html#yaml-SharedStorage-FsxLustreSettings-DeploymentType"
794+
}
790795
},
791796
"import": {
792797
"label": "Import path",
@@ -799,7 +804,7 @@
799804
"help": "Set Export path to write files from your file system into an S3 bucket. See <0>ExportPath</0>."
800805
},
801806
"throughput": {
802-
"label": "Per unit storage throughput",
807+
"label": "Per unit storage throughput (MB/s/TiB)",
803808
"help": "Configure the amount of read and write throughput for each 1 tebibyte of storage, in MB/s/TiB.",
804809
"link": {
805810
"title": "PerUnitStorageThroughput",
@@ -963,7 +968,7 @@
963968
}
964969
},
965970
"toggle": {
966-
"label": "Slurm memory based scheduling"
971+
"label": "Use Slurm memory based scheduling"
967972
},
968973
"info": {
969974
"header": "You can use Slurm memory based scheduling only when you select one instance type",
@@ -973,7 +978,15 @@
973978
"allocationStrategy": {
974979
"title": "Allocation strategy",
975980
"lowestPrice": "Lowest price",
976-
"capacityOptimized": "Capacity optimized"
981+
"capacityOptimized": "Capacity optimized",
982+
"helpPanel": {
983+
"title": "Allocation strategy",
984+
"description": "Choose the strategy for allocating instances to compute resources.",
985+
"link": {
986+
"title": "AllocationStrategy setting",
987+
"href": "https://docs.aws.amazon.com/parallelcluster/latest/ug/Scheduling-v3.html#yaml-Scheduling-SlurmQueues-AllocationStrategy"
988+
}
989+
}
977990
},
978991
"schedulableMemory": {
979992
"name": "Schedulable memory (in MiB)",
@@ -1041,7 +1054,15 @@
10411054
"placeholder": "Select a subnet"
10421055
},
10431056
"purchaseType": {
1044-
"label": "Purchase type"
1057+
"label": "Purchase type",
1058+
"helpPanel": {
1059+
"title": "Purchase type",
1060+
"description": "Choose the instance purchasing type for compute resources.",
1061+
"link": {
1062+
"title": "CapacityType setting",
1063+
"href": "https://docs.aws.amazon.com/parallelcluster/latest/ug/Scheduling-v3.html#yaml-Scheduling-SlurmQueues-CapacityType"
1064+
}
1065+
}
10451066
},
10461067
"securityGroups": {
10471068
"label": "Additional security groups"
@@ -1051,8 +1072,8 @@
10511072
"title": "Create",
10521073
"description": "Review or edit your cluster configuration and create your cluster.",
10531074
"configuration": {
1054-
"title": "Cluster configuration",
1055-
"description": "Check/edit the yaml file that is used to create the cluster",
1075+
"title": "Cluster configuration YAML file",
1076+
"description": "Review or edit the YAML file that is used to create your cluster",
10561077
"pending": "{{action}} request pending...",
10571078
"forceUpdate": "Force update: Edit the cluster while the compute fleet is still running.",
10581079
"disableRollback": "Disable rollback: Retain the cluster resources in case of a cluster create failure."
@@ -1139,14 +1160,14 @@
11391160
"description": "The list of users that have permission to access the AWS ParallelCluster User Interface."
11401161
},
11411162
"actions": {
1142-
"create": "Create",
1163+
"add": "Add user",
11431164
"refresh": "Refresh",
1144-
"delete": "Delete",
1165+
"remove": "Remove",
11451166
"cancel": "Cancel"
11461167
},
11471168
"helpPanel": {
11481169
"title": "Users",
1149-
"description": "Maintain the list of cognito users with credentials that only permit access to the $t(global.projectName).<p>Enter a user email address and choose <strong>Create user</strong> to add a user.</p><p>Choose <strong>Delete</strong> to remove a user.</p><p>Choose <strong>Refresh</strong> to view changes to the list of users.</p>"
1170+
"description": "Maintain the list of cognito users with credentials that only permit access to the $t(global.projectName).<p>Enter a user email address and choose <strong>Add user</strong></p><p>Choose <strong>Remove</strong> to remove a user.</p><p>Choose <strong>Refresh</strong> to view changes to the list of users.</p>"
11501171
},
11511172
"list": {
11521173
"columns": {
@@ -1204,7 +1225,7 @@
12041225
},
12051226
"helpPanel": {
12061227
"title": "Custom images",
1207-
"description": "Choose <strong>Build image</strong> to create your custom image.<p>You can only <strong>Create images</strong> with the same AWS ParallelCluster version that was used to create the $t(global.projectName).</p><p>If you choose <strong>Build image</strong>, you proceed to create a custom image by uploading a configuration, by entering the ID of an existing image, or by manually entering the configuration.</p><p>You can only <strong>Create images</strong> with the same AWS ParallelCluster version that was used to create the $t(global.projectName).</p><p>After you have provided the configuration, you choose <strong>Build image</strong>.</p><p>Choose <strong>Refresh</strong> to view recently changed or added AWS resources.",
1228+
"description": "Choose <strong>Build image</strong> to create your custom image.<p>You can only build images with the same AWS ParallelCluster version that was used to create the $t(global.projectName).</p><p>If you choose <strong>Build image</strong>, you proceed to create a custom image by uploading a configuration, by entering the ID of an existing image, or by manually entering the configuration.</p><p>After you have provided the configuration, you choose <strong>Build image</strong>.</p><p>Choose <strong>Refresh</strong> to view recently changed or added AWS resources.",
12081229
"amiCustomizationlink": {
12091230
"title": "AWS ParallelCluster AMI customization",
12101231
"href": "https://docs.aws.amazon.com/parallelcluster/latest/ug/custom-ami-v3.html?icmpid=docs_parallelcluster_hp_custom_images_v1"

frontend/src/components/DeleteDialog.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ export function DeleteDialog({children, deleteCallback, header, id}: any) {
4343
<SpaceBetween direction="horizontal" size="xs">
4444
<Button onClick={cancel}>{t('users.actions.cancel')}</Button>
4545
<Button onClick={deleteCallback}>
46-
{t('users.actions.delete')}
46+
{t('users.actions.remove')}
4747
</Button>
4848
</SpaceBetween>
4949
</Box>

frontend/src/i18n/index.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,9 @@ i18n.use(initReactI18next).init({
1616
interpolation: {
1717
escapeValue: false, // react already safes from xss
1818
},
19+
react: {
20+
transKeepBasicHtmlNodesFor: ['br', 'strong', 'i', 'code', 'p'],
21+
},
1922
})
2023

2124
export default i18n

frontend/src/old-pages/Configure/Queues/Queues.tsx

Lines changed: 55 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@ import {
5959
queueNameErrorsMapping,
6060
QUEUE_NAME_MAX_LENGTH,
6161
} from './queues.validators'
62+
import InfoLink from '../../../components/InfoLink'
6263

6364
// Constants
6465
const queuesPath = ['app', 'wizard', 'config', 'Scheduling', 'SlurmQueues']
@@ -455,6 +456,26 @@ function Queue({index}: any) {
455456
)
456457
}
457458

459+
const purchaseTypeFooterLinks = React.useMemo(
460+
() => [
461+
{
462+
title: t('wizard.queues.purchaseType.helpPanel.link.title'),
463+
href: t('wizard.queues.purchaseType.helpPanel.link.href'),
464+
},
465+
],
466+
[t],
467+
)
468+
469+
const allocationStrategyFooterLinks = React.useMemo(
470+
() => [
471+
{
472+
title: t('wizard.queues.allocationStrategy.helpPanel.link.title'),
473+
href: t('wizard.queues.allocationStrategy.helpPanel.link.href'),
474+
},
475+
],
476+
[t],
477+
)
478+
458479
return (
459480
<Container
460481
header={
@@ -567,7 +588,22 @@ function Queue({index}: any) {
567588
>
568589
<Trans i18nKey="wizard.queues.placementGroup.label" />
569590
</Checkbox>
570-
<FormField label={t('wizard.queues.purchaseType.label')}>
591+
<FormField
592+
label={t('wizard.queues.purchaseType.label')}
593+
info={
594+
<InfoLink
595+
helpPanel={
596+
<TitleDescriptionHelpPanel
597+
title={t('wizard.queues.purchaseType.helpPanel.title')}
598+
description={t(
599+
'wizard.queues.purchaseType.helpPanel.description',
600+
)}
601+
footerLinks={purchaseTypeFooterLinks}
602+
/>
603+
}
604+
/>
605+
}
606+
>
571607
<Select
572608
selectedOption={itemToOption(
573609
findFirst(capacityTypes, x => x[0] === capacityType) || [
@@ -582,7 +618,24 @@ function Queue({index}: any) {
582618
/>
583619
</FormField>
584620
{isMultiInstanceTypesActive ? (
585-
<FormField label={t('wizard.queues.allocationStrategy.title')}>
621+
<FormField
622+
label={t('wizard.queues.allocationStrategy.title')}
623+
info={
624+
<InfoLink
625+
helpPanel={
626+
<TitleDescriptionHelpPanel
627+
title={t(
628+
'wizard.queues.allocationStrategy.helpPanel.title',
629+
)}
630+
description={t(
631+
'wizard.queues.allocationStrategy.helpPanel.description',
632+
)}
633+
footerLinks={allocationStrategyFooterLinks}
634+
/>
635+
}
636+
/>
637+
}
638+
>
586639
<Select
587640
options={allocationStrategyOptions}
588641
selectedOption={

frontend/src/old-pages/Configure/Storage.tsx

Lines changed: 27 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -293,6 +293,16 @@ export function FsxLustreSettings({index}: any) {
293293
[t],
294294
)
295295

296+
const lustreTypeFooterLinks = useMemo(
297+
() => [
298+
{
299+
title: t('wizard.storage.Fsx.lustreType.link.title'),
300+
href: t('wizard.storage.Fsx.lustreType.link.href'),
301+
},
302+
],
303+
[t],
304+
)
305+
296306
return (
297307
<ColumnLayout columns={2} borders="vertical">
298308
<FormField
@@ -308,14 +318,9 @@ export function FsxLustreSettings({index}: any) {
308318
<TitleDescriptionHelpPanel
309319
title={t('wizard.storage.Fsx.lustreType.label')}
310320
description={
311-
<Trans i18nKey="wizard.storage.Fsx.lustreType.help">
312-
<a
313-
rel="noreferrer"
314-
target="_blank"
315-
href="https://docs.aws.amazon.com/parallelcluster/latest/ug/SharedStorage-v3.html#yaml-SharedStorage-FsxLustreSettings-DeploymentType"
316-
></a>
317-
</Trans>
321+
<Trans i18nKey="wizard.storage.Fsx.lustreType.help" />
318322
}
323+
footerLinks={lustreTypeFooterLinks}
319324
/>
320325
}
321326
/>
@@ -1159,7 +1164,21 @@ function Storage() {
11591164
return (
11601165
<SpaceBetween direction="vertical" size="l">
11611166
<Container
1162-
header={<Header>{t('wizard.storage.container.title')}</Header>}
1167+
header={
1168+
<Header
1169+
description={
1170+
<Trans i18nKey="wizard.storage.container.description">
1171+
<a
1172+
rel="noreferrer"
1173+
target="_blank"
1174+
href="https://docs.aws.amazon.com/parallelcluster/latest/ug/shared-storage-quotas-v3.html"
1175+
></a>
1176+
</Trans>
1177+
}
1178+
>
1179+
{t('wizard.storage.container.title')}
1180+
</Header>
1181+
}
11631182
>
11641183
<SpaceBetween direction="vertical" size="m">
11651184
{!hasAddedStorage && (

frontend/src/old-pages/Users/Users.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -204,7 +204,7 @@ export default function Users() {
204204
showDialog('deleteUser')
205205
}}
206206
>
207-
{t('users.actions.delete')}
207+
{t('users.actions.remove')}
208208
</Button>
209209
<div onKeyPress={e => e.key === 'Enter' && createUser()}>
210210
<Input
@@ -215,7 +215,7 @@ export default function Users() {
215215
></Input>
216216
</div>
217217
<Button variant="primary" onClick={createUser}>
218-
{t('users.actions.create')}
218+
{t('users.actions.add')}
219219
</Button>
220220
</SpaceBetween>
221221
}

0 commit comments

Comments
 (0)