[Freeipa-devel] [RFE] Logging and output in install & management commands

Petr Viktorin pviktori at redhat.com
Mon Dec 3 17:29:58 UTC 2012


On 12/03/2012 05:17 PM, Dmitri Pal wrote:
> On 12/03/2012 11:03 AM, Rob Crittenden wrote:
>> Petr Viktorin wrote:
>>> Hello,
>>> Please take a while to comment on this proposal before I post it on the
>>> wiki.
>>> This is about user-visible changes I plan to make for #2652 (Framework
>>> for admin/install tool) -- consistent behavior will (in addition to not
>>> confusing users) enable the framework to do common work without too much
>>> special-casing.
>>>
>>>
[...]
>>
>> Can you list exactly which commands you're targetting?

All of them, `ls /usr/sbin/ipa*`.
The ones written in C should just get the common options, framework 
stuff doesn't apply to them.

>> At least some (ipa-replica-manage, ipa-replica-prepare) don't have
>> logging but may still benefit from this structure. Did you have those
>> in mind as well?

Yes. They do output, they have --quiet and --verbose options. They 
should use the logger even if the log doesn't happen to go to a file.
And once they do, I won't special-case them to lose --log-file.

>> It may be time to rewrite ipa-upgradeconfig too. It started as a
>> one-off and has grown considerably over the past year. It would
>> benefit from this as well (though other enhancements would be beyond
>> this scope).

The scope is https://fedorahosted.org/freeipa/ticket/2652: if I see 
copy-pasted code, or code that reimplements something we already have 
better tools for, I put it in a shared module.
This RFE just describes the outward-facing changes.

> Would it affect ipa-server-install and ipa-client-install too?
> I agree with Rob explicitly listing the commands would be helpful.
> IMO creating a table of existing commands would be very beneficial.

> I see it with the following columns:
>
> Command     Version       Help             Quiet         Verbose
> Log File     Release
> xyz         added         was there        added         was there
> added        Pilsner
> abc         was there    was there        was there     was there
> added        Pilsner
> klm         added         was there        added         was there
> added        Other beer
> ...
>
> This (or similar) would allow QE to easily see what changed and when and
> how to adjust test cases.
> For doc it will also provide information needed.
>

Yes, I can provide such a table for each release.
It's long-term, low-priority effort, so it will take some time to get 
all of them done.


The current state:

All commands (except ipa-getcert) have --help. None have --log-file.

                         --version -q -v -d
ipa-adtrust-install             Y  -  -  Y
ipa-ca-install                  Y  -  -  Y
ipa-client-automount            -  -  -  *
ipa-client-install              Y  -  -  Y
ipa-compat-manage               -  -  -  Y
ipa-compliance                  -  -  -  *
ipa-csreplica-manage            Y  -  Y  -
ipa-dns-install                 Y  -  -  Y
ipa-getkeytab                   -  Y  -  -
ipa-join                        -  Y  -  Y
ipa-ldap-updater                Y  -  -  Y
ipa-managed-entries             -  -  -  Y
ipa-nis-manage                  -  -  -  Y
ipa-replica-conncheck           Y  Y  -  Y
ipa-replica-install             Y  -  -  Y
ipa-replica-manage              Y  -  Y  -
ipa-replica-prepare             Y  -  -  *
ipa-rmkeytab                    -  -  -  Y
ipa-server-certinstall          -  -  -  **
ipa-server-install              Y  -  -  Y
ipa-upgradeconfig               Y  Y  -  Y
ipactl                          -  -  -  Y

* long variant (--debug) only
** -d means something else


Note that currently --debug is used much more than --verbose. There are 
two reasons for favoring --verbose: it complements --quiet, and some 
commands already uses -d for something else.


-- 
Petr³




More information about the Freeipa-devel mailing list