diff options
author | Rich Megginson <rmeggins@redhat.com> | 2008-10-03 14:07:08 -0600 |
---|---|---|
committer | Rob Crittenden <rcritten@redhat.com> | 2008-10-13 14:15:19 -0400 |
commit | eac09d38b78867465ba44872db0ddbb4b631a4b0 (patch) | |
tree | fa4d033d12deb3eda2d755096d8f10b5655f1f97 /ipa-server/ipaserver | |
parent | a93e2b0d0215010e82496558a175b04f729ae812 (diff) | |
download | freeipa-eac09d38b78867465ba44872db0ddbb4b631a4b0.tar.gz freeipa-eac09d38b78867465ba44872db0ddbb4b631a4b0.tar.xz freeipa-eac09d38b78867465ba44872db0ddbb4b631a4b0.zip |
Add more winsync support to cli
The ipa-replica-manage list, init, and synch commands do not work for winsync
agreements. This patch adds that support and some additional verbose logging.
The synch_master did not work correctly. The way it should work is to set
the replication schedule to some bogus value, then reset it back to its
original setting. This will force replication to take place immediately.
Diffstat (limited to 'ipa-server/ipaserver')
-rw-r--r-- | ipa-server/ipaserver/replication.py | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/ipa-server/ipaserver/replication.py b/ipa-server/ipaserver/replication.py index 3ab2e6b17..8fdbed19c 100644 --- a/ipa-server/ipaserver/replication.py +++ b/ipa-server/ipaserver/replication.py @@ -50,7 +50,7 @@ class ReplicationManager: self.suffix = "" def find_replication_dns(self, conn): - filt = "(objectclass=nsDS5ReplicationAgreement)" + filt = "(|(objectclass=nsDSWindowsReplicationAgreement)(objectclass=nsds5ReplicationAgreement))" try: ents = conn.search_s("cn=mapping tree,cn=config", ldap.SCOPE_SUBTREE, filt) except ldap.NO_SUCH_OBJECT: @@ -372,5 +372,12 @@ class ReplicationManager: # it back. if newschedule == schedule: newschedule = '2358-2359 1' + logging.info("Changing agreement %s schedule to %s to force synch" % + (dn, newschedule)) mod = [(ldap.MOD_REPLACE, 'nsDS5ReplicaUpdateSchedule', [ newschedule ])] conn.modify_s(dn, mod) + time.sleep(1) + logging.info("Changing agreement %s to restore original schedule %s" % + (dn, schedule)) + mod = [(ldap.MOD_REPLACE, 'nsDS5ReplicaUpdateSchedule', [ schedule ])] + conn.modify_s(dn, mod) |