// Copyright 2019 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 lab_platform;

import "lab_platform/stable_version_key.proto";

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

// StableFirmwareVersion is an association between a given ChromeOS version
// and a string uniquely identifying the firmware version.
// next tag: 4
message StableFirmwareVersion {
    StableVersionKey key = 1;
    string version = 2;

    // A fragment of the Google Storage location for a firmware image.
    // The motivating use case is the devserver API as of 2021 Q1.
    //
    // e.g. "SOMEBOARD-firmware/R80-14444.333.0", which maps to
    // gs://some-bucket/[[image]]/name-of-firmware-bundle.tgz .
    //
    // This fragment can be consumed by the devserver API and permits
    // users to download an firmware bundle without downloading
    // the entire OS image that it is part of.
    string image = 3;
}
