Skip to content

Commit

Permalink
Merge branch 'main' of github.com:awspring/spring-cloud-aws into awsp…
Browse files Browse the repository at this point in the history
  • Loading branch information
Forfend committed Dec 9, 2024
2 parents 572565f + 716c9d4 commit 64ee4dc
Show file tree
Hide file tree
Showing 8 changed files with 38 additions and 26 deletions.
2 changes: 1 addition & 1 deletion docs/src/main/asciidoc/docker-compose.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ Maven coordinates, using <<index.adoc#bill-of-materials, Spring Cloud AWS BOM>>:
</dependency>
----

For more information about Spring Docker Compose support please refer to https://docs.spring.io/spring-boot/reference/features/docker-compose.html[official Spring documentation]
For more information about Spring Docker Compose support please refer to https://docs.spring.io/spring-boot/reference/features/dev-services.html#features.dev-services.docker-compose[official Spring documentation]

=== Example docker-compose.yaml file

Expand Down
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-build</artifactId>
<version>4.2.0-M2</version>
<version>4.2.0</version>
<relativePath/><!-- lookup parent from repository -->
</parent>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,6 @@
import java.util.Optional;
import org.springframework.beans.factory.ObjectProvider;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.condition.*;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.boot.context.properties.PropertyMapper;
Expand All @@ -53,7 +52,7 @@
import software.amazon.encryption.s3.S3EncryptionClient;

/**
* {@link EnableAutoConfiguration} for {@link S3Client} and {@link S3ProtocolResolver}.
* {@link AutoConfiguration} for {@link S3Client} and {@link S3ProtocolResolver}.
*
* @author Maciej Walkowiak
* @author Matej Nedic
Expand Down
2 changes: 1 addition & 1 deletion spring-cloud-aws-dependencies/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
<amazon.dax.version>2.0.5</amazon.dax.version>
<amazon.encryption.s3.version>3.2.3</amazon.encryption.s3.version>
<maven-gpg-plugin.version>1.6</maven-gpg-plugin.version>
<spring-cloud-commons.version>4.2.0-M2</spring-cloud-commons.version>
<spring-cloud-commons.version>4.2.0</spring-cloud-commons.version>
<jakarta.mail.version>2.1.0</jakarta.mail.version>
<eclipse.jakarta.mail.version>1.0.0</eclipse.jakarta.mail.version>
<bytebuddy.version>1.14.9</bytebuddy.version>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
import org.springframework.context.annotation.Bean;
import org.springframework.modulith.events.ApplicationModuleListener;
import org.springframework.modulith.events.Externalized;
import org.springframework.test.context.DynamicPropertyRegistrar;
import org.springframework.test.context.DynamicPropertyRegistry;
import org.springframework.transaction.annotation.Transactional;
import org.testcontainers.containers.localstack.LocalStackContainer;
Expand Down Expand Up @@ -55,16 +56,17 @@ class SnsEventPublicationIntegrationTests {
static class TestConfiguration {

@Bean
LocalStackContainer localStackContainer(DynamicPropertyRegistry registry) {

var localstack = new LocalStackContainer(DockerImageName.parse("localstack/localstack:3.8.1"));

registry.add("spring.cloud.aws.endpoint", localstack::getEndpoint);
registry.add("spring.cloud.aws.credentials.access-key", localstack::getAccessKey);
registry.add("spring.cloud.aws.credentials.secret-key", localstack::getSecretKey);
registry.add("spring.cloud.aws.region.static", localstack::getRegion);

return localstack;
DynamicPropertyRegistrar dynamicPropertyRegistrar(LocalStackContainer localstack) {
return registry -> {
registry.add("spring.cloud.aws.endpoint", localstack::getEndpoint);
registry.add("spring.cloud.aws.credentials.access-key", localstack::getAccessKey);
registry.add("spring.cloud.aws.credentials.secret-key", localstack::getSecretKey);
registry.add("spring.cloud.aws.region.static", localstack::getRegion);
};
}
@Bean
LocalStackContainer localStackContainer() {
return new LocalStackContainer(DockerImageName.parse("localstack/localstack:3.8.1"));
}

@Bean
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
import org.springframework.context.annotation.Bean;
import org.springframework.modulith.events.ApplicationModuleListener;
import org.springframework.modulith.events.Externalized;
import org.springframework.test.context.DynamicPropertyRegistrar;
import org.springframework.test.context.DynamicPropertyRegistry;
import org.springframework.transaction.annotation.Transactional;
import org.testcontainers.containers.localstack.LocalStackContainer;
Expand All @@ -53,16 +54,17 @@ class SqsEventPublicationIntegrationTests {
static class TestConfiguration {

@Bean
LocalStackContainer localStackContainer(DynamicPropertyRegistry registry) {

var localstack = new LocalStackContainer(DockerImageName.parse("localstack/localstack:3.8.1"));

registry.add("spring.cloud.aws.endpoint", localstack::getEndpoint);
registry.add("spring.cloud.aws.credentials.access-key", localstack::getAccessKey);
registry.add("spring.cloud.aws.credentials.secret-key", localstack::getSecretKey);
registry.add("spring.cloud.aws.region.static", localstack::getRegion);

return localstack;
DynamicPropertyRegistrar dynamicPropertyRegistrar(LocalStackContainer localstack) {
return registry -> {
registry.add("spring.cloud.aws.endpoint", localstack::getEndpoint);
registry.add("spring.cloud.aws.credentials.access-key", localstack::getAccessKey);
registry.add("spring.cloud.aws.credentials.secret-key", localstack::getSecretKey);
registry.add("spring.cloud.aws.region.static", localstack::getRegion);
};
}
@Bean
LocalStackContainer localStackContainer() {
return new LocalStackContainer(DockerImageName.parse("localstack/localstack:3.8.1"));
}

@Bean
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
import org.springframework.core.io.Resource;
import org.springframework.core.io.ResourceLoader;
import org.springframework.lang.Nullable;
import org.springframework.util.Assert;
import software.amazon.awssdk.services.s3.S3Client;

/**
Expand Down Expand Up @@ -54,6 +55,14 @@ public class S3ProtocolResolver implements ProtocolResolver, ResourceLoaderAware
public S3ProtocolResolver() {
}

// for direct usages outside of Spring context, when BeanFactory is not available
public S3ProtocolResolver(S3Client s3Client, S3OutputStreamProvider s3OutputStreamProvider) {
Assert.notNull(s3Client, "s3Client is required");
Assert.notNull(s3OutputStreamProvider, "s3OutputStreamProvider is required");
this.s3Client = s3Client;
this.s3OutputStreamProvider = s3OutputStreamProvider;
}

// only for testing
S3ProtocolResolver(@Nullable S3Client s3Client) {
this.s3Client = s3Client;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
import software.amazon.awssdk.services.s3.S3Client;

/**
* Tests for {@link S3ProtocolResolverTests}.
* Tests for {@link S3ProtocolResolver}.
*
* @author Maciej Walkowiak
*/
Expand Down

0 comments on commit 64ee4dc

Please sign in to comment.