On 17.8.2011 16:39, Rob Crittenden wrote:
Jan Cholasta wrote:
https://fedorahosted.org/freeipa/ticket/1570
The help message might need some tweaking.
Honza
NACK. Whatever solution we come up with needs to apply to replicas as
well. Ideally it would be automatic. Since this is a bit of a corner
case in general it might be acceptable to have an option on
ipa-replica-install.
rob
Added the option to ipa-replica-install.
Honza
--
Jan Cholasta
From 1a2db0391f4bdc2480da07b8478295933775 Mon Sep 17 00:00:00 2001
From: Jan Cholasta jchol...@redhat.com
Date: Tue, 16 Aug 2011 19:34:04 +0200
Subject: [PATCH] Add option to install without the automatic redirect to the
Web UI.
ticket 1570
---
install/conf/ipa-rewrite.conf |2 +-
install/tools/ipa-replica-install |8 +---
install/tools/ipa-server-install|6 --
install/tools/man/ipa-replica-install.1 |3 +++
install/tools/man/ipa-server-install.1 |3 +++
ipaserver/install/httpinstance.py |4 ++--
6 files changed, 18 insertions(+), 8 deletions(-)
diff --git a/install/conf/ipa-rewrite.conf b/install/conf/ipa-rewrite.conf
index ec9912c..5385f9d 100644
--- a/install/conf/ipa-rewrite.conf
+++ b/install/conf/ipa-rewrite.conf
@@ -7,7 +7,7 @@ RewriteLogLevel 0
# By default forward all requests to /ipa. If you don't want IPA
# to be the default on your web server comment this line out.
-RewriteRule ^/$$ https://$FQDN/ipa/ui [L,NC,R=301]
+${AUTOREDIR}RewriteRule ^/$$ https://$FQDN/ipa/ui [L,NC,R=301]
# Redirect to the fully-qualified hostname. Not redirecting to secure
# port so configuration files can be retrieved without requiring SSL.
diff --git a/install/tools/ipa-replica-install b/install/tools/ipa-replica-install
index f13b51e..6b97e0e 100755
--- a/install/tools/ipa-replica-install
+++ b/install/tools/ipa-replica-install
@@ -67,6 +67,8 @@ def parse_options():
help=Do not use DNS for hostname lookup during installation)
parser.add_option(--no-pkinit, dest=setup_pkinit, action=store_false,
default=True, help=disables pkinit setup steps)
+parser.add_option(--no-ui-redirect, dest=ui_redirect, action=store_false,
+ default=True, help=Do not automatically redirect to the Web UI)
parser.add_option(--skip-conncheck, dest=skip_conncheck, action=store_true,
default=False, help=skip connection check to remote master)
parser.add_option(--setup-ca, dest=setup_ca, action=store_true,
@@ -154,7 +156,7 @@ def install_ca_cert(config):
print error copying files: + str(e)
sys.exit(1)
-def install_http(config):
+def install_http(config, auto_redirect):
# if we have a pkcs12 file, create the cert db from
# that. Otherwise the ds setup will create the CA
# cert
@@ -164,7 +166,7 @@ def install_http(config):
config.dir + /http_pin.txt)
http = httpinstance.HTTPInstance()
-http.create_instance(config.realm_name, config.host_name, config.domain_name, config.dirman_password, False, pkcs12_info, self_signed_ca=True)
+http.create_instance(config.realm_name, config.host_name, config.domain_name, config.dirman_password, False, pkcs12_info, self_signed_ca=True, auto_redirect=auto_redirect)
# Now copy the autoconfiguration files
if ipautil.file_exists(config.dir + /preferences.html):
@@ -428,7 +430,7 @@ def main():
cs.add_cert_to_service()
install_krb(config, setup_pkinit=options.setup_pkinit)
-install_http(config)
+install_http(config, auto_redirect=options.ui_redirect)
if CA:
CA.import_ra_cert(dir + /ra.p12)
CA.fix_ra_perms()
diff --git a/install/tools/ipa-server-install b/install/tools/ipa-server-install
index 3605b03..c6057dc 100755
--- a/install/tools/ipa-server-install
+++ b/install/tools/ipa-server-install
@@ -172,6 +172,8 @@ def parse_options():
parser.add_option(--no_hbac_allow, dest=hbac_allow, default=False,
action=store_true,
help=Don't install allow_all HBAC rule)
+parser.add_option(--no-ui-redirect, dest=ui_redirect, action=store_false,
+ default=True, help=Do not automatically redirect to the Web UI)
options, args = parser.parse_args()
safe_options = parser.get_safe_opts(options)
@@ -903,10 +905,10 @@ def main():
http = httpinstance.HTTPInstance(fstore)
if options.http_pkcs12:
pkcs12_info = (options.http_pkcs12, pw_name)
-http.create_instance(realm_name, host_name, domain_name, dm_password, autoconfig=False, pkcs12_info=pkcs12_info, subject_base=options.subject)
+http.create_instance(realm_name, host_name, domain_name, dm_password, autoconfig=False, pkcs12_info=pkcs12_info, subject_base=options.subject, auto_redirect=options.ui_redirect)
os.remove(pw_name)
else:
-http.create_instance(realm_name, host_name, domain_name,