Seeking input on the redesign of the command-line interface
See original GitHub issueIssue Description
The current CLI just offers command-line parameters for the operation to be executed, for instance, -import
, -export
or
-kmlExport
. All further settings such as database connection details or export filters must be provided in an external config file.
We want to redesign the CLI. The main goal is to provide more command-line parameters to be able to trigger default operations without the need for an additional config file. This should help to simplify the use of the CLI. Another goal is to allow plugins to programmatically extend the CLI with new operations.
Some initial thoughts:
- each operation is mapped to a separate command with its own parameters
- some global parameters are available for all commands, such as database connection details or logging settings
- a plugin can register its own additional command
For example, invoking a CityGML export using a bbox filter could look like this:
> impexp export --db-host=localhost --db-name=citydb --db-user=user --bbox=1,2,3,4 my_citygml_file.gml
Well, it’s obvious that we cannot map every option from the Importer/Exporter preferences to a command-line parameter. So, it must still be possible to provide a config file for these settings. But it should be optional and if omitted, default values should be chosen instead.
Which parameters would you like to see for the CLI? For example, is a --bbox
parameter for a CityGML export like in the above example sufficient or do you also need more parameters to specify the bbox mode (overlap, inside), the CRS used for the bbox, or even a tiling based on the provided bbox?
Issue Analytics
- State:
- Created 3 years ago
- Reactions:1
- Comments:33 (33 by maintainers)
Thanks and kudos to all involved in the discussion and development of the new command-line interface. It has been merged to master in the meantime (#147, #151) and will be available with the next release.
Yes I thought the same,
[altitude_options]
and[balloon_options]
are currently not as prioritized. Wanted to not include them in my post but for the sake of completeness, I just went ahead and post them. 😉I agree with waiting for the review first. Hopefully I can the find the time in the next days to review it also.