freeipa/ipapython
Christian Heimes 9c2c3df0ab Add better CalledProcessError and run() logging
In case of an error, ipapython.ipautil.run() now raises an exception that
contains the error message of the failed command. Before the exception
only contained the command and error code.

The command is no longer collapsed into one string. The error message
and logging output contains the actual command and arguments with intact
quoting.

Example:
CalledProcessError(Command ['/usr/bin/python3', '-c', 'import sys; sys.exit(" ".join(("error", "XXXXXXXX")))'] returned non-zero exit status 1: 'error XXXXXXXX\n')

Signed-off-by: Christian Heimes <cheimes@redhat.com>
Reviewed-By: Tibor Dudlak <tdudlak@redhat.com>
2018-02-20 13:03:01 +01:00
..
install LGTM: Name unused variable in loop 2018-01-09 07:53:28 +01:00
__init__.py Rename ipa-python directory to ipapython so it is a real python library 2009-02-09 14:35:15 -05:00
admintool.py logging: do not log into the root logger 2017-07-14 15:55:59 +02:00
certdb.py LGTM: Remove redundant assignment 2018-01-09 07:53:28 +01:00
config.py Fix pylint warnings inconsistent-return-statements 2017-12-18 11:51:14 +01:00
cookie.py logging: remove object-specific loggers 2017-07-14 15:55:59 +02:00
dn.py Fix pylint error in ipapython/dn.py 2018-01-23 17:10:16 +01:00
dnsutil.py logging: do not log into the root logger 2017-07-14 15:55:59 +02:00
dogtag.py logging: do not log into the root logger 2017-07-14 15:55:59 +02:00
errors.py Replace StandardError with Exception 2015-09-30 10:51:36 +02:00
graph.py ipapython/graph.py redundant variable fix 2017-07-14 09:16:13 +02:00
ipa_log_manager.py logging: make sure logging level is set to proper value 2017-07-26 15:57:56 +02:00
ipaldap.py Unified ldap_initialize() function 2018-02-15 18:32:17 +01:00
ipautil.py Add better CalledProcessError and run() logging 2018-02-20 13:03:01 +01:00
ipavalidate.py Change FreeIPA license to GPLv3+ 2010-12-20 17:19:53 -05:00
kerberos.py kerberos: fix sorting Principal objects 2017-08-17 09:56:01 +02:00
kernel_keyring.py Replace hard-coded paths with path constants 2018-02-08 09:32:12 +01:00
Makefile.am ipapython: fix DEFAULT_PLUGINS in version.py 2017-03-09 18:39:48 +01:00
nsslib.py Remove ipapython.nsslib as it is not used anymore 2017-03-01 09:43:41 +00:00
README Replace DNS client based on acutil with python-dns 2012-05-24 13:55:56 +02:00
session_storage.py Fix pylint warnings inconsistent-return-statements 2017-12-18 11:51:14 +01:00
setup.cfg Port all setup.py to setuptools 2016-10-20 18:43:37 +02:00
setup.py Have all the scripts run in python 3 by default 2018-02-15 18:43:12 +01:00
ssh.py Fix pylint warnings inconsistent-return-statements 2017-12-18 11:51:14 +01:00
version.py.in ipapython: fix DEFAULT_PLUGINS in version.py 2017-03-09 18:39:48 +01:00

This is a set of libraries common to IPA clients and servers though mostly
geared currently towards command-line tools.

A brief overview:

config.py - identify the IPA server domain and realm. It uses python-dns to
            try to detect this information first and will fall back to
            /etc/ipa/default.conf if that fails.

ipautil.py - helper functions

entity.py - entity is the main data type. User and Group extend this class
            (but don't add anything currently).

ipavalidate.py - basic data validation routines