libweave: Move firmware version generation out of libweave
Temporarily location is weave::Options, should be moved into
weave::Settings.
BUG=brillo:1257,brillo:1253
TEST=`FEATURES=test emerge-gizmo libweave buffet`
Change-Id: Ib24083f02e56b9af28d11d046631f19593394b3e
Reviewed-on: https://chromium-review.googlesource.com/293926
Reviewed-by: Alex Vakulenko <avakulenko@chromium.org>
Tested-by: Vitaly Buka <vitalybuka@chromium.org>
Commit-Queue: Vitaly Buka <vitalybuka@chromium.org>
diff --git a/buffet/main.cc b/buffet/main.cc
index 276e030..280abd6 100644
--- a/buffet/main.cc
+++ b/buffet/main.cc
@@ -5,10 +5,11 @@
#include <string>
#include <base/files/file_path.h>
+#include <chromeos/daemons/dbus_daemon.h>
#include <chromeos/dbus/async_event_sequencer.h>
#include <chromeos/dbus/exported_object_manager.h>
-#include <chromeos/daemons/dbus_daemon.h>
#include <chromeos/flag_helper.h>
+#include <chromeos/key_value_store.h>
#include <chromeos/strings/string_utils.h>
#include <chromeos/syslog_logging.h>
@@ -101,6 +102,16 @@
options.enable_ping = FLAGS_enable_ping;
options.test_privet_ssid = FLAGS_test_privet_ssid;
+ base::FilePath lsb_release_path("/etc/lsb-release");
+ chromeos::KeyValueStore lsb_release_store;
+ if (lsb_release_store.Load(lsb_release_path) &&
+ lsb_release_store.GetString("CHROMEOS_RELEASE_VERSION",
+ &options.firmware_version)) {
+ } else {
+ LOG(ERROR) << "Failed to get CHROMEOS_RELEASE_VERSION from "
+ << lsb_release_path.value();
+ }
+
buffet::Daemon daemon{options, std::set<std::string>{device_whitelist.begin(),
device_whitelist.end()}};
return daemon.Run();