Skip to content

Commit 6ade98f

Browse files
authored
fix: When setting a ready by, calculate stop/end date using that time (#2951)
1 parent a964f51 commit 6ade98f

2 files changed

Lines changed: 10 additions & 3 deletions

File tree

catalog/ui/src/app/Catalog/CatalogItemForm.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -885,15 +885,15 @@ const CatalogItemFormData: React.FC<{ catalogItemName: string; catalogNamespaceN
885885
type: 'dates',
886886
startDate: provisioningDate, // Internal API still uses provisioning date as startDate
887887
stopDate: new Date(
888-
provisioningDate.getTime() +
888+
d.getTime() +
889889
parseDuration(
890890
formState.activity?.startsWith('Customer Facing')
891891
? '365d'
892892
: catalogItem.spec.runtime?.default || catalogItem.spec.lifespan?.default || '30h'
893893
),
894894
),
895895
endDate: new Date(
896-
provisioningDate.getTime() +
896+
d.getTime() +
897897
parseDuration(
898898
catalogItem.spec.lifespan?.default || '30h'
899899
)

catalog/ui/src/app/Workshops/WorkshopsItem.tsx

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -377,6 +377,8 @@ const WorkshopsItemComponent: React.FC<{
377377
mutateWorkshop(workshopUpdated);
378378
} else if (modalState.action === 'scheduleReadyByDate') {
379379
const readyByDate = new Date(date.getTime());
380+
// Calculate auto-stop time: 12 hours after the ready-by date
381+
const autoStopTime = new Date(readyByDate.getTime() + 12 * 60 * 60 * 1000);
380382
await startWorkshop(
381383
workshop,
382384
!isWorkshopStarted(workshop, workshopProvisions) ? dateToApiString(new Date(date.getTime() + READY_BY_LEAD_TIME_MS)) : null,
@@ -388,7 +390,12 @@ const WorkshopsItemComponent: React.FC<{
388390
const workshopUpdated = await patchWorkshop({
389391
name: workshop.metadata.name,
390392
namespace: workshop.metadata.namespace,
391-
patch: { spec: { lifespan: { readyBy: dateToApiString(readyByDate) } } },
393+
patch: {
394+
spec: {
395+
lifespan: { readyBy: dateToApiString(readyByDate) },
396+
actionSchedule: { stop: dateToApiString(autoStopTime) },
397+
},
398+
},
392399
});
393400

394401
mutateWorkshop(workshopUpdated);

0 commit comments

Comments
 (0)