1 2syntax = "proto2"; 3 4message Job { 5 message KeyVal { 6 required string name = 1; 7 required string value = 2; 8 } 9 10 message Kernel { 11 required string base = 1; 12 required string kernel_hash = 2; 13 } 14 15 message Iteration { 16 required int64 index = 1; 17 repeated KeyVal attr_keyval = 2; 18 repeated KeyVal perf_keyval = 3; 19 } 20 21 message Test { 22 required string subdir = 1; 23 required string testname = 2; 24 required string status = 3; 25 required string reason = 4; 26 required Kernel kernel = 5; 27 required string machine = 6; 28 required int64 started_time = 7; 29 required int64 finished_time = 8; 30 repeated Iteration iterations = 9; 31 repeated KeyVal attributes = 10; 32 repeated string labels = 11; 33 // Could be none. Don't depend it as the key for a test. 34 optional int64 test_idx = 12; 35 } 36 37 required string dir = 1; 38 repeated Test tests = 2; 39 required string user = 3; 40 required string label = 4; 41 required string tag = 5; 42 required int64 queued_time = 6; 43 required int64 started_time = 7; 44 required int64 finished_time = 8; 45 required string machine = 9; 46 required string machine_owner = 10; 47 required string machine_group = 11; 48 required string aborted_by = 12; 49 required int64 aborted_on = 13; 50 required string afe_job_id = 14; 51 repeated KeyVal keyval_dict = 15; 52 optional string afe_parent_job_id = 16; // If none, assuming parent job. 53 // Could be none, use a generated id as foreign key to tests. 54 optional int64 job_idx = 17; 55 optional string build_version = 18; 56 optional string suite = 19; 57 optional string board = 20; 58} 59