72 lines
2.4 KiB
Diff
72 lines
2.4 KiB
Diff
|
From 8821f7ae8e666b4ae42e232c672d616bf7fbffeb Mon Sep 17 00:00:00 2001
|
||
|
From: Rob Crittenden <rcritten@redhat.com>
|
||
|
Date: Sun, 4 Feb 2018 11:40:24 -0500
|
||
|
Subject: [PATCH] Fix detection of KRA installation so upgrades can succeed
|
||
|
|
||
|
Use is_installed() instead of is_configured() because
|
||
|
is_installed() does a config file check to see if the service
|
||
|
is in use.
|
||
|
|
||
|
https://pagure.io/freeipa/issue/7389
|
||
|
|
||
|
Signed-off-by: Rob Crittenden <rcritten@redhat.com>
|
||
|
Reviewed-By: Florence Blanc-Renaud <flo@redhat.com>
|
||
|
---
|
||
|
ipaserver/install/server/upgrade.py | 4 ++--
|
||
|
ipatests/test_integration/test_upgrade.py | 21 +++++++++++++++++++++
|
||
|
2 files changed, 23 insertions(+), 2 deletions(-)
|
||
|
create mode 100644 ipatests/test_integration/test_upgrade.py
|
||
|
|
||
|
diff --git a/ipaserver/install/server/upgrade.py b/ipaserver/install/server/upgrade.py
|
||
|
index 07cc18a78..23173c0ca 100644
|
||
|
--- a/ipaserver/install/server/upgrade.py
|
||
|
+++ b/ipaserver/install/server/upgrade.py
|
||
|
@@ -1710,7 +1710,7 @@ def upgrade_configuration():
|
||
|
)
|
||
|
upgrade_pki(ca, fstore)
|
||
|
|
||
|
- if kra.is_configured():
|
||
|
+ if kra.is_installed():
|
||
|
logger.info('[Ensuring ephemeralRequest is enabled in KRA]')
|
||
|
kra.backup_config()
|
||
|
value = installutils.get_directive(
|
||
|
@@ -1728,7 +1728,7 @@ def upgrade_configuration():
|
||
|
# by checking status using http
|
||
|
if ca.is_configured():
|
||
|
ca.start('pki-tomcat')
|
||
|
- if kra.is_configured() and not kra.is_running():
|
||
|
+ if kra.is_installed() and not kra.is_running():
|
||
|
# This is for future-proofing in case the KRA is ever standalone.
|
||
|
kra.start('pki-tomcat')
|
||
|
|
||
|
diff --git a/ipatests/test_integration/test_upgrade.py b/ipatests/test_integration/test_upgrade.py
|
||
|
new file mode 100644
|
||
|
index 000000000..951747b0b
|
||
|
--- /dev/null
|
||
|
+++ b/ipatests/test_integration/test_upgrade.py
|
||
|
@@ -0,0 +1,21 @@
|
||
|
+#
|
||
|
+# Copyright (C) 2018 FreeIPA Contributors see COPYING for license
|
||
|
+#
|
||
|
+
|
||
|
+"""
|
||
|
+Module provides tests to verify that the upgrade script works.
|
||
|
+"""
|
||
|
+
|
||
|
+from ipatests.test_integration.base import IntegrationTest
|
||
|
+from ipatests.pytest_plugins.integration import tasks
|
||
|
+
|
||
|
+
|
||
|
+class TestUpgrade(IntegrationTest):
|
||
|
+ @classmethod
|
||
|
+ def install(cls, mh):
|
||
|
+ tasks.install_master(cls.master, setup_dns=False)
|
||
|
+
|
||
|
+ def test_invoke_upgrader(self):
|
||
|
+ cmd = self.master.run_command(['ipa-server-upgrade'],
|
||
|
+ raiseonerr=False)
|
||
|
+ assert cmd.returncode == 0
|
||
|
--
|
||
|
2.14.3
|
||
|
|