Add exec functionality to shim

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
This commit is contained in:
Michael Crosby 2017-01-24 14:45:18 -08:00
parent d5d2e586cd
commit e09b0b0c35
7 changed files with 1351 additions and 93 deletions

File diff suppressed because it is too large Load diff

View file

@ -5,7 +5,7 @@ package containerd.v1;
import "google/protobuf/empty.proto";
import "gogoproto/gogo.proto";
service ShimService {
service Shim {
rpc Create(CreateRequest) returns (CreateResponse);
rpc Start(StartRequest) returns (google.protobuf.Empty);
rpc Delete(DeleteRequest) returns (DeleteResponse);
@ -14,7 +14,7 @@ service ShimService {
}
message CreateRequest {
string id = 1 [(gogoproto.customname) = "ID"];
string id = 1 [(gogoproto.customname) = "ID"];
string bundle = 2;
string runtime = 3;
bool no_pivot = 4;
@ -40,7 +40,32 @@ message DeleteResponse {
}
message ExecRequest {
string id = 1 [(gogoproto.customname) = "ID"];
bool terminal = 2;
string stdin = 3;
string stdout = 4;
string stderr = 5;
User user = 6;
repeated string args = 7;
repeated string env = 8;
string cwd = 9;
repeated string capabilities = 10;
repeated Rlimit rlimits = 11;
bool no_new_privileges = 12;
string apparmor_profile = 13;
string selinux_label = 14;
}
message User {
uint32 uid = 1;
uint32 gid = 2;
repeated uint32 additional_gids = 3;
}
message Rlimit {
string type = 1;
uint64 hard = 2;
uint64 soft = 3;
}
message ExecResponse {
@ -49,6 +74,6 @@ message ExecResponse {
message PtyRequest {
uint32 pid = 1;
uint32 width = 2;
uint32 height = 3;
uint32 width = 2;
uint32 height = 3;
}