|
|
|
@@ -51,6 +51,7 @@ type JobSetInfo struct { |
|
|
|
type JobInfo interface { |
|
|
|
GetLocalJobID() string |
|
|
|
GetTargetLocalJobIDs() []string |
|
|
|
GetTargetInputParams(targetID string) map[string]string |
|
|
|
} |
|
|
|
|
|
|
|
var JobInfoTypeUnion = types.NewTypeUnion[JobInfo]( |
|
|
|
@@ -71,7 +72,7 @@ var _ = serder.UseTypeUnionInternallyTagged(&JobInfoTypeUnion, "type") |
|
|
|
type JobInfoBase struct { |
|
|
|
LocalJobID string `json:"localJobID"` |
|
|
|
//TargetLocalJobIDs []string `json:"targetLocalJobIDs"` |
|
|
|
TargetJobInfos []TargetJobInfo `json:"targetJobInfos"` |
|
|
|
TargetJob []TargetJobInfo `json:"targetJob"` |
|
|
|
} |
|
|
|
|
|
|
|
type TargetJobInfo struct { |
|
|
|
@@ -83,9 +84,18 @@ func (i *JobInfoBase) GetLocalJobID() string { |
|
|
|
return i.LocalJobID |
|
|
|
} |
|
|
|
|
|
|
|
func (i *JobInfoBase) GetTargetInputParams(targetID string) map[string]string { |
|
|
|
for _, v := range i.TargetJob { |
|
|
|
if v.TargetJobID == targetID { |
|
|
|
return v.InputParams |
|
|
|
} |
|
|
|
} |
|
|
|
return nil |
|
|
|
} |
|
|
|
|
|
|
|
func (i *JobInfoBase) GetTargetLocalJobIDs() []string { |
|
|
|
var IDs []string |
|
|
|
for _, v := range i.TargetJobInfos { |
|
|
|
for _, v := range i.TargetJob { |
|
|
|
IDs = append(IDs, v.TargetJobID) |
|
|
|
} |
|
|
|
return IDs |
|
|
|
@@ -357,10 +367,10 @@ type DataPreprocessJobInfo struct { |
|
|
|
type DataReturnJobInfo struct { |
|
|
|
serder.Metadata `union:"DataReturn"` |
|
|
|
JobInfoBase |
|
|
|
Type string `json:"type"` |
|
|
|
BucketID cdssdk.BucketID `json:"bucketID"` |
|
|
|
BindingType string `json:"bindingType"` |
|
|
|
TargetLocalJobID string `json:"targetLocalJobID"` |
|
|
|
Type string `json:"type"` |
|
|
|
BucketID cdssdk.BucketID `json:"bucketID"` |
|
|
|
//BindingType string `json:"bindingType"` |
|
|
|
TargetLocalJobID string `json:"targetLocalJobID"` |
|
|
|
} |
|
|
|
|
|
|
|
// MultiInstanceJobInfo 多实例(推理任务) |
|
|
|
|