blob: 236d978d69824d29f39536fed1053b183c60bcc6 [file] [log] [blame]
// 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.
/*
This proto matches the schema of paygen.json. An example
of which looks like the following:
{
"delta": [
{
"board": {
"public_codename": "AU from FSI to RSI in Beta channel",
"is_active": false,
"builder_name": "AU from FSI to RSI in Beta channel"
},
"delta_type": "NO_DELTA",
"generate_delta": false,
"delta_payload_tests": false,
"full_payload_tests": false
},
...
{
"board": { ...
...
}
]
}
*/
syntax = "proto3";
package chromiumos;
option go_package = "go.chromium.org/chromiumos/infra/proto/go/chromiumos";
message PayloadConfig {
// This is current configuration for payloads.
repeated PayloadProperties delta = 1;
}
// This is a single payload config field.
message PayloadProperties {
// A board type and builder name, and if it is currently active.
message Board {
// The board's public codename (e.g. nyan-kitty).
string public_codename = 1;
// Is the board currently being supported.
bool is_active = 2;
// What is the builder name for the board (e.g. nyan_kitty).
string builder_name = 3;
}
// An enum of possible delta types.
enum DeltaType {
NOT_SET = 0;
NO_DELTA = 1;
OMAHA = 2;
STEPPING_STONE = 3;
MILESTONE = 4;
FSI = 5;
}
// The board to be considered for signing.
Board board = 1;
// The delta type to generate for the payload.
DeltaType delta_type = 2;
// The channel to sign payloads for (e.g. 'dev', 'stable', or '').
string channel = 3;
// The chrome os version (e.g. '12240.0.0' or '').
string chrome_os_version = 4;
// The version of chrome within the payload (e.g. '78.0.3877.0').
string chrome_version = 5;
// The milestone number (e.g. 73).
uint32 milestone = 6;
// Generate the image update deltas.
bool generate_delta = 7;
// Test the image update deltas we generated post signing.
bool delta_payload_tests = 8;
// Do a full payload test.
bool full_payload_tests = 9;
// An array of model names: ['teemo', 'kench', 'sion'].
// While we generally don't like repeated scalars, it conforms to the json.
repeated string applicable_models = 10;
}