| // 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.tree_closer; |
| |
| message InputProperties { |
| // LUCI project containing the specified Milo console. |
| string project = 1; |
| |
| // Name of the Milo console to check. |
| string console_name = 2; |
| |
| // Don't close the tree if the last status change was more recent than this |
| // many seconds ago. |
| int32 grace_period_seconds = 3; |
| |
| // Close the tree hosted here (e.g. 'fuchsia-stem-status.appspot.com'). |
| string tree_status_host = 4; |
| |
| // The password to use for closing the tree. |
| // TODO: It's not great that we pass around the password in plain text. If |
| // this ever becomes an issue, we can start using the builder service account |
| // to authenticate with the status page via proper Oauth. |
| string tree_status_password = 5; |
| |
| // Components to set for the monorail tree closure bug. |
| repeated string bug_components = 6; |
| |
| // Conditions under which to close the tree during working hours. |
| repeated Rule working_hour_rules = 7; |
| |
| // Conditions under which to close the tree during off-hours. |
| repeated Rule off_hour_rules = 8; |
| |
| message Rule { |
| // Only count builds that have a failed step whose name matches this regex. |
| string failed_step_regexp = 1; |
| |
| // Close the tree if this many builders in the console are failing at the |
| // same time. |
| int32 concurrent_failures = 2; |
| |
| // Close the tree if any builder in the console has failed this many times |
| // in a row. |
| int32 consecutive_failures = 3; |
| |
| // If set, consider only builders in this list of builder names. |
| repeated string builders_to_check = 4; |
| } |
| |
| // If the build summary matches one of these regexps, then skip it when |
| // checking tree closure rules. |
| repeated string summary_regexp_ignore = 9; |
| |
| // Labels to set for the monorail tree closure bug. |
| repeated string bug_labels = 10; |
| |
| // Dates on which the tree closer should not run, used to disable the tree |
| // closer on holidays. Each date should be of the form "YYYY-MM-DD". |
| // TODO(fxbug.dev/89629): Automatically skip closing the tree on holidays. |
| repeated string disable_on_dates = 11; |
| } |