blob: 143125d231612cbb08a857b1a0fa39695abcd869 [file] [log] [blame]
#include "usb_manager.hpp"
#include <CLI/CLI.hpp>
#include <phosphor-logging/lg2.hpp>
int main(int argc, char** argv)
{
namespace fs = std::filesystem;
std::string fileName{};
CLI::App app{"Update the firmware of OpenBMC via USB app"};
app.add_option("-f,--fileName", fileName,
"Get the name of the USB mount folder, eg: sda1, sdb1");
CLI11_PARSE(app, argc, argv);
if (fileName.empty())
{
lg2::error("The file name passed in is empty.");
return -1;
}
fs::path usbPath = fs::path{"/run/media/usb"} / fileName;
phosphor::usb::USBManager manager(usbPath);
if (!manager.run())
{
lg2::error("Failed to FW Update via USB, usbPath:{USBPATH}", "USBPATH",
usbPath);
return -1;
}
return 0;
}