blob: 79f9a4213d61867b910d83c02ae8839387eb824c [file] [log] [blame]
// Copyright 2022 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.bazel_build_test_upload;
import "recipe_modules/fuchsia/dpi/options.proto";
import "recipe_modules/fuchsia/fxt/options.proto";
import "recipe_modules/fuchsia/presubmit_util/options.proto";
message InputProperties {
// Remote URL of repository to checkout.
string remote = 1;
// Options to pass to `bazel build`.
repeated string build_options = 2;
// A single build target to pass to `bazel build` which uses the
// fuchsia_builder_group() rule from fuchsia-infra-bazel-rules.git.
string build_target = 3;
// Name of the Swarming pool in which to schedule testing tasks.
// If omitted, testing will be skipped for this repository.
string testing_pool = 4;
// GCS bucket to which artifacts should be uploaded.
string gcs_bucket = 5;
// Whether to sign artifacts.
bool sign_artifacts = 6;
// FXT presubmit options.
recipe_modules.fuchsia.fxt.Options fxt_options = 7;
// External presubmit options.
recipe_modules.fuchsia.presubmit_util.Options external_presubmit_options = 8;
// Upload options for MOS-TUF.
recipe_modules.fuchsia.dpi.DPIUploadOptions mos_upload_options = 9;
// A default service account to attach to test tasks; used for shards that
// do not specify one themselves.
string default_service_account = 10;
// Whether to upload artifacts to CIPD.
bool upload_to_cipd = 11;
}
// Represents a collection of test and upload requests expected to be produced
// by the build.
message BuilderManifest {
// Path to the aggregate testing manifest containing all test groups.
string testing_manifest = 1;
// Paths to GCS upload manifests.
repeated string gcs_manifests = 2;
// Paths to CIPD upload manifests.
repeated string cipd_manifests = 3;
}