blob: e253ee19a1cd54a64bb15e1fa64561fe651c8835 [file] [log] [blame]
// 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;
}