mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2025-02-25 18:55:28 -06:00
DNSSEC: on uninstall, do not restore OpenDNSSEC kasp.db if backup failed
Reviewed-By: Martin Basti <mbasti@redhat.com>
This commit is contained in:
parent
9ffb388253
commit
d7f0d633d9
@ -343,6 +343,9 @@ class OpenDNSSECInstance(service.Service):
|
|||||||
'ISMASTER', None,
|
'ISMASTER', None,
|
||||||
quotes=False, separator='=')
|
quotes=False, separator='=')
|
||||||
|
|
||||||
|
restore_list = [paths.OPENDNSSEC_CONF_FILE, paths.OPENDNSSEC_KASP_FILE,
|
||||||
|
paths.SYSCONFIG_ODS, paths.OPENDNSSEC_ZONELIST_FILE]
|
||||||
|
|
||||||
if ipautil.file_exists(paths.OPENDNSSEC_KASP_DB):
|
if ipautil.file_exists(paths.OPENDNSSEC_KASP_DB):
|
||||||
|
|
||||||
# force to export data
|
# force to export data
|
||||||
@ -358,14 +361,16 @@ class OpenDNSSECInstance(service.Service):
|
|||||||
paths.IPA_KASP_DB_BACKUP)
|
paths.IPA_KASP_DB_BACKUP)
|
||||||
except IOError as e:
|
except IOError as e:
|
||||||
root_logger.error(
|
root_logger.error(
|
||||||
"Unable to backup OpenDNSSEC database: %s", e)
|
"Unable to backup OpenDNSSEC database %s, "
|
||||||
|
"restore will be skipped: %s", paths.OPENDNSSEC_KASP_DB, e)
|
||||||
else:
|
else:
|
||||||
root_logger.info("OpenDNSSEC database backed up in %s",
|
root_logger.info("OpenDNSSEC database backed up in %s",
|
||||||
paths.IPA_KASP_DB_BACKUP)
|
paths.IPA_KASP_DB_BACKUP)
|
||||||
|
# restore OpenDNSSEC's KASP DB only if backup succeeded
|
||||||
|
# removing the file without backup could totally break DNSSEC
|
||||||
|
restore_list.append(paths.OPENDNSSEC_KASP_DB)
|
||||||
|
|
||||||
for f in [paths.OPENDNSSEC_CONF_FILE, paths.OPENDNSSEC_KASP_FILE,
|
for f in restore_list:
|
||||||
paths.OPENDNSSEC_KASP_DB, paths.SYSCONFIG_ODS,
|
|
||||||
paths.OPENDNSSEC_ZONELIST_FILE]:
|
|
||||||
try:
|
try:
|
||||||
self.fstore.restore_file(f)
|
self.fstore.restore_file(f)
|
||||||
except ValueError as error:
|
except ValueError as error:
|
||||||
|
Loading…
Reference in New Issue
Block a user