简体   繁体   English

带有gulp的ArangoDB foxx-manager不知道命令--server.database

[英]ArangoDB foxx-manager with gulp doesn't know command --server.database

I want to run setup.js script every time i change it. 我想每次更改它时都运行setup.js脚本。 I wrote following gulp script: 我写了以下gulp脚本:

gulp.task('db_server_setup', function(){
    gulp.src(paths.db_server_setup)
        .pipe(gulp.dest(paths.db_dist))
        .pipe(callback(() => {
            process.execFile('C:/Program Files/ArangoDB 2.8/bin/foxx-manager.exe', ['--server.database "my_db_name" run "/db" setup'], {stdio: 'inherit'}, exec_output);
        }));
});

But it results in: 但是它导致:

{ [Error: Command failed: C:/Program Files/ArangoDB 2.8/bin/foxx-manager.exe --server.database "my_db_name" run "/db" setup C:/Program Files/ArangoDB 2.8/bin/foxx-manager.exe: unrecognized option '--server.database "my_db_name" run "/db" setup' Did you mean one of these? {[[错误:命令失败:C:/ Program Files / ArangoDB 2.8 / bin / foxx-manager.exe --server.database“ my_db_name”运行“ / db”安装程序C:/ Program Files / ArangoDB 2.8 / bin / foxx- manager.exe:无法识别的选项'--server.database“ my_db_name”运行“ / db”安装程序'您是说其中之一吗? --help --quiet 2016-02-16T13:42:17Z [1564] FATAL illegal option ] killed: false, code: 1, signal: null, cmd: 'C:/Program Files/ArangoDB 2.8/bin/foxx-manager.exe --server.database "my_db_name" run "/db" setup' } C:/Program Files/ArangoDB 2.8/bin/foxx-manager.exe: unrecognized option '--server.database "my_db_name" run "/db" setup' --help --quiet 2016-02-16T13:42:17Z [1564]致命非法选项]杀:假,代码:1,信号:空,cmd:'C:/ Program Files / ArangoDB 2.8 / bin / foxx- manager.exe --server.database“ my_db_name”运行“ / db”安装程序“} C:/ Program Files / ArangoDB 2.8 / bin / foxx-manager.exe:无法识别的选项'--server.database” my_db_name“运行” / db”设置

Did you mean one of these? 您是这些意思之一吗? --help --quiet -帮助-安静

2016-02-16T13:42:17Z [1564] FATAL illegal option 2016-02-16T13:42:17Z [1564]致命非法选项

When I exec "C:/Program Files/ArangoDB 2.8/bin/foxx-manager.exe" --server.database "organize_me" run "/db" setup it runs succesfully 当我执行"C:/Program Files/ArangoDB 2.8/bin/foxx-manager.exe" --server.database "organize_me" run "/db" setup它成功运行

{"code": 200} {“代码”:200}

How can i achieve to rerun setup script with gulp everytime I change it? 每当我更改它时,如何实现用gulp重新运行安装脚本? Thanks 谢谢

This looks more like a Node problem than an ArangoDB problem. 这看起来更像是一个节点问题,而不是ArangoDB问题。

child_process.execFile takes the name of an executable as well as an arguments array. child_process.execFile采用可执行文件的名称以及参数数组。 Your arguments array currently looks like this: 您的arguments数组当前如下所示:

['--server.database "my_db_name" run "/db" setup']

As far as I can tell that is the equivalent of passing the following argument on the command line: 据我所知,这等效于在命令行中传递以下参数:

"--server.database \"my_db_name\" run \"/db\" setup"

So what you actually want is probably this: 因此,您真正想要的可能是:

['--server.database', 'my_db_name', 'run', '/db', 'setup']

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM