1// Copyright 2018 The Android Open Source Project
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//      http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15syntax = "proto2";
16
17package android.test.lab;
18
19// To specify a green build scheduling policy.
20message GreenBuildScheduleConfigMessage {
21  // Schedule name.
22  optional bytes name = 1;
23
24  // Schedule description (e.g., daily/HH:MM)
25  optional bytes schedule = 2;
26
27  // Scheduling priority (e.g., top, high, medium, low)
28  optional bytes priority = 3;
29
30  // if GSI (General System Image) is used, GSI manifest branch name.
31  optional bytes gsi_branch = 11;
32
33  // if GSI (General System Image) is used, GSI PAB account ID.
34  optional bytes gsi_pab_account_id = 12;
35
36  // Test package's manifest branch name.
37  optional bytes test_branch = 21;
38
39  // PAB account ID for test package.
40  optional bytes test_pab_account_id = 22;
41
42  repeated GreenBuildTestScheduleConfigMessage test = 31;
43}
44
45// To specify a test plan scheduling policy.
46message GreenBuildTestScheduleConfigMessage {
47  // Test name (e.g., test_group/test_plan)
48  optional bytes test_name = 1;
49
50  // Test package's build target name.
51  optional bytes test_build_target = 11;
52
53  // Device manifest branch name.
54  optional bytes device_branch = 21;
55
56  // Device PAB account ID.
57  optional bytes device_pab_account_id = 22;
58
59  repeated GreenBuildDeviceScheduleConfigMessage device = 31;
60}
61
62// To specify a device scheduling policy.
63message GreenBuildDeviceScheduleConfigMessage {
64  // Device type (format: <lab>/<device type>)
65  optional bytes device = 1;
66
67  // Number of shards (0 for auto selection)
68  optional int32 shards = 11;
69
70  // Device manifest branch name if different.
71  optional bytes device_branch = 21;
72
73  // Device build target if different.
74  optional bytes device_build_target = 22;
75
76  // Device PAB account ID if different.
77  optional bytes device_pab_account_id = 23;
78
79  // GSI's build target name.
80  optional bytes gsi_build_target = 31;
81}
82