go.chromium.org/luci@v0.0.0-20240309015107-7cdc2e660f33/buildbucket/proto/launcher.proto (about) 1 // Copyright 2018 The LUCI Authors. 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 15 syntax = "proto3"; 16 17 package buildbucket.v2; 18 19 option go_package = "go.chromium.org/luci/buildbucket/proto;buildbucketpb"; 20 21 import "go.chromium.org/luci/buildbucket/proto/build.proto"; 22 23 // This file is meant for protos passed and used internally. 24 25 // A collection of build-related secrets we might pass from Buildbucket to Kitchen. 26 message BuildSecrets { 27 // A BUILD token to identify UpdateBuild RPCs associated with the same build. 28 string build_token = 1; 29 30 // Token to allow updating this build's invocation in ResultDB. 31 string resultdb_invocation_update_token = 2; 32 33 // A START_BUILD token to identify StartBuild RPCs associated with 34 // the same build. 35 string start_build_token = 3; 36 } 37 38 // Arguments for bbagent command. 39 // 40 // All paths are relateive to bbagent's working directory, and must be delimited 41 // with slashes ("/"), regardless of the host OS. 42 message BBAgentArgs { 43 // Path to the user executable. 44 // 45 // Deprecated. Superseded by payload_path and `build.exe.cmd`. 46 string executable_path = 1; 47 48 // Path to the base of the user executable package. 49 // 50 // Required. 51 string payload_path = 5; 52 53 // Path to a directory where each subdirectory is a cache dir. 54 // 55 // Required. 56 string cache_dir = 2; 57 58 // List of Gerrit hosts to force git authentication for. 59 // 60 // By default public hosts are accessed anonymously, and the anonymous access 61 // has very low quota. Context needs to know all such hostnames in advance to 62 // be able to force authenticated access to them. 63 repeated string known_public_gerrit_hosts = 3; 64 65 // Initial state of the build, including immutable state such as id and input 66 // properties. 67 Build build = 4; 68 } 69 70 message BuildbucketAgentContext { 71 // Should match the task_id that was sent to buildbucket in 72 // either RunTaskResposne.Task.Id.Id or in 73 // StartBuildTaskRequest.Task.Id.Id 74 string task_id = 1; 75 76 // The secrets that was provided to the backend from 77 // RunTaskRequest or StartBuildTaskResponse. 78 // 79 // During the task backend migration, the BuildToken secret 80 // bytes sent to swarming will be populated here. Bbagent will 81 // read LUCI_CONTEXT provided by raw swarming tasks and convert it to 82 // BuildbucketAgentContext. All swarming tasks ran as task backend tasks 83 // will use BuildbucketAgentContext directly. 84 BuildSecrets secrets = 2; 85 86 }