state execution^C

This commit is contained in:
mr
2024-11-14 11:39:36 +01:00
parent 14fe694fd3
commit c24f2f26c4
4 changed files with 41 additions and 17 deletions

View File

@@ -17,7 +17,7 @@ import (
*/
type Booking struct {
workflow_execution.WorkflowExecution // WorkflowExecution contains the workflow execution data
ComputeResourceID string `json:"compute_resource_id,omitempty" bson:"compute_resource_id,omitempty" validate:"required"` // ComputeResourceID is the ID of the compute resource specified in the booking
ComputeResourceID string `json:"compute_resource_id,omitempty" bson:"compute_resource_id,omitempty" validate:"required"` // ComputeResourceID is the ID of the compute resource specified in the booking
}
// CheckBooking checks if a booking is possible on a specific compute resource
@@ -31,7 +31,7 @@ func (wfa *Booking) CheckBooking(id string, start time.Time, end *time.Time) (bo
accessor := wfa.GetAccessor(nil)
res, code, err := accessor.Search(&dbs.Filters{
And: map[string][]dbs.Filter{ // check if there is a booking on the same compute resource by filtering on the compute_resource_id, the state and the execution date
"compute_resource_id": {{Operator: dbs.EQUAL.String(), Value: id}},
"compute_resource_id": {{Operator: dbs.EQUAL.String(), Value: id}},
"workflowexecution.state": {{Operator: dbs.EQUAL.String(), Value: workflow_execution.SCHEDULED.EnumIndex()}},
"workflowexecution.execution_date": {
{Operator: dbs.LTE.String(), Value: primitive.NewDateTimeFromTime(e)},
@@ -56,7 +56,9 @@ func (ao *Booking) GetID() string {
}
func (r *Booking) GenerateID() {
r.UUID = uuid.New().String()
if r.UUID == "" {
r.UUID = uuid.New().String()
}
}
func (d *Booking) GetName() string {