Set explicit confdir option for global contexts

Some API contexts are used to modify global state (e.g. files in /etc
and /var). These contexts do not support confdir overrides. Initialize
the API with an explicit confdir argument to paths.ETC_IPA.

The special contexts are:

* backup
* cli_installer
* installer
* ipctl
* renew
* restore
* server
* updates

The patch also corrects the context of the ipa-httpd-kdcproxy script to
'server'.

https://fedorahosted.org/freeipa/ticket/6389

Signed-off-by: Christian Heimes <cheimes@redhat.com>
Reviewed-By: Jan Cholasta <jcholast@redhat.com>
This commit is contained in:
Christian Heimes
2016-11-28 16:24:33 +01:00
committed by Jan Cholasta
parent 98f0077360
commit 1e6a204b43
32 changed files with 86 additions and 42 deletions

View File

@@ -122,7 +122,10 @@ def ldap2replica_zone_keys_sync(log, ldapkeydb, localhsm):
# IPA framework initialization
ipalib.api.bootstrap(in_server=True, log=None) # no logging to file
ipalib.api.bootstrap(
context='dns', confdir=paths.ETC_IPA,
in_server=True, log=None, # no logging to file
)
ipalib.api.finalize()
standard_logging_setup(verbose=True, debug = True) # debug=ipalib.api.env.debug)
log = root_logger

View File

@@ -19,7 +19,10 @@ from ipaplatform.paths import paths
from ipaserver.dnssec.keysyncer import KeySyncer
# IPA framework initialization
api.bootstrap(in_server=True, log=None) # no logging to file
api.bootstrap(
context='dns', confdir=paths.ETC_IPA,
in_server=True, log=None, # no logging to file
)
api.finalize()
standard_logging_setup(verbose=True, debug=api.env.debug)
log = root_logger

View File

@@ -614,7 +614,10 @@ elif len(sys.argv) == 2:
log.addHandler(console)
# IPA framework initialization
ipalib.api.bootstrap(in_server=True, log=None) # no logging to file
ipalib.api.bootstrap(
context='dns', confdir=paths.ETC_IPA,
in_server=True, log=None, # no logging to file
)
ipalib.api.finalize()
# Kerberos initialization