-
Notifications
You must be signed in to change notification settings - Fork 16
/
Copy pathlab.proto
112 lines (90 loc) · 3.52 KB
/
lab.proto
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
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
/*
* Copyright 2022 Google LLC
*
* 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 mobileharness.api.deviceconfig;
import "src/devtools/mobileharness/api/deviceconfig/proto/basic.proto";
import "src/devtools/mobileharness/api/model/proto/lab.proto";
option java_package = "com.google.devtools.mobileharness.api.deviceconfig.proto";
option java_outer_classname = "Lab";
// The configuration of a lab.
message LabConfig {
// The host name of the lab, used to index the config.
string host_name = 1;
// The IPs the lab will try to use TCP to connect by default.
repeated string over_tcp_ip = 2;
// The SSH IP address, port, username and password the lab will try to connect
// by default, in the format of "ip, username, password".
repeated OverSshDevice over_ssh = 6;
// The detector specifications of the lab.
DetectorSpecs detector_specs = 13;
// The UUID of devices which will be monitored by the lab.
repeated string monitored_device_uuid = 3;
// The configuration which will be applied to devices connect to this lab,
// and they don’t have specific DeviceConfigs defined above.
BasicDeviceConfig default_device_config = 4;
// The UUID of testbed configs of this lab.
repeated string testbed_uuid = 5;
// The host properties of this lab.
mobileharness.api.model.HostProperties host_properties = 9;
// The UUID of devices which should be MiscDevice.
repeated string misc_device_uuid = 11;
// The SSH groups of this lab.
repeated SshGroup ssh_group = 12;
reserved 7, 8, 10;
}
// The configuration of a SSH group to define users/groups that can ssh to this
// host with a specific user. It works only when hosts have configured SSHd to
// ask Config Server to check SSH authentication.
message SshGroup {
// The login user of the group.
string login_user = 1;
// Allowed identities. Could be a user or a mdb group.
repeated string principals = 2;
}
// The configuration of an over SSH device.
message OverSshDevice {
// The ip address to SSH to.
string ip_address = 1; // Required
// The user name for the SSH connection.
string username = 2; // Required
// The password for the SSH connection, optional.
string password = 3;
// The device type of ssh device, Required
string ssh_device_type = 4;
}
// The configuration of a device type.
message DetectorSpecs {
ManekiDetectorSpecs maneki_detector_specs = 1;
message ManekiDetectorSpecs {
repeated ManekiAndroidDeviceDiscoverySpec
maneki_android_device_discovery_spec = 1;
repeated ManekiRokuDeviceDiscoverySpec maneki_roku_device_discovery_spec =
2;
message ManekiAndroidDeviceDiscoverySpec {
string mac_address = 1;
}
message ManekiRokuDeviceDiscoverySpec {
string mac_address = 1;
}
}
}
// The configuration of an USB device.
message UsbDevice {
// Device ID in the format of "idVendor:idProduct", e.g. "0403:0001".
string id = 1; // Required
// The device display name on MHFE, will be passed to dimension model.
string display_name = 2; // Required
}