Martin
>From 2ecd67588206abadeb992360c3cd6f0c31938edc Mon Sep 17 00:00:00 2001
From: Martin Nagy <[email protected]>
Date: Fri, 13 Nov 2009 16:57:51 +0100
Subject: [PATCH] Ask the user before overwriting /etc/named.conf
---
install/tools/ipa-replica-install | 6 ++----
install/tools/ipa-server-install | 6 ++----
ipaserver/install/bindinstance.py | 10 +++++++++-
3 files changed, 13 insertions(+), 9 deletions(-)
diff --git a/install/tools/ipa-replica-install b/install/tools/ipa-replica-install
index e8fabd7..9827bef 100755
--- a/install/tools/ipa-replica-install
+++ b/install/tools/ipa-replica-install
@@ -251,10 +251,8 @@ def check_dirsrv():
sys.exit(1)
def check_bind():
- if not bindinstance.check_inst():
- print "--setup-dns was specified but bind or the BIND LDAP plug-in"
- print "is not installed on the system"
- print "Please install bind and the LDAP plug-in and restart the setup program"
+ if not bindinstance.check_inst(unattended=True):
+ print "Aborting installation"
sys.exit(1)
def main():
diff --git a/install/tools/ipa-server-install b/install/tools/ipa-server-install
index 748101d..34ddb0f 100755
--- a/install/tools/ipa-server-install
+++ b/install/tools/ipa-server-install
@@ -541,10 +541,8 @@ def main():
# check bind packages are installed
if options.setup_dns:
- if not bindinstance.check_inst():
- print "--setup-dns was specified but bind or the BIND LDAP plug-in"
- print "is not installed on the system"
- print "Please install bind and the LDAP plug-in and restart the setup program"
+ if not bindinstance.check_inst(options.unattended):
+ print "Aborting installation"
return 1
if options.ca:
diff --git a/ipaserver/install/bindinstance.py b/ipaserver/install/bindinstance.py
index 2a922a3..810ee12 100644
--- a/ipaserver/install/bindinstance.py
+++ b/ipaserver/install/bindinstance.py
@@ -30,17 +30,25 @@ from ipapython import sysrestore
from ipapython import ipautil
from ipalib import api, util
-def check_inst():
+def check_inst(unattended):
# So far this file is always present in both RHEL5 and Fedora if all the necessary
# bind packages are installed (RHEL5 requires also the pkg: caching-nameserver)
if not os.path.exists('/etc/named.rfc1912.zones'):
+ print "BIND was not found on this system"
+ print "Please install BIND and start the installation again"
return False
# Also check for the LDAP BIND plug-in
if not os.path.exists('/usr/lib/bind/ldap.so') and \
not os.path.exists('/usr/lib64/bind/ldap.so'):
+ print "The BIND LDAP plug-in was not found on this system"
+ print "Please install BIND LDAP plug-in and start the installation again"
return False
+ if not unattended and os.path.exists('/etc/named.conf'):
+ msg = "Existing BIND configuration detected, overwrite?"
+ return ipautil.user_input(msg, False)
+
return True
class BindInstance(service.Service):
--
1.6.2.5
_______________________________________________
Freeipa-devel mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/freeipa-devel