Skip to content

Commit 7d78e85

Browse files
hehe7318gmarciani
authored andcommitted
fix: Retain ODCR settings when copying clusters and navigating steps
- Ensure CapacityReservationTarget fields (CapacityReservationId and CapacityReservationResourceGroupArn) are retained when creating a new cluster from an existing one. - Fix issue where CapacityReservationTarget values were cleared upon navigating back and forth in the wizard.
1 parent c2f0f11 commit 7d78e85

File tree

1 file changed

+16
-10
lines changed

1 file changed

+16
-10
lines changed

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

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -209,29 +209,35 @@ export function ComputeResource({
209209
[efaInstances, instanceTypePath, setEnableEFA],
210210
)
211211

212-
const [odcrCbOption, setOdcrCbOption] = React.useState('none')
213-
const [odcrCbInput, setOdcrCbInput] = React.useState('')
214-
215-
const capacityReservationTargetPath = useMemo(
216-
() => [...path, 'CapacityReservationTarget'],
217-
[path],
212+
const initialCapacityReservationTarget = useState([...path, 'CapacityReservationTarget']) || {}
213+
const [odcrCbOption, setOdcrCbOption] = React.useState(
214+
initialCapacityReservationTarget.CapacityReservationId
215+
? 'capacityReservationId'
216+
: initialCapacityReservationTarget.CapacityReservationResourceGroupArn
217+
? 'capacityReservationResourceGroupArn'
218+
: 'none'
219+
)
220+
const [odcrCbInput, setOdcrCbInput] = React.useState(
221+
initialCapacityReservationTarget.CapacityReservationId ||
222+
initialCapacityReservationTarget.CapacityReservationResourceGroupArn ||
223+
''
218224
)
219225

220-
React.useEffect(() => {
226+
useEffect(() => {
221227
if (odcrCbOption === 'none') {
222-
clearState(capacityReservationTargetPath)
228+
clearState([...path, 'CapacityReservationTarget'])
223229
} else {
224230
const updateData = {
225231
CapacityReservationId: odcrCbOption === 'capacityReservationId' ? odcrCbInput : undefined,
226232
CapacityReservationResourceGroupArn: odcrCbOption === 'capacityReservationResourceGroupArn' ? odcrCbInput : undefined,
227233
}
228-
setState(capacityReservationTargetPath, updateData)
234+
setState([...path, 'CapacityReservationTarget'], updateData)
229235

230236
if (odcrCbOption === 'capacityReservationId') {
231237
clearState(instanceTypePath)
232238
}
233239
}
234-
}, [odcrCbOption, odcrCbInput])
240+
}, [odcrCbOption, odcrCbInput, path, instanceTypePath])
235241

236242
return (
237243
<SpaceBetween direction="vertical" size="s">

0 commit comments

Comments
 (0)