blob: 31001dde35d1494fa5dedc49055c4fde2371d91b [file] [log] [blame]
syntax = "proto3";
package teaclave_scheduler_service_proto;
import "teaclave_common.proto";
message SubscribeRequest {}
message SubscribeResponse {
bool success = 1;
}
message PullTaskRequest {}
message PullTaskResponse {
bytes staged_task = 1;
}
message UpdateTaskStatusRequest {
string task_id = 1;
teaclave_common_proto.TaskStatus task_status = 2;
}
message UpdateTaskStatusResponse {}
message UpdateTaskResultRequest {
string task_id = 1;
teaclave_common_proto.TaskResult result = 2;
}
message UpdateTaskResultResponse {}
message PublishTaskRequest {
bytes staged_task = 1;
}
message PublishTaskResponse {}
service TeaclaveScheduler {
// Publisher
rpc PublishTask(PublishTaskRequest) returns (PublishTaskResponse);
// Subscriber
rpc Subscribe(SubscribeRequest) returns (SubscribeResponse);
rpc PullTask(PullTaskRequest) returns (PullTaskResponse);
rpc UpdateTaskStatus(UpdateTaskStatusRequest) returns (UpdateTaskStatusResponse);
rpc UpdateTaskResult(UpdateTaskResultRequest) returns (UpdateTaskResultResponse);
}