diff --git a/models/resources/priced_resource.go b/models/resources/priced_resource.go index f1fa798..a412cd6 100755 --- a/models/resources/priced_resource.go +++ b/models/resources/priced_resource.go @@ -122,7 +122,11 @@ func (abs *PricedResource[T]) GetExplicitDurationInS() float64 { add := abs.BookingConfiguration.UsageStart.Add(5 * time.Minute) abs.BookingConfiguration.UsageEnd = &add } - return abs.BookingConfiguration.UsageEnd.Sub(*abs.BookingConfiguration.UsageStart).Seconds() + d := abs.BookingConfiguration.UsageEnd.Sub(*abs.BookingConfiguration.UsageStart).Seconds() + if d <= 0 { + return (5 * time.Minute).Seconds() + } + return d } return abs.BookingConfiguration.ExplicitBookingDurationS } diff --git a/models/workflow_execution/workflow_execution.go b/models/workflow_execution/workflow_execution.go index 75de43c..217067e 100755 --- a/models/workflow_execution/workflow_execution.go +++ b/models/workflow_execution/workflow_execution.go @@ -217,7 +217,7 @@ func (d *WorkflowExecution) bookEach(executionsID string, wfID string, dt tools. } durationS := priced.GetExplicitDurationInS() var endDate *time.Time - if durationS >= 0 { + if durationS > 0 { e := start.Add(time.Duration(durationS) * time.Second) endDate = &e }