blob: a07fe54a380f979188ef960a7b411f9e6859831b [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.sdk;
// Sdk fully describes how to execute an SDK CI/CQ task.
message InputProperties {
// Manifest to checkout.
string manifest = 1;
// The remote integration manifest repository.
string remote = 2;
// GCS bucket to upload the SDK to.
string gcs_bucket = 3;
// Name to assign to the base SDK, e.g. "core".
string sdk_name = 4;
// CIPD package root to upload the SDK to.
string cipd_root = 5;
// Images to accompany the SDK.
repeated CompanionImage companion_images = 6;
message CompanionImage {
// Name of the image when referred to in the SDK.
string name = 1;
// Name of the builder generating the image.
string builder = 2;
}
// If true, overwrite the SDK version to match the input release version.
bool is_release_version = 7;
// Branch and ref settings for the SDK.
repeated RefSetting ref_settings = 8;
message RefSetting {
// Update refs and stamps if input release version is reachable on this
// branch.
string branch = 1;
// Update this CIPD ref and GCS stamp.
string update_ref = 2;
}
// Timeout for collecting subbuilds.
int32 subbuild_collect_timeout_secs = 9;
// How to test the SDK in external infrastructures. See ExternalTesting message.
ExternalTesting external_testing = 10;
message ExternalTesting {
// Gerrit hostname to test the SDK against.
string gerrit_host = 1;
// Gerrit project to test the SDK against.
string gerrit_project = 2;
// Filepath to override the SDK bucket.
string bucket_filepath = 3;
// Filepath to override the SDK version.
string version_filepath = 4;
// Filepath to override the SDK version list.
string version_list_filepath = 5;
// Contents of the SDK version list.
string version_list_contents = 6;
// Timeout for external tests completion.
int32 timeout_secs = 7;
// Builder names of tryjobs to collect.
repeated string tryjobs = 8;
// Alternate Gerrit hostname for searching tryjobs, as they may be
// registered under a different host.
string tryjobs_gerrit_host = 9;
// Time to wait for tryjobs to initialize after applying CQ label.
int32 tryjobs_wait_secs = 10;
// Whether to explicitly trigger tryjobs instead of applying CQ label.
bool trigger_tryjobs = 11;
// Test against this ref.
string ref = 12;
}
// How to test the SDK in TAP. See TapTesting message.
TapTesting tap_testing = 11;
// TODO(fxbug.dev/90091): Deprecate TapTesting for FxtTests.
message TapTesting {
repeated string tap_projects = 1;
// Whether to use staging host for RPCs.
bool use_staging_host = 2;
// How long to wait for external tests to finish.
int32 timeout_secs = 3;
}
// Path to a fint parameters file within the fuchsia checkout. If set will use
// `fint set` instead of `gn gen`.
string fint_params_path = 12;
// How to test the SDK in TAP. See TapTesting message.
FxtTests fxt_tests = 13;
message FxtTests {
// TAP projects to trigger.
repeated string tap_projects = 1;
// Guitar projects to trigger.
map<string, string> guitar_projects = 2;
// Whether to use staging host for RPCs.
bool use_staging_host = 3;
// How long to wait for external tests to finish.
int32 timeout_secs = 4;
}
}