VOL-3765: option to retrieve startup configuration info
Change-Id: I9a5b15bf4bb4bf0b030e29b4c4f4553d2177c29b
diff --git a/protos/dmi/sw_management_service.proto b/protos/dmi/sw_management_service.proto
index 754a654..9fcc322 100644
--- a/protos/dmi/sw_management_service.proto
+++ b/protos/dmi/sw_management_service.proto
@@ -55,6 +55,27 @@
Reason reason = 2;
}
+message StartupConfigInfoRequest {
+ Uuid device_uuid = 1;
+}
+
+message StartupConfigInfoResponse {
+ enum Reason {
+ UNDEFINED_REASON = 0;
+ UNKNOWN_DEVICE = 1;
+ INTERNAL_ERROR = 2;
+ }
+ Status status = 1;
+ Reason reason = 2;
+ // The config_url is an optional attribute, the device manager could return the location from
+ // where the config was downloaded. Also it would not be present/empty for a fresh device into which the
+ // startup config would have been installed in the factory.
+ string config_url = 3;
+ // The version of the startup configuration. It is recommended to use semVer, but the DM implementations
+ // and operators could choose any other format as well.
+ string version = 4;
+}
+
service NativeSoftwareManagementService {
// Get the software version information of the Active and Standby images
rpc GetSoftwareVersion(HardwareID) returns(GetSoftwareVersionInformationResponse);
@@ -74,6 +95,9 @@
// This API can be used to let the devices pickup their properitary configuration which they need at startup.
rpc UpdateStartupConfiguration(ConfigRequest) returns(stream ConfigResponse);
+ // This API can be used to retrieve information about the current startup configuration that a device is using
+ rpc GetStartupConfigurationInfo(StartupConfigInfoRequest) returns(StartupConfigInfoResponse);
+
// If needed we can add this later
//rpc SubscribeToEvents() returns (stream );
}