Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Build Maven Artifact
name: Maven Build Artifact

on:
pull_request:
Expand All @@ -7,4 +7,4 @@

jobs:
build:
uses: valitydev/java-workflow/.github/workflows/maven-service-build.yml@v2
uses: valitydev/java-workflow/.github/workflows/maven-service-build.yml@v3

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {}

Copilot Autofix

AI 5 months ago

To fix the issue, explicitly set a permissions block at either the workflow or job level in .github/workflows/build.yml. Since the workflow only contains a single job, it makes sense to add the permissions block at the root level, so all jobs inherit it. The minimal starting point recommended by CodeQL is simply {} (no permissions), but you may want to set contents: read if, for example, your jobs need to check out code. Place the following block under the name: field and before the on: trigger:

permissions:
  contents: read

This lets the workflow access repository contents, which is usually required for build jobs. If you know that more or fewer permissions are needed, adjust accordingly. Only lines in .github/workflows/build.yml need to be changed.

Suggested changeset 1
.github/workflows/build.yml

Autofix patch

Autofix patch
Run the following command in your local git repository to apply this patch
cat << 'EOF' | git apply
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -1,4 +1,6 @@
 name: Maven Build Artifact
+permissions:
+  contents: read
 
 on:
   pull_request:
EOF
@@ -1,4 +1,6 @@
name: Maven Build Artifact
permissions:
contents: read

on:
pull_request:
Copilot is powered by AI and may make mistakes. Always verify output.
7 changes: 4 additions & 3 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,13 @@
push:
branches:
- 'master'
- 'main'
- 'epic/**'
- 'ft/up-woody'

jobs:
build-and-deploy:
uses: valitydev/java-workflow/.github/workflows/maven-service-deploy.yml@v2
uses: valitydev/java-workflow/.github/workflows/maven-service-deploy.yml@v3
with:
ignore-coverage: true
secrets:
github-token: ${{ secrets.GITHUB_TOKEN }}
mm-webhook-url: ${{ secrets.MATTERMOST_WEBHOOK_URL }}

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {}
17 changes: 12 additions & 5 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<parent>
<groupId>dev.vality</groupId>
<artifactId>service-parent-pom</artifactId>
<version>2.1.5</version>
<version>3.1.7</version>
</parent>

<artifactId>proxy-mocketbank</artifactId>
Expand All @@ -24,7 +24,6 @@
<server.rest.endpoint>mocketbank</server.rest.endpoint>
<exposed.ports>${server.port} ${server.rest.port} ${management.port}</exposed.ports>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<cds-proto.version>1.64-74a763b</cds-proto.version>
<scrooge.proto.version>1.16-b0d5cf2</scrooge.proto.version>
</properties>

Expand Down Expand Up @@ -80,17 +79,25 @@
<artifactId>commons-text</artifactId>
<version>1.10.0</version>
</dependency>
<dependency>
<groupId>jakarta.servlet</groupId>
<artifactId>jakarta.servlet-api</artifactId>
</dependency>
<dependency>
<groupId>com.github.javafaker</groupId>
<artifactId>javafaker</artifactId>
<version>1.0.2</version>
</dependency>

<!-- vality -->
<dependency>
<groupId>dev.vality</groupId>
<artifactId>damsel</artifactId>
<version>1.597-bfedcb9</version>
</dependency>
<dependency>
<groupId>dev.vality</groupId>
<artifactId>cds-proto</artifactId>
<version>1.66-01353ce</version>
<version>1.71-b3db02c</version>
</dependency>
<dependency>
<groupId>dev.vality</groupId>
Expand All @@ -109,7 +116,7 @@
<dependency>
<groupId>dev.vality</groupId>
<artifactId>adapter-common-lib</artifactId>
<version>1.2.13</version>
<version>3.0.0</version>
</dependency>
<dependency>
<groupId>dev.vality</groupId>
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
package dev.vality.proxy.mocketbank.configuration;

import dev.vality.proxy.mocketbank.configuration.properties.RestTemplateProperties;
import lombok.RequiredArgsConstructor;
import org.apache.hc.client5.http.classic.HttpClient;
import org.apache.hc.client5.http.config.ConnectionConfig;
import org.apache.hc.client5.http.config.RequestConfig;
import org.apache.hc.client5.http.impl.classic.CloseableHttpClient;
import org.apache.hc.client5.http.impl.classic.HttpClients;
import org.apache.hc.client5.http.impl.io.PoolingHttpClientConnectionManager;
import org.apache.hc.client5.http.impl.io.PoolingHttpClientConnectionManagerBuilder;
import org.apache.hc.client5.http.ssl.DefaultClientTlsStrategy;
import org.apache.hc.core5.http.io.SocketConfig;
import org.apache.hc.core5.util.Timeout;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.client.ClientHttpRequestFactory;
import org.springframework.http.client.HttpComponentsClientHttpRequestFactory;
import org.springframework.web.client.RestClient;

import javax.net.ssl.SSLContext;
import java.security.NoSuchAlgorithmException;
import java.util.concurrent.TimeUnit;

@RequiredArgsConstructor
@Configuration
public class RestClientConfig {

private final RestTemplateProperties httpProperties;

@Bean
public RestClient restClient(ClientHttpRequestFactory requestFactory) {
return RestClient.builder()
.requestFactory(requestFactory)
.build();
}

@Bean
public HttpComponentsClientHttpRequestFactory requestFactory(HttpClient httpClient) {
final var requestFactory = new HttpComponentsClientHttpRequestFactory();
requestFactory.setHttpClient(httpClient);
return requestFactory;
}

@Bean
public SSLContext sslContext() throws NoSuchAlgorithmException {
return SSLContext.getDefault();
}

@Bean
public PoolingHttpClientConnectionManager connectionManager(SSLContext sslContext) {
return PoolingHttpClientConnectionManagerBuilder.create()
.setTlsSocketStrategy(
DefaultClientTlsStrategy.createDefault()
)
.setDefaultSocketConfig(
SocketConfig.custom()
.setSoTimeout(Timeout.ofMilliseconds(httpProperties.getRequestTimeout()))
.build()
)
.setDefaultConnectionConfig(
ConnectionConfig.custom()
.setConnectTimeout(Timeout.ofMilliseconds(httpProperties.getConnectionTimeout()))
.build()
)
.setMaxConnTotal(httpProperties.getMaxTotalPooling())
.setMaxConnPerRoute(httpProperties.getDefaultMaxPerRoute())
.build();
}

@Bean
public RequestConfig requestConfig() {
return RequestConfig.custom()
.setConnectionRequestTimeout(httpProperties.getRequestTimeout(), TimeUnit.MILLISECONDS)
.setResponseTimeout(httpProperties.getConnectionTimeout(), TimeUnit.MILLISECONDS)
.build();
}

@Bean
public CloseableHttpClient httpClient(PoolingHttpClientConnectionManager connectionManager,
RequestConfig requestConfig) {
return HttpClients.custom()
.setConnectionManager(connectionManager)
.setDefaultRequestConfig(requestConfig)
.disableAutomaticRetries()
.setConnectionManagerShared(true)
.build();
}
}

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,11 @@
import org.springframework.context.annotation.Configuration;
import org.springframework.web.filter.OncePerRequestFilter;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import jakarta.servlet.Filter;
import jakarta.servlet.FilterChain;
import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;

@Configuration
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import org.springframework.context.annotation.Configuration;
import org.springframework.validation.annotation.Validated;

import javax.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotEmpty;

@Getter
@Setter
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import org.springframework.context.annotation.Configuration;
import org.springframework.validation.annotation.Validated;

import javax.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotEmpty;

@Getter
@Setter
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
import org.springframework.core.io.Resource;
import org.springframework.validation.annotation.Validated;

import javax.validation.constraints.NotNull;
import jakarta.validation.constraints.NotNull;

@Configuration
@ConfigurationProperties(prefix = "cds.client.storage")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
import org.springframework.core.io.Resource;
import org.springframework.validation.annotation.Validated;

import javax.validation.constraints.NotNull;
import jakarta.validation.constraints.NotNull;

@Configuration
@ConfigurationProperties(prefix = "hellgate.client.storage")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import org.springframework.stereotype.Component;
import org.springframework.validation.annotation.Validated;

import javax.validation.constraints.NotNull;
import jakarta.validation.constraints.NotNull;

@Getter
@Setter
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import org.springframework.context.annotation.Configuration;
import org.springframework.validation.annotation.Validated;

import javax.validation.constraints.NotNull;
import jakarta.validation.constraints.NotNull;

@Getter
@Setter
Expand Down
Loading