GH-268: Update Boot 2.6.7 / Spring Cloud 2021.0.2 (#269)
Also updates other dependencies accordingly. Fixes #268
This commit is contained in:
@@ -36,6 +36,43 @@ $$directory$$:: $$The directory to poll for new files.$$ *($$File$$, default: `$
|
||||
$$filename-pattern$$:: $$A simple ant pattern to match files.$$ *($$String$$, default: `$$<none>$$`)*
|
||||
$$filename-regex$$:: $$A regex pattern to match files.$$ *($$Pattern$$, default: `$$<none>$$`)*
|
||||
$$prevent-duplicates$$:: $$Set to true to include an AcceptOnceFileListFilter which prevents duplicates.$$ *($$Boolean$$, default: `$$true$$`)*
|
||||
|
||||
=== metadata.store.dynamo-db
|
||||
|
||||
$$create-delay$$:: $$Delay between create table retries.$$ *($$Integer$$, default: `$$1$$`)*
|
||||
$$create-retries$$:: $$Retry number for create table request.$$ *($$Integer$$, default: `$$25$$`)*
|
||||
$$read-capacity$$:: $$Read capacity on the table.$$ *($$Long$$, default: `$$1$$`)*
|
||||
$$table$$:: $$Table name for metadata.$$ *($$String$$, default: `$$<none>$$`)*
|
||||
$$time-to-live$$:: $$TTL for table entries.$$ *($$Integer$$, default: `$$<none>$$`)*
|
||||
$$write-capacity$$:: $$Write capacity on the table.$$ *($$Long$$, default: `$$1$$`)*
|
||||
|
||||
=== metadata.store.gemfire
|
||||
|
||||
$$region$$:: $$Gemfire region name for metadata.$$ *($$String$$, default: `$$<none>$$`)*
|
||||
|
||||
=== metadata.store.jdbc
|
||||
|
||||
$$region$$:: $$Unique grouping identifier for messages persisted with this store.$$ *($$String$$, default: `$$DEFAULT$$`)*
|
||||
$$table-prefix$$:: $$Prefix for the custom table name.$$ *($$String$$, default: `$$<none>$$`)*
|
||||
|
||||
=== metadata.store.mongo-db
|
||||
|
||||
$$collection$$:: $$MongoDB collection name for metadata.$$ *($$String$$, default: `$$metadataStore$$`)*
|
||||
|
||||
=== metadata.store.redis
|
||||
|
||||
$$key$$:: $$Redis key for metadata.$$ *($$String$$, default: `$$<none>$$`)*
|
||||
|
||||
=== metadata.store
|
||||
|
||||
$$type$$:: $$Indicates the type of metadata store to configure (default is 'memory'). You must include the corresponding Spring Integration dependency to use a persistent store.$$ *($$StoreType$$, default: `$$<none>$$`, possible values: `mongodb`,`gemfire`,`redis`,`dynamodb`,`jdbc`,`zookeeper`,`hazelcast`,`memory`)*
|
||||
|
||||
=== metadata.store.zookeeper
|
||||
|
||||
$$connect-string$$:: $$Zookeeper connect string in form HOST:PORT.$$ *($$String$$, default: `$$127.0.0.1:2181$$`)*
|
||||
$$encoding$$:: $$Encoding to use when storing data in Zookeeper.$$ *($$Charset$$, default: `$$UTF-8$$`)*
|
||||
$$retry-interval$$:: $$Retry interval for Zookeeper operations in milliseconds.$$ *($$Integer$$, default: `$$1000$$`)*
|
||||
$$root$$:: $$Root node - store entries are children of this node.$$ *($$String$$, default: `$$/SpringIntegration-MetadataStore$$`)*
|
||||
//end::configuration-properties[]
|
||||
|
||||
//end::ref-doc[]
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
<groupId>org.springframework.cloud.stream.app</groupId>
|
||||
<artifactId>stream-applications-core</artifactId>
|
||||
<version>3.2.1-SNAPSHOT</version>
|
||||
<relativePath/>
|
||||
</parent>
|
||||
|
||||
<dependencies>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2020-2021 the original author or authors.
|
||||
* Copyright 2020-2022 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -20,24 +20,37 @@ import org.junit.jupiter.api.AfterAll;
|
||||
import org.junit.jupiter.api.BeforeAll;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import org.springframework.boot.WebApplicationType;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
import org.springframework.boot.builder.SpringApplicationBuilder;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.cloud.fn.supplier.mail.MailSupplierConfiguration;
|
||||
import org.springframework.cloud.stream.binder.test.OutputDestination;
|
||||
import org.springframework.cloud.stream.binder.test.TestChannelBinderConfiguration;
|
||||
import org.springframework.context.ConfigurableApplicationContext;
|
||||
import org.springframework.context.annotation.Import;
|
||||
import org.springframework.integration.test.mail.TestMailServer;
|
||||
import org.springframework.messaging.Message;
|
||||
import org.springframework.test.annotation.DirtiesContext;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
|
||||
/**
|
||||
* Lightweight integration test to verify using {@link MailSupplierConfiguration} in a {@code @SpringBootApplication}.
|
||||
*
|
||||
* @author Soby Chacko
|
||||
* @author Chris Bono
|
||||
*/
|
||||
public class MailSourceTests {
|
||||
@SpringBootTest(
|
||||
webEnvironment = SpringBootTest.WebEnvironment.NONE,
|
||||
properties = {
|
||||
"spring.cloud.function.definition=mailSupplier",
|
||||
"mail.supplier.url=imap://user:pw@localhost:${test.mail.server.port}/INBOX",
|
||||
"mail.supplier.mark-as-read=true",
|
||||
"mail.supplier.delete=false",
|
||||
"mail.supplier.user-flag=testSIUserFlag",
|
||||
"mail.supplier.java-mail-properties=mail.imap.socketFactory.fallback=true\\n mail.store.protocol=imap\\n mail.debug=true"
|
||||
})
|
||||
@DirtiesContext
|
||||
class MailSourceTests {
|
||||
|
||||
private static TestMailServer.MailServer MAIL_SERVER;
|
||||
|
||||
@@ -64,27 +77,14 @@ public class MailSourceTests {
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testMailSource() throws Exception {
|
||||
try (ConfigurableApplicationContext context = new SpringApplicationBuilder(
|
||||
TestChannelBinderConfiguration
|
||||
.getCompleteConfiguration(MailSourceTestApplication.class))
|
||||
.web(WebApplicationType.NONE)
|
||||
.run("--spring.cloud.function.definition=mailSupplier",
|
||||
"--mail.supplier.url=imap://user:pw@localhost:${test.mail.server.port}/INBOX",
|
||||
"--mail.supplier.mark-as-read=true",
|
||||
"--mail.supplier.delete=false",
|
||||
"--mail.supplier.user-flag=testSIUserFlag",
|
||||
"--mail.supplier.java-mail-properties=mail.imap.socketFactory.fallback=true\\n mail.store.protocol=imap\\n mail.debug=true")) {
|
||||
|
||||
OutputDestination target = context.getBean(OutputDestination.class);
|
||||
Message<byte[]> sourceMessage = target.receive(10000, "mailSupplier-out-0");
|
||||
final String actual = new String(sourceMessage.getPayload());
|
||||
assertThat(actual.endsWith("\r\n\r\nfoo\r\n\r\n"));
|
||||
}
|
||||
void mailMessagesAreSuppliedToOutputDestination(@Autowired OutputDestination target) {
|
||||
Message<byte[]> sourceMessage = target.receive(10000, "mailSupplier-out-0");
|
||||
final String actual = new String(sourceMessage.getPayload());
|
||||
assertThat(actual.endsWith("\r\n\r\nfoo\r\n\r\n")).isTrue();
|
||||
}
|
||||
|
||||
@SpringBootApplication
|
||||
@Import(MailSupplierConfiguration.class)
|
||||
@Import({TestChannelBinderConfiguration.class, MailSupplierConfiguration.class})
|
||||
public static class MailSourceTestApplication {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,20 +18,19 @@
|
||||
<properties>
|
||||
<revision>3.2.1-SNAPSHOT</revision>
|
||||
<stream-apps-core.version>${revision}</stream-apps-core.version>
|
||||
<java-functions.version>1.2.0</java-functions.version>
|
||||
<java-functions.version>1.2.1-SNAPSHOT</java-functions.version>
|
||||
<apps.base-image>springcloud/baseimage:1.0.1</apps.base-image>
|
||||
<mockserver.version>5.10</mockserver.version>
|
||||
<spring-cloud-stream-dependencies.version>3.2.2</spring-cloud-stream-dependencies.version>
|
||||
<spring-cloud-stream.version>3.2.2</spring-cloud-stream.version>
|
||||
<mockserver.version>5.13.2</mockserver.version>
|
||||
<spring-cloud-stream-dependencies.version>3.2.3</spring-cloud-stream-dependencies.version>
|
||||
<spring-cloud-stream.version>3.2.3</spring-cloud-stream.version>
|
||||
<spring-cloud-dataflow-apps-generator-plugin.version>1.0.7-SNAPSHOT</spring-cloud-dataflow-apps-generator-plugin.version>
|
||||
<spring-cloud-dataflow-apps-docs-plugin.version>1.0.7-SNAPSHOT</spring-cloud-dataflow-apps-docs-plugin.version>
|
||||
<spring-cloud-dataflow-apps-metadata-plugin.version>1.0.7-SNAPSHOT</spring-cloud-dataflow-apps-metadata-plugin.version>
|
||||
<java-cfenv-boot.version>2.1.2.RELEASE</java-cfenv-boot.version>
|
||||
<prometheus-rsocket.version>1.3.0</prometheus-rsocket.version>
|
||||
<!-- Boot 2.4.x needs wavefront-spring-boot version 2.1.0-RC1+ -->
|
||||
<wavefront-spring-boot.version>2.2.0</wavefront-spring-boot.version>
|
||||
<spring-cloud.version>2021.0.1</spring-cloud.version>
|
||||
<spring-cloud-starters.version>3.1.1</spring-cloud-starters.version>
|
||||
<java-cfenv-boot.version>2.4.0</java-cfenv-boot.version>
|
||||
<prometheus-rsocket.version>1.4.0</prometheus-rsocket.version>
|
||||
<wavefront-spring-boot.version>2.2.2</wavefront-spring-boot.version>
|
||||
<spring-cloud.version>2021.0.2</spring-cloud.version>
|
||||
<spring-cloud-starters.version>3.1.2</spring-cloud-starters.version>
|
||||
</properties>
|
||||
|
||||
<modules>
|
||||
|
||||
@@ -22,7 +22,6 @@
|
||||
<groupId>org.springframework.cloud.stream.app</groupId>
|
||||
<artifactId>stream-applications-core</artifactId>
|
||||
<version>${revision}</version>
|
||||
<relativePath>..</relativePath>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
|
||||
@@ -6,7 +6,6 @@
|
||||
<artifactId>stream-applications-core</artifactId>
|
||||
<groupId>org.springframework.cloud.stream.app</groupId>
|
||||
<version>${revision}</version>
|
||||
<relativePath>..</relativePath>
|
||||
</parent>
|
||||
<properties>
|
||||
<jmockit.version>1.49</jmockit.version>
|
||||
|
||||
@@ -5,7 +5,6 @@
|
||||
<artifactId>stream-applications-core</artifactId>
|
||||
<groupId>org.springframework.cloud.stream.app</groupId>
|
||||
<version>${revision}</version>
|
||||
<relativePath>..</relativePath>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
|
||||
@@ -6,7 +6,6 @@
|
||||
<artifactId>stream-applications-core</artifactId>
|
||||
<groupId>org.springframework.cloud.stream.app</groupId>
|
||||
<version>${revision}</version>
|
||||
<relativePath>..</relativePath>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
|
||||
@@ -5,7 +5,6 @@
|
||||
<artifactId>stream-applications-core</artifactId>
|
||||
<groupId>org.springframework.cloud.stream.app</groupId>
|
||||
<version>${revision}</version>
|
||||
<relativePath>..</relativePath>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
|
||||
@@ -934,7 +934,7 @@ public final class EmbeddedEngine implements DebeziumEngine<SourceRecord> {
|
||||
public synchronized void markProcessed(SourceRecord record) throws InterruptedException {
|
||||
task.commitRecord(record);
|
||||
recordsSinceLastCommit += 1;
|
||||
offsetWriter.offset(record.sourcePartition(), record.sourceOffset());
|
||||
offsetWriter.offset((Map<String, Object>) record.sourcePartition(), (Map<String, Object>) record.sourceOffset());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -8,7 +8,6 @@
|
||||
<groupId>org.springframework.cloud.fn</groupId>
|
||||
<artifactId>java-functions-parent</artifactId>
|
||||
<version>${revision}</version>
|
||||
<relativePath>..</relativePath>
|
||||
</parent>
|
||||
|
||||
<artifactId>function-dependencies</artifactId>
|
||||
|
||||
@@ -8,14 +8,13 @@
|
||||
<groupId>org.springframework.cloud.fn</groupId>
|
||||
<artifactId>java-functions-parent</artifactId>
|
||||
<version>${revision}</version>
|
||||
<relativePath>..</relativePath>
|
||||
</parent>
|
||||
|
||||
<artifactId>spring-functions-parent</artifactId>
|
||||
<packaging>pom</packaging>
|
||||
|
||||
<properties>
|
||||
<spring-cloud-function.version>3.2.2</spring-cloud-function.version>
|
||||
<spring-cloud-function.version>3.2.3</spring-cloud-function.version>
|
||||
<spring-cloud-fn.version>${project.version}</spring-cloud-fn.version>
|
||||
</properties>
|
||||
|
||||
|
||||
@@ -40,12 +40,12 @@
|
||||
<nohttp-checkstyle.version>0.0.2.RELEASE</nohttp-checkstyle.version>
|
||||
<disable.nohttp.checks>true</disable.nohttp.checks>
|
||||
<spring-javaformat-checkstyle.version>0.0.7</spring-javaformat-checkstyle.version>
|
||||
<spring-boot.version>2.6.3</spring-boot.version>
|
||||
<spring-kafka.version>2.8.2</spring-kafka.version>
|
||||
<spring-rabbit.version>2.4.2</spring-rabbit.version>
|
||||
<spring-cloud-function.version>3.2.2</spring-cloud-function.version>
|
||||
<spring-cloud-starters.version>3.1.1</spring-cloud-starters.version>
|
||||
<spring-geode.version>1.6.4</spring-geode.version>
|
||||
<spring-boot.version>2.6.7</spring-boot.version>
|
||||
<spring-kafka.version>2.8.6</spring-kafka.version>
|
||||
<spring-rabbit.version>2.4.5</spring-rabbit.version>
|
||||
<spring-cloud-function.version>3.2.3</spring-cloud-function.version>
|
||||
<spring-cloud-starters.version>3.1.2</spring-cloud-starters.version>
|
||||
<spring-geode.version>1.6.7</spring-geode.version>
|
||||
<test-containers.version>1.16.3</test-containers.version>
|
||||
<maven-flatten-plugin.version>1.2.5</maven-flatten-plugin.version>
|
||||
<maven-surefire-plugin.version>2.22.2</maven-surefire-plugin.version>
|
||||
|
||||
Reference in New Issue
Block a user