On Tue, Oct 10, 2017 at 04:04:26PM +0200, Thomas Lamprecht wrote: > Thanks for this, useful to test the other patches. > > I am yet in the process of looking at the code changes but tested > a bit around. I noticed three problems: > > * when using the `help --verbose` command, e.g.,: > pveum help --verbose
I've already fixed this yesterday. > > All but the first `USAGE: ...` strings are intended, which wasn't > the case until now and makes it harder to find/distinguish the > different sub commands. > > * It would be really nice if the following could work: > # pveum help user add This too. > > As with just the quoted version working it can confuse users. > > * bash completion does not seem to work anymore Using zsh completion never worked for me :D I'll look into it. > > On 10/09/2017 02:35 PM, Philip Abernethy wrote: > > use a sub-command structure instead of abbreviated words, where useful. > > Keep old commands as aliases. > > --- > > In case the sub-commands patch gets applied, here is the first use case. > > > > PVE/CLI/pveum.pm | 41 ++++++++++++++++++++++++++++++----------- > > 1 file changed, 30 insertions(+), 11 deletions(-) > > > > diff --git a/PVE/CLI/pveum.pm b/PVE/CLI/pveum.pm > > index aef7089..a4e584d 100755 > > --- a/PVE/CLI/pveum.pm > > +++ b/PVE/CLI/pveum.pm > > @@ -38,6 +38,25 @@ sub read_password { > > } > > > > our $cmddef = { > > + user => { > > + add => [ 'PVE::API2::User', 'create_user', ['userid'] ], > > + modify => [ 'PVE::API2::User', 'update_user', ['userid'] ], > > + delete => [ 'PVE::API2::User', 'delete_user', ['userid'] ], > > + }, > > + group => { > > + add => [ 'PVE::API2::Group', 'create_group', ['groupid'] ], > > + modify => [ 'PVE::API2::Group', 'update_group', ['groupid'] ], > > + delete => [ 'PVE::API2::Group', 'delete_group', ['groupid'] ], > > + }, > > + role => { > > + add => [ 'PVE::API2::Role', 'create_role', ['roleid'] ], > > + modify => [ 'PVE::API2::Role', 'update_role', ['roleid'] ], > > + delete => [ 'PVE::API2::Role', 'delete_role', ['roleid'] ], > > + }, > > + acl => { > > + modify => [ 'PVE::API2::ACL', 'update_acl', ['path'], { delete => 0 }], > > + delete => [ 'PVE::API2::ACL', 'update_acl', ['path'], { delete => 1 }], > > + }, > > ticket => [ 'PVE::API2::AccessControl', 'create_ticket', ['username'], > > undef, > > sub { > > my ($res) = @_; > > @@ -46,20 +65,20 @@ our $cmddef = { > > > > passwd => [ 'PVE::API2::AccessControl', 'change_passsword', ['userid'] > > ], > > > > - useradd => [ 'PVE::API2::User', 'create_user', ['userid'] ], > > - usermod => [ 'PVE::API2::User', 'update_user', ['userid'] ], > > - userdel => [ 'PVE::API2::User', 'delete_user', ['userid'] ], > > + useradd => { alias => 'user add' }, > > + usermod => { alias => 'user modify' }, > > + userdel => { alias => 'user delete' }, > > > > - groupadd => [ 'PVE::API2::Group', 'create_group', ['groupid'] ], > > - groupmod => [ 'PVE::API2::Group', 'update_group', ['groupid'] ], > > - groupdel => [ 'PVE::API2::Group', 'delete_group', ['groupid'] ], > > + groupadd => { alias => 'group add' }, > > + groupmod => { alias => 'group modify' }, > > + groupdel => { alias => 'group delete' }, > > > > - roleadd => [ 'PVE::API2::Role', 'create_role', ['roleid'] ], > > - rolemod => [ 'PVE::API2::Role', 'update_role', ['roleid'] ], > > - roledel => [ 'PVE::API2::Role', 'delete_role', ['roleid'] ], > > + roleadd => { alias => 'role add' }, > > + rolemod => { alias => 'role modify' }, > > + roledel => { alias => 'role delete' }, > > > > - aclmod => [ 'PVE::API2::ACL', 'update_acl', ['path'], { delete => 0 }], > > - acldel => [ 'PVE::API2::ACL', 'update_acl', ['path'], { delete => 1 }], > > + aclmod => { alias => 'acl modify' }, > > + acldel => { alias => 'acl delete' }, > > }; > > > > 1; > > > _______________________________________________ pve-devel mailing list pve-devel@pve.proxmox.com https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel