mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-06 18:04:03 +00:00
lib: add 'script <type> foo' test command
Signed-off-by: Quentin Young <qlyoung@nvidia.com>
This commit is contained in:
parent
5f98c815b6
commit
3d19ffc5ef
@ -49,6 +49,8 @@
|
||||
#include "northbound_cli.h"
|
||||
#include "network.h"
|
||||
|
||||
#include "frrscript.h"
|
||||
|
||||
DEFINE_MTYPE_STATIC(LIB, HOST, "Host config")
|
||||
DEFINE_MTYPE(LIB, COMPLETION, "Completion item")
|
||||
|
||||
@ -2286,10 +2288,18 @@ DEFUN(script,
|
||||
"Test command - execute a script\n"
|
||||
"Script name (same as filename in /etc/frr/scripts/\n")
|
||||
{
|
||||
struct frrscript *fs = frrscript_load(argv[2]->arg, NULL);
|
||||
int ret = frrscript_call(fs, 42);
|
||||
struct prefix p;
|
||||
str2prefix("1.2.3.4/24", &p);
|
||||
|
||||
struct frrscript *fs = frrscript_load(argv[1]->arg, NULL);
|
||||
|
||||
if (fs == NULL) {
|
||||
vty_out(vty, "Script '/etc/frr/scripts/%s.lua' not found\n",
|
||||
argv[1]->arg);
|
||||
} else {
|
||||
int ret = frrscript_call(fs, FRRSCRIPT_ARGS("cool", "prefix", &p), FRRSCRIPT_RESULTS());
|
||||
vty_out(vty, "Script result: %d\n", ret);
|
||||
}
|
||||
|
||||
return CMD_SUCCESS;
|
||||
}
|
||||
@ -2389,6 +2399,10 @@ void cmd_init(int terminal)
|
||||
install_element(VIEW_NODE, &echo_cmd);
|
||||
install_element(VIEW_NODE, &autocomplete_cmd);
|
||||
install_element(VIEW_NODE, &find_cmd);
|
||||
#ifdef DEV_BUILD
|
||||
install_element(VIEW_NODE, &script_cmd);
|
||||
#endif
|
||||
|
||||
|
||||
install_element(ENABLE_NODE, &config_end_cmd);
|
||||
install_element(ENABLE_NODE, &config_disable_cmd);
|
||||
|
Loading…
Reference in New Issue
Block a user