// Copyright 2019 The Flutter 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.flutter.engine.engine_lint;

message InputProperties {
  string goma_jobs = 1;
  string jazzy_version = 2;

  // Lint all source files unconditionally.
  bool lint_all = 3;
  // Lint only files changed in the tip-of-tree commit.
  bool lint_head = 4;
  // If those are both false, then the commit should be on a branch, and the
  // files that are changed on the branch w.r.t. the upstream parent will be
  // linted.

  // Lint the files used for the host build.
  bool lint_host = 5;
  // Lint the files used for the Android embedder.
  bool lint_android = 6;
  // Lint the files used for the iOS embedder.
  bool lint_ios = 7;
}

message EnvProperties {
  string SWARMING_TASK_ID = 1;
}
