Compare commits
	
		
			1 Commits
		
	
	
		
			5d1acac9ae
			...
			feature/or
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| d1e5b59eb9 | 
@@ -1,13 +1,10 @@
 | 
			
		||||
package controllers
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"encoding/json"
 | 
			
		||||
	"time"
 | 
			
		||||
 | 
			
		||||
	oclib "cloud.o-forge.io/core/oc-lib"
 | 
			
		||||
	dbs "cloud.o-forge.io/core/oc-lib/dbs"
 | 
			
		||||
	"cloud.o-forge.io/core/oc-lib/models/workflow_execution"
 | 
			
		||||
	"cloud.o-forge.io/core/oc-lib/tools"
 | 
			
		||||
	beego "github.com/beego/beego/v2/server/web"
 | 
			
		||||
	"go.mongodb.org/mongo-driver/bson/primitive"
 | 
			
		||||
)
 | 
			
		||||
@@ -89,37 +86,3 @@ func (o *WorkflowExecutionController) Search() {
 | 
			
		||||
	o.Data["json"] = oclib.NewRequest(collection, user, peerID, groups, nil).Search(nil, search, isDraft == "true")
 | 
			
		||||
	o.ServeJSON()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// @Title ScheduleWorkflow
 | 
			
		||||
// @Description schedule workflow
 | 
			
		||||
// @Param	id		path 	string	true		"id execution"
 | 
			
		||||
// @Param	body		body 	models.compute	true		"The compute content"
 | 
			
		||||
// @Success 200 {workspace} models.workspace
 | 
			
		||||
// @router /workflow/:id [post]
 | 
			
		||||
func (o *WorkflowExecutionController) ScheduleWorkflow() {
 | 
			
		||||
	user, peerID, groups := oclib.ExtractTokenInfo(*o.Ctx.Request)
 | 
			
		||||
	id := o.Ctx.Input.Param(":id")
 | 
			
		||||
	var resp *workflow_execution.WorkflowSchedule
 | 
			
		||||
	json.Unmarshal(o.Ctx.Input.CopyBody(100000), &resp)
 | 
			
		||||
	caller := tools.NewHTTPCaller(map[tools.DataType]map[tools.METHOD]string{ // paths to call other OC services
 | 
			
		||||
		tools.PEER: {
 | 
			
		||||
			tools.POST: "/status/",
 | 
			
		||||
		},
 | 
			
		||||
		tools.BOOKING: {
 | 
			
		||||
			tools.GET: "/booking/check/:id/:start_date/:end_date",
 | 
			
		||||
		},
 | 
			
		||||
	})
 | 
			
		||||
	sch, err := oclib.NewRequest(collection, user, peerID, groups, caller).Schedule(id, resp)
 | 
			
		||||
	code := 200
 | 
			
		||||
	e := ""
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		code = 409
 | 
			
		||||
		e = err.Error()
 | 
			
		||||
	}
 | 
			
		||||
	o.Data["json"] = map[string]interface{}{
 | 
			
		||||
		"data":  sch,
 | 
			
		||||
		"code":  code,
 | 
			
		||||
		"error": e,
 | 
			
		||||
	}
 | 
			
		||||
	o.ServeJSON()
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										122
									
								
								controllers/workflow_sheduler.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										122
									
								
								controllers/workflow_sheduler.go
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,122 @@
 | 
			
		||||
package controllers
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"encoding/json"
 | 
			
		||||
	"fmt"
 | 
			
		||||
 | 
			
		||||
	oclib "cloud.o-forge.io/core/oc-lib"
 | 
			
		||||
	"cloud.o-forge.io/core/oc-lib/dbs"
 | 
			
		||||
	"cloud.o-forge.io/core/oc-lib/models/workflow_execution"
 | 
			
		||||
	"cloud.o-forge.io/core/oc-lib/tools"
 | 
			
		||||
	beego "github.com/beego/beego/v2/server/web"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
var orderCollection = oclib.LibDataEnum(oclib.ORDER)
 | 
			
		||||
 | 
			
		||||
// Operations about workflow
 | 
			
		||||
type WorkflowSchedulerController struct {
 | 
			
		||||
	beego.Controller
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// @Title Schedule
 | 
			
		||||
// @Description schedule workflow
 | 
			
		||||
// @Param	id		path 	string	true		"id execution"
 | 
			
		||||
// @Param	body		body 	models.compute	true		"The compute content"
 | 
			
		||||
// @Success 200 {workspace} models.workspace
 | 
			
		||||
// @router /:id [post]
 | 
			
		||||
func (o *WorkflowSchedulerController) Schedule() {
 | 
			
		||||
	code := 200
 | 
			
		||||
	e := ""
 | 
			
		||||
	user, peerID, groups := oclib.ExtractTokenInfo(*o.Ctx.Request)
 | 
			
		||||
	id := o.Ctx.Input.Param(":id")
 | 
			
		||||
	var resp *workflow_execution.WorkflowSchedule
 | 
			
		||||
	json.Unmarshal(o.Ctx.Input.CopyBody(100000), &resp)
 | 
			
		||||
	caller := tools.NewHTTPCaller(map[tools.DataType]map[tools.METHOD]string{ // paths to call other OC services
 | 
			
		||||
		tools.PEER: {
 | 
			
		||||
			tools.POST: "/status/",
 | 
			
		||||
		},
 | 
			
		||||
		tools.BOOKING: {
 | 
			
		||||
			tools.GET: "/booking/check/:id/:start_date/:end_date",
 | 
			
		||||
		},
 | 
			
		||||
	})
 | 
			
		||||
	req := oclib.NewRequest(collection, user, peerID, groups, caller)
 | 
			
		||||
	sch, err := req.Schedule(id, resp)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		filter := &dbs.Filters{
 | 
			
		||||
			And: map[string][]dbs.Filter{
 | 
			
		||||
				"workflow_id": {{Operator: dbs.EQUAL.String(), Value: id}},
 | 
			
		||||
			},
 | 
			
		||||
		}
 | 
			
		||||
		d := req.Search(filter, "", true)
 | 
			
		||||
		if d.Data != nil {
 | 
			
		||||
			for _, w := range d.Data {
 | 
			
		||||
				req.DeleteOne(w.GetID())
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		o.Data["json"] = map[string]interface{}{
 | 
			
		||||
			"data":  nil,
 | 
			
		||||
			"code":  409,
 | 
			
		||||
			"error": err.Error(),
 | 
			
		||||
		}
 | 
			
		||||
		o.ServeJSON()
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
	order, err := req.DraftOrder(sch)
 | 
			
		||||
	fmt.Println("SCHEDULED", order, err)
 | 
			
		||||
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		for _, w := range sch.WorkflowExecutions {
 | 
			
		||||
			oclib.NewRequest(collection, user, peerID, groups, nil).DeleteOne(w.GetID())
 | 
			
		||||
		}
 | 
			
		||||
		o.Data["json"] = map[string]interface{}{
 | 
			
		||||
			"data":  nil,
 | 
			
		||||
			"code":  409,
 | 
			
		||||
			"error": err.Error(),
 | 
			
		||||
		}
 | 
			
		||||
		o.ServeJSON()
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
	o.Data["json"] = map[string]interface{}{
 | 
			
		||||
		"data":  order,
 | 
			
		||||
		"code":  code,
 | 
			
		||||
		"error": e,
 | 
			
		||||
	}
 | 
			
		||||
	o.ServeJSON()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// @Title UnSchedule
 | 
			
		||||
// @Description schedule workflow
 | 
			
		||||
// @Param	id		path 	string	true		"id execution"
 | 
			
		||||
// @Param	body		body 	models.compute	true		"The compute content"
 | 
			
		||||
// @Success 200 {workspace} models.workspace
 | 
			
		||||
// @router /:id [delete]
 | 
			
		||||
func (o *WorkflowSchedulerController) UnSchedule() {
 | 
			
		||||
	user, peerID, groups := oclib.ExtractTokenInfo(*o.Ctx.Request)
 | 
			
		||||
	id := o.Ctx.Input.Param(":id")
 | 
			
		||||
	// TODO UNSCHEDULER
 | 
			
		||||
	filter := &dbs.Filters{
 | 
			
		||||
		And: map[string][]dbs.Filter{
 | 
			
		||||
			"workflow_id": {{Operator: dbs.EQUAL.String(), Value: id}},
 | 
			
		||||
		},
 | 
			
		||||
	}
 | 
			
		||||
	o.Data["json"] = oclib.NewRequest(collection, user, peerID, groups, nil).Search(filter, "", true)
 | 
			
		||||
	o.ServeJSON()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// @Title SearchScheduledDraftOrder
 | 
			
		||||
// @Description schedule workflow
 | 
			
		||||
// @Param	id		path 	string	true		"id execution"
 | 
			
		||||
// @Success 200 {workspace} models.workspace
 | 
			
		||||
// @router /:id/order [get]
 | 
			
		||||
func (o *WorkflowSchedulerController) SearchScheduledDraftOrder() {
 | 
			
		||||
	user, peerID, groups := oclib.ExtractTokenInfo(*o.Ctx.Request)
 | 
			
		||||
	id := o.Ctx.Input.Param(":id")
 | 
			
		||||
	filter := &dbs.Filters{
 | 
			
		||||
		And: map[string][]dbs.Filter{
 | 
			
		||||
			"workflow_id": {{Operator: dbs.EQUAL.String(), Value: id}},
 | 
			
		||||
			"order_by":    {{Operator: dbs.EQUAL.String(), Value: peerID}},
 | 
			
		||||
		},
 | 
			
		||||
	}
 | 
			
		||||
	o.Data["json"] = oclib.NewRequest(orderCollection, user, peerID, groups, nil).Search(filter, "", true)
 | 
			
		||||
	o.ServeJSON()
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										2
									
								
								go.mod
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								go.mod
									
									
									
									
									
								
							@@ -5,7 +5,7 @@ go 1.22.0
 | 
			
		||||
toolchain go1.22.4
 | 
			
		||||
 | 
			
		||||
require (
 | 
			
		||||
	cloud.o-forge.io/core/oc-lib v0.0.0-20250205160221-88b7cfe2fd0f
 | 
			
		||||
	cloud.o-forge.io/core/oc-lib v0.0.0-20250211081618-d82ae166a1e5
 | 
			
		||||
	github.com/beego/beego/v2 v2.3.1
 | 
			
		||||
	github.com/smartystreets/goconvey v1.7.2
 | 
			
		||||
	go.mongodb.org/mongo-driver v1.17.1
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										26
									
								
								go.sum
									
									
									
									
									
								
							
							
						
						
									
										26
									
								
								go.sum
									
									
									
									
									
								
							@@ -230,6 +230,32 @@ cloud.o-forge.io/core/oc-lib v0.0.0-20250205154116-7201cabb438a h1:DAEI00i+r2MAl
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250205154116-7201cabb438a/go.mod h1:2roQbUpv3a6mTIr5oU1ux31WbN8YucyyQvCQ0FqwbcE=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250205160221-88b7cfe2fd0f h1:6V+Z81ywYoDYSVMnM4PVaJYXFgCN3xSG3ddiUPn4jL8=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250205160221-88b7cfe2fd0f/go.mod h1:2roQbUpv3a6mTIr5oU1ux31WbN8YucyyQvCQ0FqwbcE=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250206080835-e646cfef0b46 h1:YnM9WwcijS+/OrpgML7y1O5c8hJ3Wt5iIPSSZYai+zw=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250206080835-e646cfef0b46/go.mod h1:2roQbUpv3a6mTIr5oU1ux31WbN8YucyyQvCQ0FqwbcE=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250206085600-3ffff7d32cf1 h1:PZ6Z3PdgjmiXQlNA64rhZgPyuZugs/jJROEVDHZs9yg=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250206085600-3ffff7d32cf1/go.mod h1:2roQbUpv3a6mTIr5oU1ux31WbN8YucyyQvCQ0FqwbcE=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250206101306-ad3293da9dbc h1:3X2bDl/ErUp+ahzROiscJTF6XyF81Swv4JXY2xqI6/o=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250206101306-ad3293da9dbc/go.mod h1:2roQbUpv3a6mTIr5oU1ux31WbN8YucyyQvCQ0FqwbcE=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250206115651-940ef17f7b0c h1:T4NE8PQY0opcYREioh4V2eVvJkagn52jytg4S1ZtpGE=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250206115651-940ef17f7b0c/go.mod h1:2roQbUpv3a6mTIr5oU1ux31WbN8YucyyQvCQ0FqwbcE=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250207072957-31ec352b57b9 h1:lmzktnKiGDo6f1+a8kRAeXvbu/+CEPe/PLsqIOt8hsc=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250207072957-31ec352b57b9/go.mod h1:2roQbUpv3a6mTIr5oU1ux31WbN8YucyyQvCQ0FqwbcE=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250207104112-3d1383357252 h1:zLU294Mc2bcxdeihG2K+wK2Zr2B/lTm+dJCMIEMUOKU=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250207104112-3d1383357252/go.mod h1:2roQbUpv3a6mTIr5oU1ux31WbN8YucyyQvCQ0FqwbcE=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250210085846-4a178d01e3ee h1:SwWTxlaRAX5p24XwOTBVbAeTLiLFNlSqDZpU0yICrWc=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250210085846-4a178d01e3ee/go.mod h1:2roQbUpv3a6mTIr5oU1ux31WbN8YucyyQvCQ0FqwbcE=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250210094237-e55727d9e273 h1:flQk8D7BAQNolfMRXehxZ5QcWuR3ytUvwJWt5GyFSbw=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250210094237-e55727d9e273/go.mod h1:2roQbUpv3a6mTIr5oU1ux31WbN8YucyyQvCQ0FqwbcE=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250210103255-f663ec80f5dd h1:myQN5EugL+AvIy4Ugw+jlHEfzcVaQ1bZ+RbwTioaZqs=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250210103255-f663ec80f5dd/go.mod h1:2roQbUpv3a6mTIr5oU1ux31WbN8YucyyQvCQ0FqwbcE=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250210121042-52d5a1fbf9b8 h1:LQpmqcx6b+RjfvYzyrgquLSIWdRqcJi2UXybB9wk9Vk=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250210121042-52d5a1fbf9b8/go.mod h1:2roQbUpv3a6mTIr5oU1ux31WbN8YucyyQvCQ0FqwbcE=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250211065515-a573a4ce715e h1:00SdIMSwwSJpKVfdwplehHpFULrVvAoc0HxKQD06KEs=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250211065515-a573a4ce715e/go.mod h1:2roQbUpv3a6mTIr5oU1ux31WbN8YucyyQvCQ0FqwbcE=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250211073038-ffaa67fb5dca h1:mZBcicJezYO7gY5SHMzyUusyLxYKwFptliiysqaGwD0=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250211073038-ffaa67fb5dca/go.mod h1:2roQbUpv3a6mTIr5oU1ux31WbN8YucyyQvCQ0FqwbcE=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250211081618-d82ae166a1e5 h1:S+vFupQoyTwa2QrtxmSChxzAYCrh6mLf7GXRNKU475g=
 | 
			
		||||
cloud.o-forge.io/core/oc-lib v0.0.0-20250211081618-d82ae166a1e5/go.mod h1:2roQbUpv3a6mTIr5oU1ux31WbN8YucyyQvCQ0FqwbcE=
 | 
			
		||||
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
 | 
			
		||||
github.com/beego/beego/v2 v2.3.0 h1:iECVwzm6egw6iw6tkWrEDqXG4NQtKLQ6QBSYqlM6T/I=
 | 
			
		||||
github.com/beego/beego/v2 v2.3.0/go.mod h1:Ob/5BJ9fIKZLd4s9ZV3o9J6odkkIyL83et+p98gyYXo=
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								oc-scheduler
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								oc-scheduler
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							@@ -61,13 +61,22 @@ func init() {
 | 
			
		||||
            Filters: nil,
 | 
			
		||||
            Params: nil})
 | 
			
		||||
 | 
			
		||||
    beego.GlobalControllerRouter["oc-scheduler/controllers:WorkflowExecutionController"] = append(beego.GlobalControllerRouter["oc-scheduler/controllers:WorkflowExecutionController"],
 | 
			
		||||
    beego.GlobalControllerRouter["oc-scheduler/controllers:WorkflowSchedulerController"] = append(beego.GlobalControllerRouter["oc-scheduler/controllers:WorkflowSchedulerController"],
 | 
			
		||||
        beego.ControllerComments{
 | 
			
		||||
            Method: "ScheduleWorkflow",
 | 
			
		||||
            Router: `/workflow/:id`,
 | 
			
		||||
            Method: "Schedule",
 | 
			
		||||
            Router: `/:id`,
 | 
			
		||||
            AllowHTTPMethods: []string{"post"},
 | 
			
		||||
            MethodParams: param.Make(),
 | 
			
		||||
            Filters: nil,
 | 
			
		||||
            Params: nil})
 | 
			
		||||
 | 
			
		||||
    beego.GlobalControllerRouter["oc-scheduler/controllers:WorkflowSchedulerController"] = append(beego.GlobalControllerRouter["oc-scheduler/controllers:WorkflowSchedulerController"],
 | 
			
		||||
        beego.ControllerComments{
 | 
			
		||||
            Method: "UnSchedule",
 | 
			
		||||
            Router: `/:id`,
 | 
			
		||||
            AllowHTTPMethods: []string{"delete"},
 | 
			
		||||
            MethodParams: param.Make(),
 | 
			
		||||
            Filters: nil,
 | 
			
		||||
            Params: nil})
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -18,6 +18,11 @@ func init() {
 | 
			
		||||
		beego.NSInclude(
 | 
			
		||||
			&controllers.WorkflowExecutionController{},
 | 
			
		||||
		),
 | 
			
		||||
		beego.NSNamespace("/workflow",
 | 
			
		||||
			beego.NSInclude(
 | 
			
		||||
				&controllers.WorkflowSchedulerController{},
 | 
			
		||||
			),
 | 
			
		||||
		),
 | 
			
		||||
		beego.NSNamespace("/version",
 | 
			
		||||
			beego.NSInclude(
 | 
			
		||||
				&controllers.VersionController{},
 | 
			
		||||
 
 | 
			
		||||
@@ -133,10 +133,40 @@
 | 
			
		||||
        "/workflow/{id}": {
 | 
			
		||||
            "post": {
 | 
			
		||||
                "tags": [
 | 
			
		||||
                    "oc-scheduler/controllersWorkflowExecutionController"
 | 
			
		||||
                    "workflow"
 | 
			
		||||
                ],
 | 
			
		||||
                "description": "schedule workflow\n\u003cbr\u003e",
 | 
			
		||||
                "operationId": "WorkflowExecutionController.ScheduleWorkflow",
 | 
			
		||||
                "operationId": "WorkflowSchedulerController.Schedule",
 | 
			
		||||
                "parameters": [
 | 
			
		||||
                    {
 | 
			
		||||
                        "in": "path",
 | 
			
		||||
                        "name": "id",
 | 
			
		||||
                        "description": "id execution",
 | 
			
		||||
                        "required": true,
 | 
			
		||||
                        "type": "string"
 | 
			
		||||
                    },
 | 
			
		||||
                    {
 | 
			
		||||
                        "in": "body",
 | 
			
		||||
                        "name": "body",
 | 
			
		||||
                        "description": "The compute content",
 | 
			
		||||
                        "required": true,
 | 
			
		||||
                        "schema": {
 | 
			
		||||
                            "$ref": "#/definitions/models.compute"
 | 
			
		||||
                        }
 | 
			
		||||
                    }
 | 
			
		||||
                ],
 | 
			
		||||
                "responses": {
 | 
			
		||||
                    "200": {
 | 
			
		||||
                        "description": "{workspace} models.workspace"
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
            },
 | 
			
		||||
            "delete": {
 | 
			
		||||
                "tags": [
 | 
			
		||||
                    "workflow"
 | 
			
		||||
                ],
 | 
			
		||||
                "description": "schedule workflow\n\u003cbr\u003e",
 | 
			
		||||
                "operationId": "WorkflowSchedulerController.UnSchedule",
 | 
			
		||||
                "parameters": [
 | 
			
		||||
                    {
 | 
			
		||||
                        "in": "path",
 | 
			
		||||
@@ -197,6 +227,10 @@
 | 
			
		||||
            "name": "oc-scheduler/controllersWorkflowExecutionController",
 | 
			
		||||
            "description": "Operations about workflow\n"
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "name": "workflow",
 | 
			
		||||
            "description": "Operations about workflow\n"
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "name": "version",
 | 
			
		||||
            "description": "VersionController operations for Version\n"
 | 
			
		||||
 
 | 
			
		||||
@@ -117,11 +117,33 @@ paths:
 | 
			
		||||
  /workflow/{id}:
 | 
			
		||||
    post:
 | 
			
		||||
      tags:
 | 
			
		||||
      - oc-scheduler/controllersWorkflowExecutionController
 | 
			
		||||
      - workflow
 | 
			
		||||
      description: |-
 | 
			
		||||
        schedule workflow
 | 
			
		||||
        <br>
 | 
			
		||||
      operationId: WorkflowExecutionController.ScheduleWorkflow
 | 
			
		||||
      operationId: WorkflowSchedulerController.Schedule
 | 
			
		||||
      parameters:
 | 
			
		||||
      - in: path
 | 
			
		||||
        name: id
 | 
			
		||||
        description: id execution
 | 
			
		||||
        required: true
 | 
			
		||||
        type: string
 | 
			
		||||
      - in: body
 | 
			
		||||
        name: body
 | 
			
		||||
        description: The compute content
 | 
			
		||||
        required: true
 | 
			
		||||
        schema:
 | 
			
		||||
          $ref: '#/definitions/models.compute'
 | 
			
		||||
      responses:
 | 
			
		||||
        "200":
 | 
			
		||||
          description: '{workspace} models.workspace'
 | 
			
		||||
    delete:
 | 
			
		||||
      tags:
 | 
			
		||||
      - workflow
 | 
			
		||||
      description: |-
 | 
			
		||||
        schedule workflow
 | 
			
		||||
        <br>
 | 
			
		||||
      operationId: WorkflowSchedulerController.UnSchedule
 | 
			
		||||
      parameters:
 | 
			
		||||
      - in: path
 | 
			
		||||
        name: id
 | 
			
		||||
@@ -145,6 +167,9 @@ tags:
 | 
			
		||||
- name: oc-scheduler/controllersWorkflowExecutionController
 | 
			
		||||
  description: |
 | 
			
		||||
    Operations about workflow
 | 
			
		||||
- name: workflow
 | 
			
		||||
  description: |
 | 
			
		||||
    Operations about workflow
 | 
			
		||||
- name: version
 | 
			
		||||
  description: |
 | 
			
		||||
    VersionController operations for Version
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user