blob: 40d01632b988313900b92896ee1613857eec7226 [file] [log] [blame]
// Copyright 2022 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// Protobuf definitions for reporting instance status.
syntax = "proto2";
package protos;
option go_package = "policy_manager/protos";
// ReleaseChannel specifies the Chrome OS release channel that the image is on.
enum ReleaseChannel {
// Unknown release channel.
RELEASE_CHANNEL_UNSPECIFIED = 0;
// Stable channel.
STABLE = 1;
// Beta channel.
BETA = 2;
// Dev channel.
DEV = 3;
reserved 4;
}
// OSVersion contains all the fields identifying a particular version of the
// Chrome OS.
message OSVersion {
// Release version string. For example: "16511.0.0"
// Chrome OS uses the following version format:
// <TIP_BUILD>.<BRANCH_BUILD>.<BRANCH_BRANCH_BUILD>
optional string version_string = 1;
// Milestone number for Chrome. For example: 89
optional uint32 milestone = 2;
// Release channel of the OS.
optional ReleaseChannel channel = 3;
// Next number: 4
}
// InstanceStatus contains all the fields related to the current status of the
// instance.
message InstanceStatus {
// GCE instance ID.
optional uint64 instance_id = 1;
// Current version of the image.
optional OSVersion os_version = 2;
// The current update status as reported by the update_engine.
optional string update_status = 3;
// New version delivered by the update.
optional OSVersion new_os_version = 4;
// Unix timestamp of last reboot.
optional int64 reboot_timestamp = 5;
// Unix timestamp fo last update check.
optional int64 update_check_timestamp = 6;
// If an error occurred while collecting the instance status, this field will
// be set with the error message and all other fields except the instance_id
// are undefined.
optional string error = 7;
// Next number: 8
}