summaryrefslogtreecommitdiffstats
path: root/base/server
diff options
context:
space:
mode:
Diffstat (limited to 'base/server')
-rw-r--r--base/server/cms/src/org/dogtagpki/server/rest/SystemConfigService.java52
-rw-r--r--base/server/python/pki/server/deployment/pkihelper.py3
2 files changed, 36 insertions, 19 deletions
diff --git a/base/server/cms/src/org/dogtagpki/server/rest/SystemConfigService.java b/base/server/cms/src/org/dogtagpki/server/rest/SystemConfigService.java
index f9415f520..2b8e109a0 100644
--- a/base/server/cms/src/org/dogtagpki/server/rest/SystemConfigService.java
+++ b/base/server/cms/src/org/dogtagpki/server/rest/SystemConfigService.java
@@ -29,6 +29,7 @@ import java.util.Collection;
import java.util.Random;
import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpSession;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.HttpHeaders;
import javax.ws.rs.core.Request;
@@ -223,28 +224,22 @@ public class SystemConfigService extends PKIService implements SystemConfigResou
CMS.debug("=== Finalization ===");
setupSecurityDomain(data);
setupDBUser(data);
- finalizeConfiguration(data);
- cs.putInteger("cs.state", 1);
+ HttpSession session = servletRequest.getSession(true);
+ session.setAttribute("request", data);
+ session.setAttribute("response", response);
+ }
- // update serial numbers for clones
+ @Override
+ public ConfigurationResponse finalizeConfiguration() {
- // save some variables, remove remaining preops
- try {
- ConfigurationUtils.removePreopConfigEntries();
- } catch (EBaseException e) {
- CMS.debug(e);
- throw new PKIException("Errors when removing preop config entries: " + e, e);
- }
+ HttpSession session = servletRequest.getSession();
+ ConfigurationRequest request = (ConfigurationRequest)session.getAttribute("request");
+ ConfigurationResponse response = (ConfigurationResponse)session.getAttribute("response");
- // Create an empty file that designates the fact that although
- // this server instance has been configured, it has NOT yet
- // been restarted!
- String restart_server = instanceRoot + "/conf/" + RESTART_SERVER_AFTER_CONFIGURATION;
- Utils.exec("touch " + restart_server);
- Utils.exec("chmod 00660 " + restart_server);
+ finalizeConfiguration(request, response);
- response.setStatus(SUCCESS);
+ return response;
}
private void setupDBUser(ConfigurationRequest data) {
@@ -605,7 +600,28 @@ public class SystemConfigService extends PKIService implements SystemConfigResou
}
}
- public void finalizeConfiguration(ConfigurationRequest request) {
+ public void finalizeConfiguration(ConfigurationRequest request, ConfigurationResponse response) {
+
+ cs.putInteger("cs.state", 1);
+
+ // update serial numbers for clones
+
+ // save some variables, remove remaining preops
+ try {
+ ConfigurationUtils.removePreopConfigEntries();
+ } catch (EBaseException e) {
+ CMS.debug(e);
+ throw new PKIException("Errors when removing preop config entries: " + e, e);
+ }
+
+ // Create an empty file that designates the fact that although
+ // this server instance has been configured, it has NOT yet
+ // been restarted!
+ String restart_server = instanceRoot + "/conf/" + RESTART_SERVER_AFTER_CONFIGURATION;
+ Utils.exec("touch " + restart_server);
+ Utils.exec("chmod 00660 " + restart_server);
+
+ response.setStatus(SUCCESS);
}
public void configureAdministrator(ConfigurationRequest data, ConfigurationResponse response) {
diff --git a/base/server/python/pki/server/deployment/pkihelper.py b/base/server/python/pki/server/deployment/pkihelper.py
index ad9a88e63..f4bc518b9 100644
--- a/base/server/python/pki/server/deployment/pkihelper.py
+++ b/base/server/python/pki/server/deployment/pkihelper.py
@@ -3817,7 +3817,8 @@ class ConfigClient:
try:
client = pki.system.SystemConfigClient(connection)
- response = client.configure(data)
+ client.configure(data)
+ response = client.finalize()
config.pki_log.debug(
log.PKI_CONFIG_RESPONSE_STATUS + " " + str(response['status']),