diff --git a/docs/pom.xml b/docs/pom.xml index 20b69fc9..5a032f84 100644 --- a/docs/pom.xml +++ b/docs/pom.xml @@ -19,6 +19,8 @@ spring-cloud-config ${basedir}/.. deploy + + none spring.cloud.config.* diff --git a/pom.xml b/pom.xml index f7b2bcd2..f32e1988 100644 --- a/pom.xml +++ b/pom.xml @@ -73,11 +73,24 @@ ${spring-cloud-commons.version} - software.amazon.awssdk - bom + com.amazonaws + aws-java-sdk-core + ${aws-java-sdk.version} + + + com.amazonaws + aws-java-sdk-s3 + ${aws-java-sdk.version} + + + com.amazonaws + aws-java-sdk-secretsmanager + ${aws-java-sdk.version} + + + com.amazonaws + aws-java-sdk-ssm ${aws-java-sdk.version} - pom - import com.google.apis @@ -105,21 +118,7 @@ ${testcontainers.version} pom import - - - io.micrometer - micrometer-bom - ${micrometer.version} - pom - import - - - io.micrometer - micrometer-tracing-bom - ${micrometer-tracing.version} - pom - import - + com.github.tomakehurst wiremock-jre8 diff --git a/spring-cloud-config-client-tls-tests/pom.xml b/spring-cloud-config-client-tls-tests/pom.xml index f00c8299..1442b1c9 100644 --- a/spring-cloud-config-client-tls-tests/pom.xml +++ b/spring-cloud-config-client-tls-tests/pom.xml @@ -1,6 +1,7 @@ + xmlns="http://maven.apache.org/POM/4.0.0" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 spring-cloud-config-client-tls-tests jar @@ -86,11 +87,7 @@ spring-boot-starter-test test - - org.springframework.cloud - spring-cloud-test-support - test - + org.junit.vintage junit-vintage-engine diff --git a/spring-cloud-config-server/pom.xml b/spring-cloud-config-server/pom.xml index 2dbc6137..a02f864a 100644 --- a/spring-cloud-config-server/pom.xml +++ b/spring-cloud-config-server/pom.xml @@ -98,28 +98,23 @@ true - software.amazon.awssdk - auth + com.amazonaws + aws-java-sdk-core true - software.amazon.awssdk - s3 + com.amazonaws + aws-java-sdk-s3 true - software.amazon.awssdk - aws-core + com.amazonaws + aws-java-sdk-secretsmanager true - software.amazon.awssdk - secretsmanager - true - - - software.amazon.awssdk - ssm + com.amazonaws + aws-java-sdk-ssm true @@ -182,41 +177,6 @@ wiremock-jre8 test - - io.micrometer - micrometer-observation-test - test - - - io.micrometer - micrometer-test - test - - - io.micrometer - micrometer-tracing-test - test - - - io.micrometer - micrometer-tracing-bridge-brave - test - - - io.zipkin.brave - brave-tests - test - - - io.zipkin.reporter2 - zipkin-reporter-brave - test - - - io.zipkin.reporter2 - zipkin-sender-urlconnection - test - diff --git a/spring-cloud-config-server/src/main/java/org/springframework/cloud/config/server/environment/AwsParameterStoreEnvironmentRepository.java b/spring-cloud-config-server/src/main/java/org/springframework/cloud/config/server/environment/AwsParameterStoreEnvironmentRepository.java index ae8edc5b..c9a4868c 100644 --- a/spring-cloud-config-server/src/main/java/org/springframework/cloud/config/server/environment/AwsParameterStoreEnvironmentRepository.java +++ b/spring-cloud-config-server/src/main/java/org/springframework/cloud/config/server/environment/AwsParameterStoreEnvironmentRepository.java @@ -34,6 +34,7 @@ import software.amazon.awssdk.services.ssm.model.Parameter; import org.springframework.cloud.config.environment.Environment; import org.springframework.cloud.config.environment.PropertySource; import org.springframework.cloud.config.server.config.ConfigServerProperties; +import org.springframework.core.Ordered; import org.springframework.util.StringUtils; import static org.springframework.cloud.config.server.environment.AwsParameterStoreEnvironmentProperties.DEFAULT_PATH_SEPARATOR; @@ -41,7 +42,7 @@ import static org.springframework.cloud.config.server.environment.AwsParameterSt /** * @author Iulian Antohe */ -public class AwsParameterStoreEnvironmentRepository implements EnvironmentRepository { +public class AwsParameterStoreEnvironmentRepository implements EnvironmentRepository, Ordered { private final SsmClient awsSsmClient; @@ -49,11 +50,14 @@ public class AwsParameterStoreEnvironmentRepository implements EnvironmentReposi private final AwsParameterStoreEnvironmentProperties environmentProperties; + private final int order; + public AwsParameterStoreEnvironmentRepository(SsmClient awsSsmClient, ConfigServerProperties configServerProperties, AwsParameterStoreEnvironmentProperties environmentProperties) { this.awsSsmClient = awsSsmClient; this.configServerProperties = configServerProperties; this.environmentProperties = environmentProperties; + this.order = environmentProperties.getOrder(); } @Override @@ -164,4 +168,9 @@ public class AwsParameterStoreEnvironmentRepository implements EnvironmentReposi } } + @Override + public int getOrder() { + return order; + } + } diff --git a/spring-cloud-config-server/src/test/java/org/springframework/cloud/config/server/environment/AwsParameterStoreEnvironmentRepositoryTests.java b/spring-cloud-config-server/src/test/java/org/springframework/cloud/config/server/environment/AwsParameterStoreEnvironmentRepositoryTests.java index 3e869ea0..ace29376 100644 --- a/spring-cloud-config-server/src/test/java/org/springframework/cloud/config/server/environment/AwsParameterStoreEnvironmentRepositoryTests.java +++ b/spring-cloud-config-server/src/test/java/org/springframework/cloud/config/server/environment/AwsParameterStoreEnvironmentRepositoryTests.java @@ -40,6 +40,7 @@ import software.amazon.awssdk.services.ssm.model.ParameterType; import org.springframework.cloud.config.environment.Environment; import org.springframework.cloud.config.environment.PropertySource; import org.springframework.cloud.config.server.config.ConfigServerProperties; +import org.springframework.core.Ordered; import org.springframework.util.StringUtils; import static org.apache.commons.lang3.RandomStringUtils.randomAlphabetic; @@ -800,4 +801,16 @@ public class AwsParameterStoreEnvironmentRepositoryTests { return Base64.getEncoder().encodeToString(random.getBytes(StandardCharsets.UTF_8)); } + @Test + public void testOrderPopulation() { + int expectedOrder = Ordered.HIGHEST_PRECEDENCE; + AwsParameterStoreEnvironmentRepositoryFactory factory = new AwsParameterStoreEnvironmentRepositoryFactory( + new ConfigServerProperties()); + AwsParameterStoreEnvironmentProperties properties = new AwsParameterStoreEnvironmentProperties(); + properties.setOrder(expectedOrder); + AwsParameterStoreEnvironmentRepository repository = factory.build(properties); + int actualOrder = repository.getOrder(); + assertThat(actualOrder).isEqualTo(expectedOrder); + } + }