1/*
2 * Copyright (C) 2023 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 *      http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!//
18//----------------------------------------------------------------------------//
19//  THIS FILE IS AUTOMATICALLY SYNCED TO THE **PUBLIC** AOSP REPOSITORY       //
20//  DO NOT ADD ANY NON-PUBLIC INFORMATION TO THIS FILE                        //
21//----------------------------------------------------------------------------//
22//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!//
23
24syntax = "proto3";
25
26package google.internal.android.engprod.v1;
27
28option java_multiple_files = true;
29option java_package = "com.google.internal.android.engprod.v1";
30
31service DynamicTestTargetProvider {
32  // Seed the server pool with new work to be completed.
33  rpc ProvideTestTarget(ProvideTestTargetRequest)
34      returns (ProvideTestTargetResponse) {}
35
36  // Request new work from the server, may request more than one work unit at a
37  // time, and reports whether there are more or not.
38  rpc RequestTestTarget(RequestTestTargetRequest)
39      returns (RequestTestTargetResponse) {}
40}
41
42message ProvideTestTargetRequest {
43  // The pool identifier for the targets set
44  string reference_pool_id = 1;
45  // The set of test target to be seeded under the pool id
46  repeated SerializedTestTarget test_targets = 2;
47  // Use one-shot seeding mode in order to speed up pool initialization
48  optional bool use_one_shot_seeding = 3;
49}
50
51// Placeholder response for providing test targets.
52// The method will raise an error code in the event of an error.
53message ProvideTestTargetResponse {}
54
55message RequestTestTargetRequest {
56  // The pool id we are requesting from
57  string reference_pool_id = 1;
58  // Number of targets we want [default =1]
59  // Future: int32 target_count = 2;
60}
61
62// Response with the requested test targets
63message RequestTestTargetResponse {
64  // List of test targets to be executed
65  repeated SerializedTestTarget test_targets = 1;
66}
67
68message SerializedTestTarget {
69  string target_name = 1;
70  optional uint32 attempt_number = 2;
71}
72