// 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.update_test_durations;

message InputProperties {
  bool dry_run = 1;

  message Project {
    // LUCI project to query.
    string name = 1;

    // CIPD package to update.
    string cipd_package = 2;
  }

  // LUCI projects for which to pull test duration data, along with the CIPD
  // package into which each project's data should be dumped.
  repeated Project projects = 2;
}
