[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [DISCUSS] CloudMonkey 6.0.0-alpha (about six years after initial version in 2012)


+1. It has been a great tool for years.  Looking forward to the golang
version.

On Apr 10, 2018 7:59 AM, "Rohit Yadav" <rohit.yadav@xxxxxxxxxxxxx> wrote:

All,


Few months ago, I started porting the current code to be compatible with
both Python2 and Python3 to make it run with both Python2 (for older
systems such as CentOS6 etc) and Python3 (for newer platforms). The work
was not a success, another problem was that cloudmonkey was not easy to
install and required several dependencies that would certainly fail on
older systems with Python 2.6.x.


Considering all things, I started working on an experimental golang port
[2] and happy to announce that the initial alpha version shows a lot of
promise and is 5-20x faster than the python based cli [1]. The compiled
binary runs on several targets, including windows [1].


I cannot commit to a timeline/release date yet but the aim of this thread
is to discuss and propose the simplification of the CLI which may require
removal of some features and some breaking changes may be introduced:


- Make json the default output format

- Remove coloured output

- Remove unpopular, least user output formats? xml, default (line-separate
key=value), table?

- Remove `set` options: color, expires, (custom) prompt

- Remove `paramcompletion` option, this will be true/enabled by default

- Remove signature version and expires (I'm not sure why this is needed or
used)

- Remove history_file, cache_file, log_file options, use the default paths
in folder at (user's  home directory)/.cloudmonkey.

- Remove shell based execution from interactive interpreter mode (using !
or shell keywords)

- Remove support for CloudStack older than 4.5, i.e. it won't be tested
against older cloudstacks.

- Remove a default API cache with the client, for a fresh env without any
~/.cloudmonkey/cache; users can run `sync` command against a management
server.

- Interactive API parameter completion in CLI mode: the current API
parameter completion requires the user to manually copy/paste the uuids, or
autocomplete by typing parts of the uuids/option.

- Improve how maps are passed.

- Good to have: bash/zsh completion.


Please share your thoughts, and objections (especially if you're using the
proposed features to be removed in version 6.x).


[1] https://twitter.com/rhtyd/status/983448788059770882

[2] https://github.com/rhtyd/cmk


- Rohit

<https://cloudstack.apache.org>



rohit.yadav@xxxxxxxxxxxxx
www.shapeblue.com
53 Chandos Place, Covent Garden, London  WC2N 4HSUK
@shapeblue