mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2024-12-28 01:41:14 -06:00
Don't check for 389-instances.
We no longer need to enforce that no 389-ds instances exist on an IPA server. Checking that the ports exist should be enough. This used to be one mechanism we used to check to see if IPA was already installed. We have a better mechanism now. https://fedorahosted.org/freeipa/ticket/1735
This commit is contained in:
parent
70cb8bf355
commit
8be0d84a59
@ -119,7 +119,6 @@ def set_owner(config, dir):
|
||||
os.chown(dir, pw.pw_uid, pw.pw_gid)
|
||||
|
||||
def install_replica_ds(config):
|
||||
dsinstance.check_existing_installation()
|
||||
dsinstance.check_ports()
|
||||
|
||||
# if we have a pkcs12 file, create the cert db from
|
||||
@ -249,24 +248,6 @@ def install_dns_records(config, options):
|
||||
object.__setattr__(api.Backend.ldap2, 'ldap_uri', cur_uri)
|
||||
|
||||
def check_dirsrv():
|
||||
serverids = dsinstance.check_existing_installation()
|
||||
if serverids:
|
||||
print ""
|
||||
print "An existing Directory Server has been detected."
|
||||
if not ipautil.user_input("Do you wish to remove it and create a new one?", False):
|
||||
print ""
|
||||
print "Only a single Directory Server instance is allowed on an IPA"
|
||||
print "server, the one used by IPA itself."
|
||||
sys.exit(1)
|
||||
|
||||
try:
|
||||
ipaservices.knownservices.dirsrv.stop()
|
||||
except:
|
||||
pass
|
||||
|
||||
for serverid in serverids:
|
||||
dsinstance.erase_ds_instance_data(serverid)
|
||||
|
||||
(ds_unsecure, ds_secure) = dsinstance.check_ports()
|
||||
if not ds_unsecure or not ds_secure:
|
||||
print "IPA requires ports 389 and 636 for the Directory Server."
|
||||
|
@ -416,24 +416,6 @@ def read_admin_password():
|
||||
return admin_password
|
||||
|
||||
def check_dirsrv(unattended):
|
||||
serverids = dsinstance.check_existing_installation()
|
||||
if serverids:
|
||||
print ""
|
||||
print "An existing Directory Server has been detected."
|
||||
if unattended or not user_input("Do you wish to remove it and create a new one?", False):
|
||||
print ""
|
||||
print "Only a single Directory Server instance is allowed on an IPA"
|
||||
print "server, the one used by IPA itself."
|
||||
sys.exit(1)
|
||||
|
||||
try:
|
||||
ipaservices.knownservices.dirsrv.stop()
|
||||
except:
|
||||
pass
|
||||
|
||||
for serverid in serverids:
|
||||
dsinstance.erase_ds_instance_data(serverid)
|
||||
|
||||
(ds_unsecure, ds_secure) = dsinstance.check_ports()
|
||||
if not ds_unsecure or not ds_secure:
|
||||
print "IPA requires ports 389 and 636 for the Directory Server."
|
||||
@ -505,13 +487,6 @@ def uninstall():
|
||||
except CalledProcessError, e:
|
||||
print >>sys.stderr, "Failed to set this machine hostname back to %s (%s)." % (old_hostname, str(e))
|
||||
|
||||
# Now for some sanity checking. Make sure everything was really
|
||||
# uninstalled.
|
||||
serverids = dsinstance.check_existing_installation()
|
||||
if len(serverids):
|
||||
rv = 1
|
||||
logging.error('IPA cannot be re-installed without removing existing 389-ds instance(s)')
|
||||
|
||||
if fstore.has_files():
|
||||
logging.error('Some files have not been restored, see /var/lib/ipa/sysrestore/sysrestore.index')
|
||||
has_state = False
|
||||
@ -690,10 +665,8 @@ def main():
|
||||
print "To accept the default shown in brackets, press the Enter key."
|
||||
print ""
|
||||
|
||||
if not options.external_ca and not options.external_cert_file:
|
||||
# Let it past if there is an external_cert_file defined on the chance
|
||||
# that we are coming in without a cache file.
|
||||
check_dirsrv(options.unattended)
|
||||
# Make sure the 389-ds ports are available
|
||||
check_dirsrv(options.unattended)
|
||||
|
||||
realm_name = ""
|
||||
host_name = ""
|
||||
|
@ -90,18 +90,6 @@ def erase_ds_instance_data(serverid):
|
||||
# except:
|
||||
# pass
|
||||
|
||||
def check_existing_installation():
|
||||
dirs = glob.glob("/etc/dirsrv/slapd-*")
|
||||
if not dirs:
|
||||
return []
|
||||
|
||||
serverids = []
|
||||
for d in dirs:
|
||||
logging.debug('Found existing 389-ds instance %s' % d)
|
||||
serverids.append(os.path.basename(d).split("slapd-", 1)[1])
|
||||
|
||||
return serverids
|
||||
|
||||
def check_ports():
|
||||
ds_unsecure = installutils.port_available(389)
|
||||
ds_secure = installutils.port_available(636)
|
||||
@ -648,7 +636,7 @@ class DsInstance(service.Service):
|
||||
self.restore_state('nsslapd-security')
|
||||
self.restore_state('nsslapd-ldapiautobind')
|
||||
|
||||
if self.restore_state("running"):
|
||||
if running:
|
||||
self.start()
|
||||
|
||||
# we could probably move this function into the service.Service
|
||||
|
Loading…
Reference in New Issue
Block a user