----- Original Message -----
From: "Dan Callaghan" <dcallagh(a)redhat.com>
To: "Amit Saha" <asaha(a)redhat.com>
Cc: "Beaker development" <beaker-devel(a)lists.fedorahosted.org>
Sent: Wednesday, September 25, 2013 3:42:53 PM
Subject: Re: [Beaker-devel] New sub-command to list access policy for a system
Excerpts from Amit Saha's message of 2013-09-25 15:24:30 +1000:
> > > I like it, my only suggestion would be to accept a --format option
> > > like
> > > the other commands. It would have --format=json for machine parsing,
> > > and
> > > a tabular/linear format that is friendlier for humans and grepping.
> > > Perhaps --format=text which spits out just a list of rules, one per
> > > line:
> > >
> > > Group beakerdevs has permission edit_policy
> > > User asaha has permission reserve
> > > Everybody has permission control_system
>
>
> Considering that the user/group names can and will most likely vary,
> I used PrettyTable [1] to print the rules (when invoked with
> --format=list).
> Example:
>
> +------+-------+--------+----------------+
> | Rule | User | Group | Permission |
> +------+-------+--------+----------------+
> | 1 | user7 | None | edit_system |
> | 2 | user8 | None | control_system |
> | 3 | None | group9 | control_system |
> +------+-------+--------+----------------+
>
> The patch is here [2].
PrettyTable sounds nifty, I'd never heard of it before.
I'm not sure a table is a good way to represent the rules though. A rule
applies either to a particular user, a particular group, or everybody.
The table view doesn't really make that easy to see (especially for the
"everybody" case) which is why I had suggested just the plain listing of
rules.
I am going to push this a little further :-).
I made some changes and now the output is:
+------+----------------+--------+---------+-----------+
| Rule | Permission | User | Group | Everybody |
+------+----------------+--------+---------+-----------+
| 1 | edit_system | user10 | X | X |
| 2 | control_system | user11 | X | X |
| 3 | control_system | X | group12 | X |
+------+----------------+--------+---------+-----------+
How do you find it?
--
Amit Saha <
http://echorand.me>
Infrastructure Engineering and Development
Red Hat, Inc.