review quarkus cli command / flag structure
See original GitHub issuecurrent cli outline looks like this:
Usage: quarkus [-ehV] [--verbose] [COMMAND]
-e, --errors Produce execution error messages.
-h, --help Show this help message and exit.
-V, --version Print version information and exit.
--verbose Verbose mode.
Commands:
build Build your quarkus project
clean Clean current project
create Create a new quarkus project.
create-jbang Create a new quarkus jbang project.
list List installed (default) or installable extensions.
platforms List imported (default) or all available Quarkus platforms.
add Add extension(s) to current project.
remove, rm Remove an extension from this project.
dev Execute project in live coding dev mode
create-extension Creates the base of a Quarkus extension in different layout depending of the options and environment.
they currently can be grouped in following categories:
project creation
create, create-jbang, create-extension
imo. create-jbang
should be a --jbang
flag instead of its own command.
platform/extension query/manipulation
list,add,remove/rm platforms
kinda core to what we would like the cli to do but feels a bit weird we have list/add/remove/rm for extensions but then a separate platform command.
dev time commands
build, clean, dev
force: they abstract away wether you are doing maven or gradle (in future jbang could be included here)
weakness: you cant express clean build - they always end up as two commands … missing remote dev
missing commands/ideas:
update - would check if quarkus has a newer release and update the corresponding build artifact.
validate/lint - be able to see if using out-of-platform-bounds artifacts.
Issue Analytics
- State:
- Created 2 years ago
- Comments:28 (28 by maintainers)
If too confusing, we could make the layout part of the options or different subcommands
create-extension quarkus-core/standalone/quarkiverse
or something, I am not against it.That makes sense, IMO, especially if it allows reusing some options and code.