From 58ee81d77b5815d375fd1cd79756223557686599 Mon Sep 17 00:00:00 2001 From: "k.triantafyllou" Date: Fri, 28 Jul 2023 10:02:30 +0300 Subject: [PATCH 1/3] Add API Properties and Global Vars. Update login-core --- pom.xml | 2 +- .../loginservice/LoginServiceApplication.java | 4 ++ .../configuration/APIProperties.java | 38 +++++++++++++++++++ .../configuration/GlobalVars.java | 31 +++++++++++++++ .../configuration/SwaggerConfig.java | 1 - .../controllers/HealthController.java | 22 ++++++++--- 6 files changed, 90 insertions(+), 8 deletions(-) create mode 100644 src/main/java/eu/dnetlib/loginservice/configuration/APIProperties.java create mode 100644 src/main/java/eu/dnetlib/loginservice/configuration/GlobalVars.java diff --git a/pom.xml b/pom.xml index 6ec9e2f..c042572 100644 --- a/pom.xml +++ b/pom.xml @@ -19,7 +19,7 @@ eu.dnetlib uoa-login-core - 2.0.2 + 2.0.3 diff --git a/src/main/java/eu/dnetlib/loginservice/LoginServiceApplication.java b/src/main/java/eu/dnetlib/loginservice/LoginServiceApplication.java index 2e9e2a5..bc0a6bb 100644 --- a/src/main/java/eu/dnetlib/loginservice/LoginServiceApplication.java +++ b/src/main/java/eu/dnetlib/loginservice/LoginServiceApplication.java @@ -1,8 +1,11 @@ package eu.dnetlib.loginservice; import eu.dnetlib.authentication.configuration.AuthenticationConfiguration; +import eu.dnetlib.loginservice.configuration.APIProperties; +import eu.dnetlib.loginservice.configuration.GlobalVars; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.context.annotation.Import; import org.springframework.context.annotation.PropertySource; import org.springframework.context.annotation.PropertySources; @@ -14,6 +17,7 @@ import org.springframework.context.annotation.PropertySources; @PropertySource(value = "classpath:dnet-override.properties", ignoreResourceNotFound = true) }) @Import({AuthenticationConfiguration.class}) +@EnableConfigurationProperties({APIProperties.class, GlobalVars.class}) public class LoginServiceApplication { public static void main(String[] args) { diff --git a/src/main/java/eu/dnetlib/loginservice/configuration/APIProperties.java b/src/main/java/eu/dnetlib/loginservice/configuration/APIProperties.java new file mode 100644 index 0000000..52f63c0 --- /dev/null +++ b/src/main/java/eu/dnetlib/loginservice/configuration/APIProperties.java @@ -0,0 +1,38 @@ +package eu.dnetlib.loginservice.configuration; + +import org.springframework.boot.context.properties.ConfigurationProperties; + +@ConfigurationProperties("api") +public class APIProperties { + + private String title; + private String description; + private String version; + + public APIProperties() { + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } +} diff --git a/src/main/java/eu/dnetlib/loginservice/configuration/GlobalVars.java b/src/main/java/eu/dnetlib/loginservice/configuration/GlobalVars.java new file mode 100644 index 0000000..7e330b7 --- /dev/null +++ b/src/main/java/eu/dnetlib/loginservice/configuration/GlobalVars.java @@ -0,0 +1,31 @@ +package eu.dnetlib.loginservice.configuration; + +import org.springframework.boot.context.properties.ConfigurationProperties; + +import java.util.Date; + +@ConfigurationProperties("login-service.globalVars") +public class GlobalVars { + public static Date date = new Date(); + private Date buildDate; + private String version; + + public String getBuildDate() { + if(buildDate == null) { + return null; + } + return buildDate.toString(); + } + + public void setBuildDate(Date buildDate) { + this.buildDate = buildDate; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } +} diff --git a/src/main/java/eu/dnetlib/loginservice/configuration/SwaggerConfig.java b/src/main/java/eu/dnetlib/loginservice/configuration/SwaggerConfig.java index 94a580d..6c61f56 100644 --- a/src/main/java/eu/dnetlib/loginservice/configuration/SwaggerConfig.java +++ b/src/main/java/eu/dnetlib/loginservice/configuration/SwaggerConfig.java @@ -1,6 +1,5 @@ package eu.dnetlib.loginservice.configuration; -import eu.dnetlib.authentication.configuration.APIProperties; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; diff --git a/src/main/java/eu/dnetlib/loginservice/controllers/HealthController.java b/src/main/java/eu/dnetlib/loginservice/controllers/HealthController.java index 90b6df6..1b11aa7 100644 --- a/src/main/java/eu/dnetlib/loginservice/controllers/HealthController.java +++ b/src/main/java/eu/dnetlib/loginservice/controllers/HealthController.java @@ -1,7 +1,6 @@ package eu.dnetlib.loginservice.controllers; -import eu.dnetlib.authentication.configuration.AuthenticationConfiguration; -import eu.dnetlib.authentication.configuration.Properties; +import eu.dnetlib.loginservice.configuration.GlobalVars; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.springframework.beans.factory.annotation.Autowired; @@ -10,16 +9,17 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; +import java.util.HashMap; import java.util.Map; @RestController public class HealthController { private final Logger log = LogManager.getLogger(this.getClass()); - private final AuthenticationConfiguration configuration; + private final GlobalVars globalVars; @Autowired - public HealthController(AuthenticationConfiguration configuration) { - this.configuration = configuration; + public HealthController(GlobalVars globalVars) { + this.globalVars = globalVars; } @RequestMapping(value = {"", "/health_check"}, method = RequestMethod.GET) @@ -31,6 +31,16 @@ public class HealthController { @PreAuthorize("hasAnyAuthority('PORTAL_ADMINISTRATOR')") @RequestMapping(value = "/health_check/advanced", method = RequestMethod.GET) public Map checkEverything() { - return configuration.getProperties(); + Map response = new HashMap<>(); + if(GlobalVars.date != null) { + response.put("Date of deploy", eu.dnetlib.authentication.configuration.GlobalVars.date.toString()); + } + if(globalVars.getBuildDate() != null) { + response.put("Date of build", globalVars.getBuildDate()); + } + if (globalVars.getVersion() != null) { + response.put("Version", globalVars.getVersion()); + } + return response; } } From b79862b825c48329b88f9cc951a10a59bf8680ef Mon Sep 17 00:00:00 2001 From: "k.triantafyllou" Date: Fri, 28 Jul 2023 10:21:17 +0300 Subject: [PATCH 2/3] Add properties for global-vars --- pom.xml | 6 ++++++ src/main/resources/login-service.properties | 3 +++ 2 files changed, 9 insertions(+) diff --git a/pom.xml b/pom.xml index c042572..240af0b 100644 --- a/pom.xml +++ b/pom.xml @@ -15,6 +15,12 @@ scm:git:gitea@code-repo.d4science.org:MaDgIK/login-service.git HEAD + + UTF-8 + UTF-8 + ${maven.build.timestamp} + E MMM dd HH:mm:ss z yyyy + eu.dnetlib diff --git a/src/main/resources/login-service.properties b/src/main/resources/login-service.properties index b899e3d..6a47893 100644 --- a/src/main/resources/login-service.properties +++ b/src/main/resources/login-service.properties @@ -2,3 +2,6 @@ api.title = Login Service api.description = Login service provides methods to authenticate users through AAI provider and retrieve information of authenticated user. api.version = ${project.version} + +login-service.global-vars.buildDate=@timestamp@ +login-service.global-vars.version=@project.version@ From 38b3324270b0a12d8fca6166829424177e12380c Mon Sep 17 00:00:00 2001 From: "k.triantafyllou" Date: Fri, 24 Nov 2023 12:30:06 +0200 Subject: [PATCH 3/3] Update login-core --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 240af0b..0a88058 100644 --- a/pom.xml +++ b/pom.xml @@ -25,7 +25,7 @@ eu.dnetlib uoa-login-core - 2.0.3 + 2.1.0