diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index c0915544..c6f0a890 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -7,4 +7,4 @@ on:
jobs:
build:
- uses: valitydev/java-workflow/.github/workflows/maven-service-build.yml@v3
+ uses: valitydev/java-workflow/.github/workflows/maven-service-build.yml@v4
diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml
index ce19205a..944b966d 100644
--- a/.github/workflows/deploy.yml
+++ b/.github/workflows/deploy.yml
@@ -12,7 +12,7 @@ env:
jobs:
deploy:
- uses: valitydev/java-workflow/.github/workflows/maven-service-deploy.yml@v3
+ uses: valitydev/java-workflow/.github/workflows/maven-service-deploy.yml@v4
secrets:
github-token: ${{ secrets.GITHUB_TOKEN }}
mm-webhook-url: ${{ secrets.MATTERMOST_WEBHOOK_URL }}
diff --git a/pom.xml b/pom.xml
index 8fb5e242..971ba336 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
dev.vality
service-parent-pom
- 3.1.7
+ 4.0.0
anapi-v2
@@ -19,12 +19,12 @@
UTF-8
UTF-8
- 21
+ 25
8022
8023
${server.port} ${management.port}
${env.REGISTRY}
- 0.12.6
+ 0.13.0
@@ -33,7 +33,11 @@
dev.vality
swag-anapi-v2-server
- 1.102-4c69a2f
+ 1.106-9906edb
+
+
+ dev.vality.woody
+ woody-thrift
dev.vality
@@ -67,7 +71,6 @@
dev.vality
damsel
- 1.685-5c25c2e
@@ -77,7 +80,7 @@
org.springframework.boot
- spring-boot-starter-aop
+ spring-boot-starter-aspectj
org.springframework.security
@@ -97,13 +100,7 @@
org.springframework.boot
- spring-boot-starter-web
-
-
- org.hibernate
- hibernate-validator
-
-
+ spring-boot-starter-webmvc
org.springframework.boot
@@ -120,6 +117,11 @@
+
+ org.projectlombok
+ lombok
+ provided
+
jakarta.servlet
jakarta.servlet-api
@@ -132,14 +134,14 @@
org.openapitools
jackson-databind-nullable
- 0.2.6
+ 0.2.11
provided
org.springframework.boot
- spring-boot-starter-test
+ spring-boot-starter-webmvc-test
test
@@ -163,13 +165,13 @@
org.wiremock.integrations
wiremock-spring-boot
- 3.8.2
+ 4.2.1
test
org.bouncycastle
bcpkix-jdk18on
- 1.79
+ 1.84
test
@@ -191,6 +193,7 @@
true
Dockerfile
+ opentelemetry-javaagent.jar
@@ -199,6 +202,19 @@
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+
+
+ org.projectlombok
+ lombok
+ ${lombok.version}
+
+
+
+
org.springframework.boot
spring-boot-maven-plugin
diff --git a/src/main/java/dev/vality/anapi/v2/AnapiV2Application.java b/src/main/java/dev/vality/anapi/v2/AnapiV2Application.java
index e0bbcce7..078e1e18 100644
--- a/src/main/java/dev/vality/anapi/v2/AnapiV2Application.java
+++ b/src/main/java/dev/vality/anapi/v2/AnapiV2Application.java
@@ -2,7 +2,7 @@
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.boot.web.servlet.ServletComponentScan;
+import org.springframework.boot.web.server.servlet.context.ServletComponentScan;
@ServletComponentScan
@SpringBootApplication
diff --git a/src/main/java/dev/vality/anapi/v2/config/SecurityConfig.java b/src/main/java/dev/vality/anapi/v2/config/SecurityConfig.java
index 86166d43..d9758f0d 100644
--- a/src/main/java/dev/vality/anapi/v2/config/SecurityConfig.java
+++ b/src/main/java/dev/vality/anapi/v2/config/SecurityConfig.java
@@ -3,6 +3,9 @@
import dev.vality.anapi.v2.security.converter.JwtAuthConverter;
import lombok.RequiredArgsConstructor;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
+import org.springframework.boot.security.autoconfigure.actuate.web.servlet.EndpointRequest;
+import org.springframework.security.web.servlet.util.matcher.PathPatternRequestMatcher;
+import org.springframework.security.web.util.matcher.RequestMatchers;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.HttpMethod;
@@ -29,9 +32,9 @@ public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Excepti
http.authorizeHttpRequests(
(authorize) -> authorize
.requestMatchers(HttpMethod.OPTIONS, "/**").permitAll()
- .requestMatchers(HttpMethod.GET, "/**/health/liveness").permitAll()
- .requestMatchers(HttpMethod.GET, "/**/health/readiness").permitAll()
- .requestMatchers(HttpMethod.GET, "/**/actuator/prometheus").permitAll()
+ .requestMatchers(RequestMatchers.allOf(
+ EndpointRequest.to("health", "prometheus"),
+ PathPatternRequestMatcher.withDefaults().matcher(HttpMethod.GET, "/**"))).permitAll()
.anyRequest().authenticated());
http.oauth2ResourceServer(server -> server.jwt(token -> token.jwtAuthenticationConverter(jwtAuthConverter)));
http.sessionManagement(session -> session.sessionCreationPolicy(SessionCreationPolicy.STATELESS));
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 3763ab4e..94745cf0 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -54,9 +54,6 @@ spring:
output:
ansi:
enabled: always
- mvc:
- pathmatch:
- matching-strategy: ANT_PATH_MATCHER
security:
oauth2:
resourceserver:
diff --git a/src/test/java/dev/vality/anapi/v2/config/AbstractKeycloakOpenIdAsWiremockConfig.java b/src/test/java/dev/vality/anapi/v2/config/AbstractKeycloakOpenIdAsWiremockConfig.java
index 3c3bc912..652d2176 100644
--- a/src/test/java/dev/vality/anapi/v2/config/AbstractKeycloakOpenIdAsWiremockConfig.java
+++ b/src/test/java/dev/vality/anapi/v2/config/AbstractKeycloakOpenIdAsWiremockConfig.java
@@ -5,7 +5,7 @@
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.extension.ExtendWith;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
+import org.springframework.boot.webmvc.test.autoconfigure.AutoConfigureMockMvc;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit.jupiter.SpringExtension;
import org.wiremock.spring.EnableWireMock;