Skip to content
This repository was archived by the owner on Jul 4, 2025. It is now read-only.

Commit e0ddb8d

Browse files
authored
Merge pull request #1171 from janhq/j/update-install-uninstall-engine
fix: update engine install/uninstall CLI commands
2 parents d31c7a9 + c1fc132 commit e0ddb8d

File tree

2 files changed

+26
-18
lines changed

2 files changed

+26
-18
lines changed

engine/controllers/command_line_parser.cc

Lines changed: 22 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
#include "config/yaml_config.h"
1717
#include "httplib.h"
1818
#include "services/engine_service.h"
19-
#include "utils/cortex_utils.h"
2019
#include "utils/file_manager_utils.h"
2120
#include "utils/logging_utils.h"
2221

@@ -135,9 +134,19 @@ bool CommandLineParser::SetupCommand(int argc, char** argv) {
135134
command.Exec();
136135
});
137136

137+
auto install_cmd = engines_cmd->add_subcommand("install", "Install engine");
138+
install_cmd->callback([] { CLI_LOG("Engine name can't be empty!"); });
138139
for (auto& engine : engine_service_.kSupportEngines) {
139140
std::string engine_name{engine};
140-
EngineManagement(engines_cmd, engine_name, version);
141+
EngineInstall(install_cmd, engine_name, version);
142+
}
143+
144+
auto uninstall_cmd =
145+
engines_cmd->add_subcommand("uninstall", "Uninstall engine");
146+
uninstall_cmd->callback([] { CLI_LOG("Engine name can't be empty!"); });
147+
for (auto& engine : engine_service_.kSupportEngines) {
148+
std::string engine_name{engine};
149+
EngineUninstall(uninstall_cmd, engine_name);
141150
}
142151

143152
EngineGet(engines_cmd);
@@ -227,25 +236,22 @@ bool CommandLineParser::SetupCommand(int argc, char** argv) {
227236
return true;
228237
}
229238

230-
void CommandLineParser::EngineManagement(CLI::App* parent,
231-
const std::string& engine_name,
232-
std::string& version) {
233-
auto engine_cmd =
234-
parent->add_subcommand(engine_name, "Manage " + engine_name + " engine");
239+
void CommandLineParser::EngineInstall(CLI::App* parent,
240+
const std::string& engine_name,
241+
std::string& version) {
242+
auto install_engine_cmd = parent->add_subcommand(engine_name, "");
235243

236-
auto install_cmd = engine_cmd->add_subcommand(
237-
"install", "Install " + engine_name + " engine");
238-
install_cmd->add_option("-v, --version", version,
239-
"Engine version. Default will be latest");
240-
241-
install_cmd->callback([engine_name, &version] {
244+
install_engine_cmd->callback([&] {
242245
commands::EngineInitCmd eic(engine_name, version);
243246
eic.Exec();
244247
});
248+
}
249+
250+
void CommandLineParser::EngineUninstall(CLI::App* parent,
251+
const std::string& engine_name) {
252+
auto uninstall_engine_cmd = parent->add_subcommand(engine_name, "");
245253

246-
auto uninstall_desc{"Uninstall " + engine_name + " engine"};
247-
auto uninstall_cmd = engine_cmd->add_subcommand("uninstall", uninstall_desc);
248-
uninstall_cmd->callback([engine_name] {
254+
uninstall_engine_cmd->callback([&] {
249255
commands::EngineUninstallCmd cmd(engine_name);
250256
cmd.Exec();
251257
});

engine/controllers/command_line_parser.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,10 @@ class CommandLineParser {
99
bool SetupCommand(int argc, char** argv);
1010

1111
private:
12-
void EngineManagement(CLI::App* parent, const std::string& engine_name,
13-
std::string& version);
12+
void EngineInstall(CLI::App* parent, const std::string& engine_name,
13+
std::string& version);
14+
15+
void EngineUninstall(CLI::App* parent, const std::string& engine_name);
1416

1517
void EngineGet(CLI::App* parent);
1618

0 commit comments

Comments
 (0)