From 318a05f1564e95ae3516d7cfdb6cd7c03a87b87d Mon Sep 17 00:00:00 2001 From: Jan Cholasta Date: Thu, 20 Nov 2014 13:57:46 +0000 Subject: [PATCH] Stop tracking certificates before restoring them in ipa-restore https://fedorahosted.org/freeipa/ticket/4727 Reviewed-By: Petr Vobornik --- ipaserver/install/ipa_restore.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/ipaserver/install/ipa_restore.py b/ipaserver/install/ipa_restore.py index f290bae4dc6455bb22c4e726e72efe98205d970e..9cb978a516f4f85307735b7428f6053461061022 100644 --- a/ipaserver/install/ipa_restore.py +++ b/ipaserver/install/ipa_restore.py @@ -26,7 +26,7 @@ import pwd from ConfigParser import SafeConfigParser from ipalib import api, errors -from ipapython import version, ipautil, certdb +from ipapython import version, ipautil, certdb, dogtag from ipapython.ipautil import run, user_input from ipapython import admintool from ipapython.dn import DN @@ -36,7 +36,7 @@ from ipaserver.install.cainstance import PKI_USER, create_ca_user from ipaserver.install.replication import (wait_for_task, ReplicationManager, get_cs_replication_manager) from ipaserver.install import installutils -from ipaserver.install import httpinstance +from ipaserver.install import dsinstance, httpinstance, cainstance from ipapython import ipaldap import ipapython.errors from ipaplatform.tasks import tasks @@ -676,6 +676,12 @@ class Restore(admintool.AdminTool): self.log.error('%s', e) def cert_restore_prepare(self): + cainstance.stop_tracking_certificates( + dogtag.configured_constants()) + httpinstance.HTTPInstance().stop_tracking_certificates() + dsinstance.DsInstance().stop_tracking_certificates( + realm_to_serverid(api.env.realm)) + for basename in ('cert8.db', 'key3.db', 'secmod.db', 'pwdfile.txt'): filename = os.path.join(paths.IPA_NSSDB_DIR, basename) try: @@ -705,3 +711,5 @@ class Restore(admintool.AdminTool): (nickname, paths.IPA_NSSDB_DIR, e)) tasks.reload_systemwide_ca_store() + + services.knownservices.certmonger.restart() -- 2.1.0