Hi Maxim. Thank you for your comments.
- Yes, the non-interactive mode is supported for all commands except "connect", "disconnect", "status". - Benefits of using REST as a communication realization between CLI and Ignite 3 cluster: 1) This approach seems to be the de-facto standard for the client-server communication 2) CLI can connect to any cluster it has a network connection 3) REST component already implemented in Ignite 3 4) REST client can be generated from Open API specification (see IEP-87 <https://cwiki.apache.org/confluence/display/IGNITE/IEP-87%3A+Open+API+support+for+REST>). 5) REST is languege-agnostic, so web ui or third party software can consume an API spec provided by the server. - Drawbacks of using REST: additional client and server libraries have to be included to the CLI and Ignite distributions. As for alternatives, I would mention that the custom sdk could be an option. But it requires a lot of afford to design and develop and can be used only by Java clients. - Yes, the command autocomplition provided out of the box. I've added an information about this. I'll add a brief overview of popular CLIs to the IEP. > On 13 May 2022, at 15:05, Maxim Muzafarov <mmu...@apache.org> wrote: > > Hello Aleksanrd, > > > The description looks good. A few questions below: > > - Can the CLI also be run in non-interactive mode to support scripts > execution (like the WildFly it does [1])? Will it be possible though > the REST it used? > - What is the benefits and drawbacks of using REST for this tool? Are > there any alternative for that? > - Would we have command autocomplition out of the box? It doesn't > mentioned, but seems to be a very user friendly ability. > > Can you provide a briefly comparison for such a CLI tools for other > databases and/or systems, application servers? It seems the developing > CLI tool is a common task, so I think at least we should mention about > the common development approach in modern systems for such tools. For > instance, I'm very excited with the wildfly-cli tool usage, however, > may be it has some drawbacks too. > > [1] https://kb.novaordis.com/index.php/WildFly_CLI_Scripting > > On Thu, 12 May 2022 at 23:43, Aleksandr Pakhomov <apk...@gmail.com> wrote: >> >> Hello, Igniters. >> >> I’d like to start a discussion about Ignite 3 Command Line Tool [1]. The >> main value is to develop a user-friendly command-line tool with advanced >> completions and SQL REPL mode. >> >> The set of commands and parameters can be discussed. Questions and comments >> are welcomed. >> >> [1] https://cwiki.apache.org/confluence/display/IGNITE/IEP-88%3A+CLI+Tool >> <https://cwiki.apache.org/confluence/display/IGNITE/IEP-88:+CLI+Tool>