// Copyright 2020 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 project_mgmt;

option go_package = "go.chromium.org/chromiumos/infra/proto/go/project_mgmt";

import "project_mgmt/project.proto";

// Defines the metadata for a program, which ultimately controls how this
// program is managed throughout the infrastructure.
//
// NEXT ID: 7
message Program {
  // Defines the human-readable name for the program.
  string name = 1;
  // Defines the git-repo path for the program.
  string repo = 2;
  // Defines the path that stores all of the program configuration.
  // Relative to the git-repo
  string config_path = 3;
  // Defines the path the repo is checked out to in the source tree, i.e. the
  // "path" attribute in the manifest.
  string repo_checkout_path = 4;
  // Defines projects within this program.
  ProjectList projects = 5;
  // The Google Storage bucket for artifacts from the program's builds.
  string gs_bucket = 6;
}

message ProgramList { repeated Program value = 1; }
