@@ -24,7 +24,7 @@ bool EngineListCmd::Exec(const std::string& host, int port) {
2424 }
2525
2626 tabulate::Table table;
27- table.add_row ({" #" , " Name" , " Version" , " Variant" , " Status" });
27+ table.add_row ({" #" , " Name" , " Version" , " Variant" , " Status" , " Size " });
2828
2929 auto url = url_parser::Url{
3030 .protocol = " http" ,
@@ -69,6 +69,24 @@ bool EngineListCmd::Exec(const std::string& host, int port) {
6969 selected_variant_result.value ()[" version" ].asString ());
7070 }
7171
72+ std::unordered_map<std::string, std::string> variantSizeMapping;
73+ if (variant_pair.has_value ()) {
74+ auto version_releases_url = url_parser::Url{
75+ .protocol = " http" ,
76+ .host = host + " :" + std::to_string (port),
77+ .pathParams = {" v1" , " engines" , kLlamaEngine , " releases" ,
78+ variant_pair->second },
79+ };
80+
81+ auto version_releases_json =
82+ curl_utils::SimpleGetJson (version_releases_url.ToFullPath ());
83+
84+ for (auto releaseData : version_releases_json.value ()) {
85+ variantSizeMapping[releaseData[" name" ].asString ()] =
86+ releaseData[" size" ].asString ();
87+ }
88+ }
89+
7290 std::vector<EngineVariantResponse> output;
7391 for (const auto & [key, value] : engine_map) {
7492 output.insert (output.end (), value.begin (), value.end ());
@@ -79,12 +97,12 @@ bool EngineListCmd::Exec(const std::string& host, int port) {
7997 count += 1 ;
8098 if (variant_pair.has_value () && v.name == variant_pair->first &&
8199 v.version == variant_pair->second ) {
82- table.add_row (
83- { std::to_string (count), v. engine , v. version , v. name , " Default" });
100+ table.add_row ({ std::to_string (count), v. engine , v. version , v. name ,
101+ " Default" , variantSizeMapping[v. name ] });
84102 continue ;
85103 }
86- table.add_row (
87- { std::to_string (count), v. engine , v. version , v. name , " Installed" });
104+ table.add_row ({ std::to_string (count), v. engine , v. version , v. name ,
105+ " Installed" , variantSizeMapping[v. name ] });
88106 }
89107
90108 std::cout << table << std::endl;
0 commit comments