1// Copyright 2024 The ChromiumOS Authors 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5syntax = "proto3"; 6 7package chromiumos.test.api; 8 9option go_package = "go.chromium.org/chromiumos/config/go/test/api"; 10 11service ADBService { 12 // ExecCommand runs a command on ABD. 13 rpc ExecCommand(ADBCommandRequest) returns (ADBCommandResponse){} 14} 15 16message ADBCommandRequest { 17 // command is the command of ADB to run. 18 string command = 1; 19 // args are the arguments to pass to the command. The arguments 20 // are not quoted in any way, so passing shell variables and 21 // arguments containing spaces could fail. 22 repeated string args = 2; 23} 24message ADBCommandResponse { 25 // stdout contains the shell command's stdout output since the last 26 // response in the stream. 27 // The implementation MAY batch or delay output to later 28 // responses in the stream. 29 bytes stdout = 1; 30 // stderr contains the shell command's stderr output since the last 31 // response in the stream. 32 // The implementation MAY batch or delay output to later 33 // responses in the stream. 34 bytes stderr = 2; 35 // Exit code from shell command. 36 // At this point only support exit code 1 or 0. 37 int32 exit_code = 3; 38} 39