workflow

package
v0.0.0-...-a0f436b Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 13, 2025 License: AGPL-3.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewAccessor

func NewAccessor(request *tools.APIRequest) *workflowMongoAccessor

func NewAccessorHistory

func NewAccessorHistory(request *tools.APIRequest) *workflowMongoAccessor

func NewHistory

func NewHistory() *workflowHistoryMongoAccessor

New creates a new instance of the workspaceMongoAccessor

Types

type AbstractWorkflow

type AbstractWorkflow struct {
	resources.ResourceSet
	Graph          *graph.Graph `bson:"graph,omitempty" json:"graph,omitempty"` // Graph UI & logic representation of the workflow
	ScheduleActive bool         `json:"schedule_active" bson:"schedule_active"` // ScheduleActive is a flag that indicates if the schedule is active, if not the workflow is not scheduled and no execution or booking will be set
	// Schedule       *WorkflowSchedule `bson:"schedule,omitempty" json:"schedule,omitempty"` // Schedule is the schedule of the workflow
	Shared []string `json:"shared,omitempty" bson:"shared,omitempty"` // Shared is the ID of the shared workflow
}

* AbstractWorkflow is a struct that represents a workflow for resource or native workflow * Warning: there is 2 types of workflows, the resource workflow and the native workflow * native workflow is the one that you create to schedule an execution * resource workflow is the one that is created to set our native workflow in catalog

func (*AbstractWorkflow) GetByRelatedProcessing

func (w *AbstractWorkflow) GetByRelatedProcessing(processingID string, g func(item graph.GraphItem) bool) []resources.ResourceInterface

func (*AbstractWorkflow) GetGraphItems

func (w *AbstractWorkflow) GetGraphItems(f func(item graph.GraphItem) bool) (list_datas []graph.GraphItem)

func (*AbstractWorkflow) GetPricedItem

func (w *AbstractWorkflow) GetPricedItem(f func(item graph.GraphItem) bool, request *tools.APIRequest) map[string]pricing.PricedItemITF

func (*AbstractWorkflow) GetResources

func (w *AbstractWorkflow) GetResources(f func(item graph.GraphItem) bool) map[string]resources.ResourceInterface

func (*AbstractWorkflow) IsCompute

func (wf *AbstractWorkflow) IsCompute(item graph.GraphItem) bool

func (*AbstractWorkflow) IsData

func (wf *AbstractWorkflow) IsData(item graph.GraphItem) bool

func (*AbstractWorkflow) IsProcessing

func (wf *AbstractWorkflow) IsProcessing(item graph.GraphItem) bool

func (*AbstractWorkflow) IsStorage

func (wf *AbstractWorkflow) IsStorage(item graph.GraphItem) bool

func (*AbstractWorkflow) IsWorkflow

func (wf *AbstractWorkflow) IsWorkflow(item graph.GraphItem) bool

type Workflow

type Workflow struct {
	utils.AbstractObject // AbstractObject contains the basic fields of an object (id, name)
	AbstractWorkflow     // AbstractWorkflow contains the basic fields of a workflow
}

* Workflow is a struct that represents a workflow * it defines the native workflow

func (*Workflow) CheckBooking

func (wfa *Workflow) CheckBooking(caller *tools.HTTPCaller) (bool, error)

* CheckBooking is a function that checks the booking of the workflow on peers (even ourselves)

func (*Workflow) GetAccessor

func (d *Workflow) GetAccessor(request *tools.APIRequest) utils.Accessor

func (*Workflow) Planify

func (wf *Workflow) Planify(start time.Time, end *time.Time, request *tools.APIRequest) (float64, map[tools.DataType][]pricing.PricedItemITF, *Workflow, error)

func (*Workflow) VerifyAuth

func (ao *Workflow) VerifyAuth(request *tools.APIRequest) bool

type WorkflowHistory

type WorkflowHistory struct{ Workflow }

func (*WorkflowHistory) GenerateID

func (r *WorkflowHistory) GenerateID()

func (*WorkflowHistory) GetAccessor

func (d *WorkflowHistory) GetAccessor(request *tools.APIRequest) utils.Accessor

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL