diff options
author | awudzins <adam.wudzinski@nokia.com> | 2020-02-19 13:34:32 +0100 |
---|---|---|
committer | awudzins <adam.wudzinski@nokia.com> | 2020-02-20 12:43:59 +0100 |
commit | d54223e7cd3026e260e06df39dd52c4368e7053d (patch) | |
tree | 8501ab3942fa88201f468a05bf84b600e24c7740 /certService/src/main | |
parent | e93c679bc9c22e034ba93a48460830716e1f7457 (diff) |
Load CMP Servers config from volume
Create Kubernetes secret to store Cmp Server config file and mount it to container as volume
Issue-ID: AAF-997
Signed-off-by: Adam Wudzinski <adam.wudzinski@nokia.com>
Change-Id: I163b720ce14729328af34dd61e6eb0108c76d58b
Diffstat (limited to 'certService/src/main')
4 files changed, 32 insertions, 48 deletions
diff --git a/certService/src/main/java/org/onap/aaf/certservice/certification/configuration/CmpServersConfig.java b/certService/src/main/java/org/onap/aaf/certservice/certification/configuration/CmpServersConfig.java index 105b10e7..414f38bb 100644 --- a/certService/src/main/java/org/onap/aaf/certservice/certification/configuration/CmpServersConfig.java +++ b/certService/src/main/java/org/onap/aaf/certservice/certification/configuration/CmpServersConfig.java @@ -20,21 +20,30 @@ package org.onap.aaf.certservice.certification.configuration; -import java.util.Collections; -import java.util.List; -import javax.annotation.PostConstruct; import org.onap.aaf.certservice.certification.configuration.model.Cmpv2Server; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Configuration; +import javax.annotation.PostConstruct; +import java.io.File; +import java.util.Collections; +import java.util.List; + @Configuration public class CmpServersConfig { - private static final String CMP_SERVERS_CONFIG_FILENAME = "cmpServers.json"; + + @Autowired + private CmpServersConfigLoader cmpServersConfigLoader; + @Value("${app.config.path}") + private String configPath; private List<Cmpv2Server> cmpServers; @PostConstruct - private void loadConfiguration() { - cmpServers = Collections.unmodifiableList(new CmpServersConfigLoader().load(CMP_SERVERS_CONFIG_FILENAME)); + void loadConfiguration() { + String configFilePath = configPath + File.separator + CMP_SERVERS_CONFIG_FILENAME; + this.cmpServers = Collections.unmodifiableList(cmpServersConfigLoader.load(configFilePath)); } public List<Cmpv2Server> getCmpServers() { diff --git a/certService/src/main/java/org/onap/aaf/certservice/certification/configuration/CmpServersConfigLoader.java b/certService/src/main/java/org/onap/aaf/certservice/certification/configuration/CmpServersConfigLoader.java index b31fbcad..c8415ac0 100644 --- a/certService/src/main/java/org/onap/aaf/certservice/certification/configuration/CmpServersConfigLoader.java +++ b/certService/src/main/java/org/onap/aaf/certservice/certification/configuration/CmpServersConfigLoader.java @@ -21,27 +21,26 @@ package org.onap.aaf.certservice.certification.configuration; import com.fasterxml.jackson.databind.ObjectMapper; -import java.io.File; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.net.URL; -import java.util.ArrayList; -import java.util.List; -import org.onap.aaf.certservice.certification.CertificationModelFactory; import org.onap.aaf.certservice.certification.configuration.model.CmpServers; import org.onap.aaf.certservice.certification.configuration.model.Cmpv2Server; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Component; + +import java.io.File; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; +@Component class CmpServersConfigLoader { - private static final Logger LOGGER = LoggerFactory.getLogger(CertificationModelFactory.class); + private static final Logger LOGGER = LoggerFactory.getLogger(CmpServersConfigLoader.class); List<Cmpv2Server> load(String path) { List<Cmpv2Server> result = new ArrayList<>(); try { result = loadConfigFromFile(path).getCmpv2Servers(); - } catch (FileNotFoundException e) { - LOGGER.error("CMP Servers configuration file not found: ", e); + LOGGER.info(String.format("CMP Servers configuration successfully loaded from file '%s'", path)); } catch (IOException e) { LOGGER.error("Exception occurred during CMP Servers configuration loading: ", e); } @@ -50,11 +49,6 @@ class CmpServersConfigLoader { private CmpServers loadConfigFromFile(String path) throws IOException { ObjectMapper objectMapper = new ObjectMapper(); - URL resource = getClass().getClassLoader().getResource(path); - if (resource == null) { - throw new FileNotFoundException(); - } - String configFilePath = resource.getFile(); - return objectMapper.readValue(new File(configFilePath), CmpServers.class); + return objectMapper.readValue(new File(path), CmpServers.class); } } diff --git a/certService/src/main/resources/application.properties b/certService/src/main/resources/application.properties index b9ce108a..eab43c08 100644 --- a/certService/src/main/resources/application.properties +++ b/certService/src/main/resources/application.properties @@ -1,5 +1,10 @@ -#Actuator properties +# Actuator configuration management.endpoints.enabled-by-default=false management.endpoint.health.enabled=true -springdoc.swagger-ui.path=/docs springdoc.show-actuator=true + +# Swagger configuration +springdoc.swagger-ui.path=/docs + +# AAF CertService app specific configuration +app.config.path=/etc/onap/aaf/certservice
\ No newline at end of file diff --git a/certService/src/main/resources/cmpServers.json b/certService/src/main/resources/cmpServers.json deleted file mode 100644 index ee9e72b9..00000000 --- a/certService/src/main/resources/cmpServers.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "cmpv2Servers": [ - { - "caName": "TEST", - "url": "http://127.0.0.1/ejbca/publicweb/cmp/cmp", - "issuerDN": "CN=ManagementCA", - "caMode": "CLIENT", - "authentication": { - "iak": "xxx", - "rv": "yyy" - } - }, - { - "caName": "TEST2", - "url": "http://127.0.0.1/ejbca/publicweb/cmp/cmpRA", - "issuerDN": "CN=ManagementCA2", - "caMode": "RA", - "authentication": { - "iak": "xxx", - "rv": "yyy" - } - } - ] -}
\ No newline at end of file |