wunderio / radi-cli

CLI interface for the Radi-API
1 stars 2 forks source link

CLI command results are difficult to interpret #4

Open james-nesbitt opened 7 years ago

james-nesbitt commented 7 years ago

Many commands run return a finishing message that is difficult to interpret, especially when they fail.

an example is if local orchestration fails:

errors=[Authorization failed.  You are not permitted to execute the requested operation: orchestrate.up] id=orchestrate.up success=false
Authorization failed.  You are not permitted to execute the requested operation: orchestrate.up
james-nesbitt commented 7 years ago

This is true. Currently the CLI is a little too verbose, even without --debug.

That particular example line is very useful, because it can be parsed by a machine. This error message can be broken down into its parts:

errors=[Authorization failed.  You are not permitted to execute the requested operation: orchestrate.up]
id=orchestrate.up 
success=false

Which indicate a success boolean, a machine id for the operation, and an array of errors.

The last line is the cli actually output the error to the screen (which repeats the last of error stack)

Authorization failed.  You are not permitted to execute the requested operation: orchestrate.up

We could easily reduce this verbosity, but it makes debugging the CLI easier at the moment.