Rewrite command line interface
This MR:
- implements proper sub commands (fixes #216 (closed))
- adds full bash completion (fixes #164 (closed))
- let command classes handle their own specific command line arguments
- let all builders clean their install dir before filling it (until now some did, others didn't)
- don't clean by default, but allow to set
always_clean
in clickable.json,--clean
as cli argument orCLICKABLE_ALWAYS_CLEAN
as env var - add
chain
command that is called when no command is specified (clickable
) and can be used to chain commands (e.g.clickable chain install launch logs
) - add command line arguments to
create
command (fixes #236 (closed)) - removes
clean-build
command (runclickable build --clean
instead or set env var or setting in clickable.json) - removes deprecated stuff (some params from clickable.jsons, old placeholder syntax etc.)
-
setup
command checks whether docker setup is necessary before repeating it -
setup
command sets up bash completion
Edited by Jonatan Hatakeyama Zeidler