1// Copyright 2023 Google LLC 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 = "proto3"; 16 17package google.devtools.resultstore.v2; 18 19import "google/api/resource.proto"; 20import "google/devtools/resultstore/v2/common.proto"; 21 22option go_package = "google.golang.org/genproto/googleapis/devtools/resultstore/v2;resultstore"; 23option java_multiple_files = true; 24option java_outer_classname = "ConfigurationProto"; 25option java_package = "com.google.devtools.resultstore.v2"; 26 27// Represents a configuration within an Invocation associated with one or more 28// ConfiguredTargets. It captures the environment and other settings that 29// were used. 30message Configuration { 31 option (google.api.resource) = { 32 type: "resultstore.googleapis.com/Configuration" 33 pattern: "invocations/{invocation}/configs/{config}" 34 }; 35 36 // The resource ID components that identify the Configuration. 37 message Id { 38 // The Invocation ID. 39 string invocation_id = 1; 40 41 // The Configuration ID. 42 string configuration_id = 2; 43 } 44 45 // The format of this Configuration resource name must be: 46 // invocations/${INVOCATION_ID}/configs/${CONFIG_ID} 47 // The configuration ID of "default" should be preferred for the default 48 // configuration in a single-config invocation. 49 string name = 1; 50 51 // The resource ID components that identify the Configuration. They must match 52 // the resource name after proper encoding. 53 Id id = 2; 54 55 // The aggregate status for this configuration. 56 StatusAttributes status_attributes = 3; 57 58 // Attributes that apply only to this configuration. 59 ConfigurationAttributes configuration_attributes = 5; 60 61 // Arbitrary name-value pairs. 62 // This is implemented as a multi-map. Multiple properties are allowed with 63 // the same key. Properties will be returned in lexicographical order by key. 64 repeated Property properties = 6; 65 66 // A human-readable name for Configuration for UIs. 67 // It is recommended that this name be unique. 68 // If omitted, UIs should default to configuration_id. 69 string display_name = 8; 70} 71 72// Attributes that apply only to the configuration. 73message ConfigurationAttributes { 74 // The type of cpu. (e.g. "x86", "powerpc") 75 string cpu = 1; 76} 77