diff --git a/packages/manager/.changeset/pr-10399-upcoming-features-1713888729255.md b/packages/manager/.changeset/pr-10399-upcoming-features-1713888729255.md
new file mode 100644
index 00000000000..bcf107580cc
--- /dev/null
+++ b/packages/manager/.changeset/pr-10399-upcoming-features-1713888729255.md
@@ -0,0 +1,5 @@
+---
+"@linode/manager": Upcoming Features
+---
+
+Placement Groups text copy updates ([#10399](https://github.com/linode/manager/pull/10399))
diff --git a/packages/manager/cypress/e2e/core/placementGroups/placement-groups-landing-page.spec.ts b/packages/manager/cypress/e2e/core/placementGroups/placement-groups-landing-page.spec.ts
index 7709b82b298..74a3c4fab91 100644
--- a/packages/manager/cypress/e2e/core/placementGroups/placement-groups-landing-page.spec.ts
+++ b/packages/manager/cypress/e2e/core/placementGroups/placement-groups-landing-page.spec.ts
@@ -39,7 +39,7 @@ describe('VM Placement landing page', () => {
});
ui.button
- .findByTitle('Create Placement Groups')
+ .findByTitle('Create Placement Group')
.should('be.visible')
.should('be.enabled')
.click();
diff --git a/packages/manager/src/components/DetailsPanel/DetailsPanel.tsx b/packages/manager/src/components/DetailsPanel/DetailsPanel.tsx
index e1e09ef6645..20dfcbb1a5c 100644
--- a/packages/manager/src/components/DetailsPanel/DetailsPanel.tsx
+++ b/packages/manager/src/components/DetailsPanel/DetailsPanel.tsx
@@ -58,6 +58,7 @@ export const DetailsPanel = (props: DetailsPanelProps) => {
/>
{tagsInputProps && }
+
{isPlacementGroupsEnabled && (
{
await waitFor(() => {
expect(
- getByText('Select a region above to see available Placement Groups.')
+ getByText(
+ 'Select a Region for your Linode to see existing placement groups.'
+ )
).toBeVisible();
});
});
diff --git a/packages/manager/src/features/Linodes/LinodeCreatev2/Details/PlacementGroupPanel.test.tsx b/packages/manager/src/features/Linodes/LinodeCreatev2/Details/PlacementGroupPanel.test.tsx
index ad7ffd19860..a46491a903b 100644
--- a/packages/manager/src/features/Linodes/LinodeCreatev2/Details/PlacementGroupPanel.test.tsx
+++ b/packages/manager/src/features/Linodes/LinodeCreatev2/Details/PlacementGroupPanel.test.tsx
@@ -21,7 +21,9 @@ describe('PlacementGroupPanel', () => {
});
expect(
- getByText('Select a region above to see available Placement Groups.')
+ getByText(
+ 'Select a Region for your Linode to see existing placement groups.'
+ )
).toBeVisible();
});
diff --git a/packages/manager/src/features/PlacementGroups/PlacementGroupsAffinityTypeSelect.tsx b/packages/manager/src/features/PlacementGroups/PlacementGroupsAffinityTypeSelect.tsx
index fbc87558fc8..2c12a78b461 100644
--- a/packages/manager/src/features/PlacementGroups/PlacementGroupsAffinityTypeSelect.tsx
+++ b/packages/manager/src/features/PlacementGroups/PlacementGroupsAffinityTypeSelect.tsx
@@ -74,11 +74,13 @@ export const PlacementGroupsAffinityTypeSelect = (props: Props) => {
textFieldProps={{
tooltipText: (
- Linodes in a placement group that use ‘Affinity’ always exist on the
- same host. This can help with performance. Linodes in a placement
- group that use ‘Anti-affinity: Host’ are never on the same host. Use
+ Linodes in a placement group that use Affinity are physically closer
+ together, possibly on the same hardware. This can help with
+ performance. Linodes in a placement group that use Anti-affinity are
+ in separate fault domains, but still in the same data center. Use
this to support a high-availability model.
+ {/* TODO VM_Placement: Add link path or determine if removal desired */}
Learn more.
),
diff --git a/packages/manager/src/features/PlacementGroups/PlacementGroupsAssignLinodesDrawer.tsx b/packages/manager/src/features/PlacementGroups/PlacementGroupsAssignLinodesDrawer.tsx
index 8b34fdf99d7..592397e4807 100644
--- a/packages/manager/src/features/PlacementGroups/PlacementGroupsAssignLinodesDrawer.tsx
+++ b/packages/manager/src/features/PlacementGroups/PlacementGroupsAssignLinodesDrawer.tsx
@@ -162,7 +162,7 @@ export const PlacementGroupsAssignLinodesDrawer = (
/>
)}
- A Linode can only be assigned to a single Placement Group.
+ A Linode can only be assigned to one placement group.
{
expect(getByRole('combobox')).toBeDisabled();
expect(getByTestId('notice-warning')).toHaveTextContent(
- 'The selected region does not currently have Placement Group capabilities.'
+ 'Currently, only specific regions support placement groups.'
);
expect(
queryByRole('button', { name: /create placement group/i })
diff --git a/packages/manager/src/features/PlacementGroups/PlacementGroupsDetailPanel.tsx b/packages/manager/src/features/PlacementGroups/PlacementGroupsDetailPanel.tsx
index 524908831b7..b5fb7382505 100644
--- a/packages/manager/src/features/PlacementGroups/PlacementGroupsDetailPanel.tsx
+++ b/packages/manager/src/features/PlacementGroups/PlacementGroupsDetailPanel.tsx
@@ -81,7 +81,7 @@ export const PlacementGroupsDetailPanel = (props: Props) => {
variant="warning"
>
- Select a region above to see available Placement Groups.
+ Select a Region for your Linode to see existing placement groups.
)}
@@ -93,8 +93,7 @@ export const PlacementGroupsDetailPanel = (props: Props) => {
variant="warning"
>
- The selected region does not currently have Placement Group
- capabilities. Only these{' '}
+ Currently, only specific{' '}
{
displayText="regions"
minWidth={225}
/>{' '}
- support Placement Groups.
+ support placement groups.
)}
diff --git a/packages/manager/src/features/PlacementGroups/PlacementGroupsLanding/PlacementGroupsLanding.test.tsx b/packages/manager/src/features/PlacementGroups/PlacementGroupsLanding/PlacementGroupsLanding.test.tsx
index 6e579a4552f..8a6f4e8d6f2 100644
--- a/packages/manager/src/features/PlacementGroups/PlacementGroupsLanding/PlacementGroupsLanding.test.tsx
+++ b/packages/manager/src/features/PlacementGroups/PlacementGroupsLanding/PlacementGroupsLanding.test.tsx
@@ -89,7 +89,7 @@ describe('PlacementGroupsLanding', () => {
expect(
getByText(
- 'Control the physical placement or distribution of virtual machines (VMs) instances within a data center or availability zone.'
+ 'Control the physical placement or distribution of Linode instances within a data center or availability zone.'
)
).toBeInTheDocument();
});
diff --git a/packages/manager/src/features/PlacementGroups/PlacementGroupsLanding/PlacementGroupsLanding.tsx b/packages/manager/src/features/PlacementGroups/PlacementGroupsLanding/PlacementGroupsLanding.tsx
index d5187a39c5c..e2720dff10d 100644
--- a/packages/manager/src/features/PlacementGroups/PlacementGroupsLanding/PlacementGroupsLanding.tsx
+++ b/packages/manager/src/features/PlacementGroups/PlacementGroupsLanding/PlacementGroupsLanding.tsx
@@ -195,9 +195,9 @@ export const PlacementGroupsLanding = React.memo(() => {
}}
debounceTime={250}
hideLabel
- label="Filter"
+ label="Search"
onChange={(e) => setQuery(e.target.value)}
- placeholder="Filter"
+ placeholder="Search Placement Groups"
sx={{ mb: 4 }}
value={query}
/>
diff --git a/packages/manager/src/features/PlacementGroups/PlacementGroupsLanding/PlacementGroupsLandingEmptyState.tsx b/packages/manager/src/features/PlacementGroups/PlacementGroupsLanding/PlacementGroupsLandingEmptyState.tsx
index 51d5ab5902a..623719cbf02 100644
--- a/packages/manager/src/features/PlacementGroups/PlacementGroupsLanding/PlacementGroupsLandingEmptyState.tsx
+++ b/packages/manager/src/features/PlacementGroups/PlacementGroupsLanding/PlacementGroupsLandingEmptyState.tsx
@@ -23,7 +23,7 @@ export const PlacementGroupsLandingEmptyState = ({
{
sendEvent({
diff --git a/packages/manager/src/features/PlacementGroups/PlacementGroupsLanding/PlacementGroupsLandingEmptyStateData.ts b/packages/manager/src/features/PlacementGroups/PlacementGroupsLanding/PlacementGroupsLandingEmptyStateData.ts
index 4b0993874c3..9555f6dbb20 100644
--- a/packages/manager/src/features/PlacementGroups/PlacementGroupsLanding/PlacementGroupsLandingEmptyStateData.ts
+++ b/packages/manager/src/features/PlacementGroups/PlacementGroupsLanding/PlacementGroupsLandingEmptyStateData.ts
@@ -8,7 +8,7 @@ import type {
export const headers: ResourcesHeaders = {
description:
- 'Control the physical placement or distribution of virtual machines (VMs) instances within a data center or availability zone.',
+ 'Control the physical placement or distribution of Linode instances within a data center or availability zone.',
subtitle: '',
title: PLACEMENT_GROUP_LABEL,
};
diff --git a/packages/manager/src/features/PlacementGroups/constants.ts b/packages/manager/src/features/PlacementGroups/constants.ts
index 7921b9d712a..96451573d93 100644
--- a/packages/manager/src/features/PlacementGroups/constants.ts
+++ b/packages/manager/src/features/PlacementGroups/constants.ts
@@ -7,12 +7,11 @@ export const MAX_NUMBER_OF_LINODES_IN_PLACEMENT_GROUP_MESSAGE =
export const PLACEMENT_GROUP_LINODES_ERROR_MESSAGE =
'There was an error loading Linodes for this Placement Group.';
-export const PLACEMENT_GROUP_TOOLTIP_TEXT = `The Affinity Type and Region determine the maximum number of VMs per group.`;
+export const PLACEMENT_GROUP_TOOLTIP_TEXT = `The Affinity Type and Region you selected determine the maximum number of Linodes per placement group.`;
export const PLACEMENT_GROUP_SELECT_TOOLTIP_COPY = `
-Add your virtual machine (VM) to a group to best meet your needs.
-You may want to group VMs closer together to help improve performance, or further apart to enable high-availability configurations.
-Learn more.`;
+Add your Linode to a group to best meet your needs.
+You may want to group Linodes closer together to help improve performance, or further apart to enable high-availability configurations.`;
export const PLACEMENT_GROUP_HAS_NO_CAPACITY =
- 'This Placement Group does not have any capacity.';
+ 'This placement group has reached the maximum Linode capacity.';