forked from feast-dev/feast
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathJobService.proto
More file actions
87 lines (71 loc) · 2.44 KB
/
Copy pathJobService.proto
File metadata and controls
87 lines (71 loc) · 2.44 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
/*
* Copyright 2018 The Feast Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
syntax = "proto3";
package feast.core;
import "feast/specs/ImportSpec.proto";
import "google/protobuf/empty.proto";
import "google/protobuf/timestamp.proto";
option java_package = "feast.core";
option java_outer_classname = "JobServiceProto";
option go_package = "github.com/gojek/feast/protos/generated/go/feast/core";
service JobService {
// Submit a job to feast to run. Returns the job id.
rpc SubmitJob (JobServiceTypes.SubmitImportJobRequest) returns (JobServiceTypes.SubmitImportJobResponse);
// List all jobs submitted to feast.
rpc ListJobs (google.protobuf.Empty) returns (JobServiceTypes.ListJobsResponse);
// Get Job with ID
rpc GetJob (JobServiceTypes.GetJobRequest) returns (JobServiceTypes.GetJobResponse);
// Abort job with given ID
rpc AbortJob(JobServiceTypes.AbortJobRequest) returns (JobServiceTypes.AbortJobResponse);
}
message JobServiceTypes {
message SubmitImportJobRequest {
feast.specs.ImportSpec importSpec = 1;
string name = 2; // optional
}
message SubmitImportJobResponse {
string jobId = 1;
}
message ListJobsResponse {
repeated JobDetail jobs = 1;
}
message GetJobRequest {
string id = 1;
}
message GetJobResponse {
JobDetail job = 1;
}
message AbortJobRequest {
string id = 1;
}
message AbortJobResponse {
string id = 1;
}
// Expanded view of a given job. Returns job information, as well
// as latest metrics.
message JobDetail {
string id = 1;
string extId = 2;
string type = 3;
string runner = 4;
string status = 5;
repeated string entities = 6;
repeated string features = 7;
map<string,double> metrics = 8;
google.protobuf.Timestamp lastUpdated = 9;
google.protobuf.Timestamp created = 10;
}
}