summaryrefslogtreecommitdiffstats
path: root/ipaserver
diff options
context:
space:
mode:
authorMartin Basti <mbasti@redhat.com>2015-03-06 17:44:47 +0100
committerTomas Babej <tbabej@redhat.com>2015-03-19 12:40:24 +0100
commitc95c4849ae1ecc90ac926b8b7d61e153b42e7699 (patch)
treea61d964ebdc10ec41648af56d80dd87b733e92c2 /ipaserver
parenta42fcfc18bb94fbf97ec310dbb920e045b0473a5 (diff)
downloadfreeipa-c95c4849ae1ecc90ac926b8b7d61e153b42e7699.tar.gz
freeipa-c95c4849ae1ecc90ac926b8b7d61e153b42e7699.tar.xz
freeipa-c95c4849ae1ecc90ac926b8b7d61e153b42e7699.zip
Server Upgrade: respect --test option in plugins
Several plugins do the LDAP data modification directly. In test mode these plugis should not be executed. https://fedorahosted.org/freeipa/ticket/3448 Reviewed-By: David Kupka <dkupka@redhat.com>
Diffstat (limited to 'ipaserver')
-rw-r--r--ipaserver/install/plugins/dns.py9
-rw-r--r--ipaserver/install/plugins/fix_replica_agreements.py4
-rw-r--r--ipaserver/install/plugins/update_idranges.py7
-rw-r--r--ipaserver/install/plugins/update_managed_permissions.py4
-rw-r--r--ipaserver/install/plugins/update_pacs.py4
-rw-r--r--ipaserver/install/plugins/update_referint.py3
-rw-r--r--ipaserver/install/plugins/update_services.py4
7 files changed, 35 insertions, 0 deletions
diff --git a/ipaserver/install/plugins/dns.py b/ipaserver/install/plugins/dns.py
index f562978bc..2e33982e7 100644
--- a/ipaserver/install/plugins/dns.py
+++ b/ipaserver/install/plugins/dns.py
@@ -60,6 +60,10 @@ class update_dnszones(PostUpdate):
order=MIDDLE
def execute(self, **options):
+ if not options.get('live_run'):
+ self.log.info("Test mode: skipping 'update_dnszones'")
+ return False, False, ()
+
ldap = self.obj.backend
if not dns_container_exists(ldap):
return (False, False, [])
@@ -159,6 +163,11 @@ class update_master_to_dnsforwardzones(PostUpdate):
backup_path = u'%s%s' % (backup_dir, backup_filename)
def execute(self, **options):
+ if not options.get('live_run'):
+ self.log.info("Test mode: skipping "
+ "'update_master_to_dnsforwardzones'")
+ return False, False, ()
+
ldap = self.obj.backend
# check LDAP if forwardzones already uses new semantics
dns_container_dn = DN(api.env.container_dns, api.env.basedn)
diff --git a/ipaserver/install/plugins/fix_replica_agreements.py b/ipaserver/install/plugins/fix_replica_agreements.py
index a5ff4819f..597a13314 100644
--- a/ipaserver/install/plugins/fix_replica_agreements.py
+++ b/ipaserver/install/plugins/fix_replica_agreements.py
@@ -38,6 +38,10 @@ class update_replica_attribute_lists(PreUpdate):
order = MIDDLE
def execute(self, **options):
+ if not options.get('live_run'):
+ self.log.info("Test mode: skipping "
+ "'update_replica_attribute_lists'")
+ return False, False, ()
# We need an IPAdmin connection to the backend
self.log.debug("Start replication agreement exclude list update task")
conn = ipaldap.IPAdmin(api.env.host, ldapi=True, realm=api.env.realm)
diff --git a/ipaserver/install/plugins/update_idranges.py b/ipaserver/install/plugins/update_idranges.py
index 1aa5fa763..cc462ef12 100644
--- a/ipaserver/install/plugins/update_idranges.py
+++ b/ipaserver/install/plugins/update_idranges.py
@@ -33,6 +33,9 @@ class update_idrange_type(PostUpdate):
order = MIDDLE
def execute(self, **options):
+ if not options.get('live_run'):
+ self.log.info("Test mode: skipping 'update_idrange_type'")
+ return False, False, ()
ldap = self.obj.backend
base_dn = DN(api.env.container_ranges, api.env.basedn)
@@ -121,6 +124,10 @@ class update_idrange_baserid(PostUpdate):
order = LAST
def execute(self, **options):
+ if not options.get('live_run'):
+ self.log.info("Test mode: skipping 'update_idrange_baserid'")
+ return False, False, ()
+
ldap = self.obj.backend
base_dn = DN(api.env.container_ranges, api.env.basedn)
diff --git a/ipaserver/install/plugins/update_managed_permissions.py b/ipaserver/install/plugins/update_managed_permissions.py
index 430a2919a..55e106854 100644
--- a/ipaserver/install/plugins/update_managed_permissions.py
+++ b/ipaserver/install/plugins/update_managed_permissions.py
@@ -402,6 +402,10 @@ class update_managed_permissions(PostUpdate):
def execute(self, **options):
+ if not options.get('live_run'):
+ self.log.info("Test mode: skipping 'update_managed_permissions'")
+ return False, False, ()
+
ldap = self.api.Backend[ldap2]
anonymous_read_aci = self.get_anonymous_read_aci(ldap)
diff --git a/ipaserver/install/plugins/update_pacs.py b/ipaserver/install/plugins/update_pacs.py
index 653456bb8..1286d7511 100644
--- a/ipaserver/install/plugins/update_pacs.py
+++ b/ipaserver/install/plugins/update_pacs.py
@@ -31,6 +31,10 @@ class update_pacs(PostUpdate):
order = MIDDLE
def execute(self, **options):
+ if not options.get('live_run'):
+ self.log.info("Test mode: skipping 'update_pacs'")
+ return False, False, ()
+
ldap = self.obj.backend
try:
diff --git a/ipaserver/install/plugins/update_referint.py b/ipaserver/install/plugins/update_referint.py
index 1b7411035..c6c62b70f 100644
--- a/ipaserver/install/plugins/update_referint.py
+++ b/ipaserver/install/plugins/update_referint.py
@@ -28,6 +28,9 @@ class update_referint(PreUpdate):
('cn', 'plugins'), ('cn', 'config'))
def execute(self, **options):
+ if not options.get('live_run'):
+ self.log.info("Test mode: skipping 'update_referint'")
+ return False, False, ()
root_logger.debug("Upgrading referential integrity plugin configuration")
ldap = self.obj.backend
diff --git a/ipaserver/install/plugins/update_services.py b/ipaserver/install/plugins/update_services.py
index 2122abb10..d213ace62 100644
--- a/ipaserver/install/plugins/update_services.py
+++ b/ipaserver/install/plugins/update_services.py
@@ -33,6 +33,10 @@ class update_service_principalalias(PostUpdate):
order = MIDDLE
def execute(self, **options):
+ if not options.get('live_run'):
+ self.log.info("Test mode: skipping 'update_service_principalalias'")
+ return False, False, ()
+
ldap = self.obj.backend
base_dn = DN(api.env.container_service, api.env.basedn)