mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2025-02-25 18:55:28 -06:00
Enable Retro Changelog and Content Synchronization DS plugins
Enable Retro Changelog and Content Synchronization DS plugins which are required for SyncRepl support. Create a working directory /var/named/ipa required by bind-dyndb-ldap v4+. https://fedorahosted.org/freeipa/ticket/3967
This commit is contained in:
committed by
Petr Viktorin
parent
3e1386a57e
commit
689382dc83
@@ -756,6 +756,7 @@ fi
|
|||||||
%{_mandir}/man1/ipa-backup.1.gz
|
%{_mandir}/man1/ipa-backup.1.gz
|
||||||
%{_mandir}/man1/ipa-restore.1.gz
|
%{_mandir}/man1/ipa-restore.1.gz
|
||||||
%{_mandir}/man1/ipa-advise.1.gz
|
%{_mandir}/man1/ipa-advise.1.gz
|
||||||
|
%ghost %{_localstatedir}/named/ipa
|
||||||
|
|
||||||
%files server-trust-ad
|
%files server-trust-ad
|
||||||
%{_sbindir}/ipa-adtrust-install
|
%{_sbindir}/ipa-adtrust-install
|
||||||
|
|||||||
@@ -1079,6 +1079,10 @@ def main():
|
|||||||
setup_firefox_extension(fstore)
|
setup_firefox_extension(fstore)
|
||||||
add_ca_dns_records()
|
add_ca_dns_records()
|
||||||
|
|
||||||
|
bind = bindinstance.BindInstance(fstore)
|
||||||
|
if bind.is_configured():
|
||||||
|
bind.create_dir('/var/named/ipa', 0700)
|
||||||
|
|
||||||
# Any of the following functions returns True iff the named.conf file
|
# Any of the following functions returns True iff the named.conf file
|
||||||
# has been altered
|
# has been altered
|
||||||
named_conf_changes = (
|
named_conf_changes = (
|
||||||
@@ -1092,7 +1096,6 @@ def main():
|
|||||||
if any(named_conf_changes):
|
if any(named_conf_changes):
|
||||||
# configuration has changed, restart the name server
|
# configuration has changed, restart the name server
|
||||||
root_logger.info('Changes to named.conf have been made, restart named')
|
root_logger.info('Changes to named.conf have been made, restart named')
|
||||||
bind = bindinstance.BindInstance(fstore)
|
|
||||||
try:
|
try:
|
||||||
bind.restart()
|
bind.restart()
|
||||||
except ipautil.CalledProcessError, e:
|
except ipautil.CalledProcessError, e:
|
||||||
|
|||||||
9
install/updates/20-syncrepl.update
Normal file
9
install/updates/20-syncrepl.update
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
# Enable Retro changelog
|
||||||
|
dn: cn=Retro Changelog Plugin,cn=plugins,cn=config
|
||||||
|
only:nsslapd-pluginEnabled: on
|
||||||
|
add:nsslapd-attribute: nsuniqueid:targetUniqueId
|
||||||
|
add:nsslapd-changelogmaxage: 2d
|
||||||
|
|
||||||
|
# Enable SyncRepl
|
||||||
|
dn: cn=Content Synchronization,cn=plugins,cn=config
|
||||||
|
only:nsslapd-pluginEnabled: on
|
||||||
@@ -14,6 +14,7 @@ app_DATA = \
|
|||||||
20-indices.update \
|
20-indices.update \
|
||||||
20-nss_ldap.update \
|
20-nss_ldap.update \
|
||||||
20-replication.update \
|
20-replication.update \
|
||||||
|
20-syncrepl.update \
|
||||||
20-user_private_groups.update \
|
20-user_private_groups.update \
|
||||||
20-winsync_index.update \
|
20-winsync_index.update \
|
||||||
21-replicas_container.update \
|
21-replicas_container.update \
|
||||||
|
|||||||
@@ -22,6 +22,7 @@ import os
|
|||||||
import pwd
|
import pwd
|
||||||
import netaddr
|
import netaddr
|
||||||
import re
|
import re
|
||||||
|
import errno
|
||||||
|
|
||||||
import ldap
|
import ldap
|
||||||
|
|
||||||
@@ -509,6 +510,16 @@ class BindInstance(service.Service):
|
|||||||
os.close(bind_fd)
|
os.close(bind_fd)
|
||||||
print "Sample zone file for bind has been created in "+bind_name
|
print "Sample zone file for bind has been created in "+bind_name
|
||||||
|
|
||||||
|
def create_dir(self, path, mode):
|
||||||
|
try:
|
||||||
|
os.makedirs(path, mode)
|
||||||
|
except OSError as e:
|
||||||
|
if e.errno != errno.EEXIST:
|
||||||
|
raise e
|
||||||
|
|
||||||
|
pent = pwd.getpwnam(self.named_user or 'named')
|
||||||
|
os.chown(path, pent.pw_uid, pent.pw_gid)
|
||||||
|
|
||||||
def create_instance(self):
|
def create_instance(self):
|
||||||
|
|
||||||
try:
|
try:
|
||||||
@@ -519,6 +530,8 @@ class BindInstance(service.Service):
|
|||||||
# get a connection to the DS
|
# get a connection to the DS
|
||||||
self.ldap_connect()
|
self.ldap_connect()
|
||||||
|
|
||||||
|
self.create_dir('/var/named/ipa', 0700)
|
||||||
|
|
||||||
if installutils.record_in_hosts(self.ip_address, self.fqdn) is None:
|
if installutils.record_in_hosts(self.ip_address, self.fqdn) is None:
|
||||||
installutils.add_record_to_hosts(self.ip_address, self.fqdn)
|
installutils.add_record_to_hosts(self.ip_address, self.fqdn)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user