blob: 7e5597c5ae21f15ab1f2de363c9a985272cb8dd3 [file] [log] [blame]
// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
syntax = "proto3";
package testplans;
option go_package = "go.chromium.org/chromiumos/infra/proto/go/testplans";
message ProtoBytes { bytes serialized_proto = 1; }
message FilePattern {
// Bash pattern for matching a file in the chromiumos checkout.
// This may make use of globstar (i.e. **) notation to match against many
// subdirectories at once. The pattern will be matched against a full
// relative path in the chromiumos checkout.
// e.g.
// chromite/config/** to match anything under chromite/config/
// **/OWNERS to match any OWNERS file
// **/*.md to match any .md file
// src/somefile.java to match a specific file
string pattern = 1;
// Bash patterns that exclude files in the chromiumos checkout from a match.
//
// A file in the chromiumos checkout is considered a match iff:
// 1. It matches pattern.
// 2. It doesn't match any of exclude_patterns.
//
// The matching rules of exclude_patterns are the same as patterns, e.g.
// globstar is allowed.
repeated string exclude_patterns = 2;
}