| // Copyright 2020 The Fuchsia Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| syntax = "proto3"; |
| |
| package recipes.fuchsia.fuchsia.fuchsia; |
| |
| import "infra/coverage.proto"; |
| import "infra/fuchsia.proto"; |
| import "recipe_modules/fuchsia/fxt/options.proto"; |
| |
| message InputProperties { |
| // The buildbucket ID of the child build. If set, will use this build instead |
| // of launching a new one. |
| string child_build_id = 1; |
| |
| // Enable perfcompare mode: Compare performance between the "without CL" and |
| // "with CL" revisions. This involves building and testing both of those |
| // revisions. |
| bool perfcompare = 2; |
| |
| // Number of times to run each test shard. The protobuf-level default of 0 |
| // is translated to a default of >1 when perfcompare mode is enabled and a |
| // default of 1 otherwise. |
| // |
| // This parameter is effectively the number of boots of Fuchsia to run |
| // performance tests on, in order to deal with cross-boot variation of |
| // performance. |
| // |
| // This property is mostly useful for perfcompare mode (and exists partly so |
| // that a test case can pass a smaller number in order to make the test |
| // expectations simpler), but it is also useful for gathering data for |
| // performance experiments without using perfcompare mode. |
| int32 runs_per_shard = 3; |
| |
| // Whether to only run affected tests. |
| bool affected_tests_only = 4; |
| |
| // The type of coverage collection this build should do. |
| infra.coverage.CoverageCollectionType coverage_collection = 5; |
| |
| // Message containing most properties that are common to most recipes under |
| // recipes/fuchsia/. |
| // TODO(fxbug.dev/77879): Consider merging required spec fields into the top |
| // level of the properties message. There's nothing special about which fields |
| // are nested in `spec` versus in the top-level properties; the spec field is |
| // a vestige from when specs were checked into git rather than passed as |
| // properties. |
| infra.fuchsia.Fuchsia spec = 6; |
| |
| // External testing options. |
| recipe_modules.fuchsia.fxt.Options fxt_options = 7; |
| |
| // Guitar test filter expressions. See go/bqr for examples. |
| // |
| // This property is intended to be set dynamically by the caller. For the |
| // convenience of the caller, the property is a top-level property such that |
| // the caller does not need to read and modify the statically set fxt_options. |
| repeated string guitar_test_filter_exprs = 8; |
| } |