| // Copyright 2020 The Chromium OS 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 prototype; |
| |
| option go_package = "go.chromium.org/chromiumos/infra/proto/go/prototype"; |
| |
| // Defines the metadata for a project, which ultimately controls how this |
| // project is managed throughout the infrastructure. |
| message DesignProject { |
| // Defines the human-readable name for the project. |
| string name = 1; |
| // Defines the git-repo path for the project. |
| string repo = 2; |
| // Defines the path that stores all of the project configuration. |
| // Relative to the git-repo |
| string config_path = 3; |
| // Define the project's local_manifest. |
| string repo_manifest_path = 4; |
| // The Google Storage bucket for artifacts from the project's builds. |
| string gs_bucket = 5; |
| |
| // Defines config needed to maintain firmware builders for the project. |
| FirmwareConfig firmware_config = 6; |
| |
| // Define factory build config needed for manufacturing verification. |
| FactoryConfig factory_config = 7; |
| |
| // Defines signing config unique to the given design project. |
| SigningConfig signing_config = 8; |
| |
| message FirmwareConfig { |
| // Defines the firmware branch that will be maintained for the project. |
| string firmware_branch = 1; |
| } |
| |
| message FactoryConfig { |
| // Defines the factory branch that will be maintained for the project. |
| string factory_branch = 1; |
| |
| // A key in the project.yaml metadata file, to look up the branch, path, |
| // etc. For example, to match the entry in the project.yaml file: |
| // |
| // MILKYWAY: |
| // board: GALAXY |
| // branch: master |
| // version: 3 |
| // path: v3/MILKYWAY |
| // |
| // project_key should be 'MILKYWAY'. The matching is case-insensitive. |
| string hwid_project_key = 2; |
| } |
| |
| message SigningConfig { |
| // Key names have taken historically followed many different patterns. |
| // To support all of the cases, this defines an explicit mapping between the |
| // supported brands and corresponding keys present in the respective |
| // keysets. |
| // Going forward, this could be standardized, removing the need for the |
| // explict mapping, but this will be required for the foreseeable future. |
| map<string, string> brand_id_to_key = 1; |
| } |
| } |