diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 2bbdd2280..021e6f5f1 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -45,6 +45,11 @@ jobs:
DAPR_REF:
TOXIPROXY_URL: https://github.com/Shopify/toxiproxy/releases/download/v2.5.0/toxiproxy-server-linux-amd64
steps:
+ - name: Install Stable Docker
+ id: setup_docker
+ uses: docker/setup-docker-action@v4
+ - name: Check Docker version
+ run: docker version
- uses: actions/checkout@v4
- name: Set up OpenJDK ${{ env.JDK_VER }}
uses: actions/setup-java@v4
@@ -113,6 +118,8 @@ jobs:
run: ./mvnw compile -B -q
- name: Unit tests
run: ./mvnw test # making it temporarily verbose.
+ env:
+ DOCKER_HOST: ${{steps.setup_docker.outputs.sock}}
- name: Codecov
uses: codecov/codecov-action@v5.4.0
- name: Install jars
@@ -120,6 +127,8 @@ jobs:
- name: Integration tests using spring boot version ${{ matrix.spring-boot-version }}
id: integration_tests
run: PRODUCT_SPRING_BOOT_VERSION=${{ matrix.spring-boot-version }} ./mvnw -B -Pintegration-tests verify
+ env:
+ DOCKER_HOST: ${{steps.setup_docker.outputs.sock}}
- name: Upload test report for sdk
uses: actions/upload-artifact@v4
with:
diff --git a/.github/workflows/validate.yml b/.github/workflows/validate.yml
index 6711b07c6..b8b478268 100644
--- a/.github/workflows/validate.yml
+++ b/.github/workflows/validate.yml
@@ -49,6 +49,11 @@ jobs:
with:
distribution: 'temurin'
java-version: ${{ env.JDK_VER }}
+ - name: Install Stable Docker
+ id: setup_docker
+ uses: docker/setup-docker-action@v4
+ - name: Check Docker version
+ run: docker version
- name: Set up Dapr CLI
run: wget -q ${{ env.DAPR_INSTALL_URL }} -O - | /bin/bash -s ${{ env.DAPR_CLI_VER }}
- name: Set up Go ${{ env.GOVER }}
@@ -108,63 +113,95 @@ jobs:
run: ./mvnw compile -q
- name: Install jars
run: ./mvnw install -q
+ env:
+ DOCKER_HOST: ${{steps.setup_docker.outputs.sock}}
- name: Validate invoke http example
working-directory: ./examples
run: |
mm.py ./src/main/java/io/dapr/examples/invoke/http/README.md
+ env:
+ DOCKER_HOST: ${{steps.setup_docker.outputs.sock}}
- name: Validate invoke grpc example
working-directory: ./examples
run: |
mm.py ./src/main/java/io/dapr/examples/invoke/grpc/README.md
+ env:
+ DOCKER_HOST: ${{steps.setup_docker.outputs.sock}}
- name: Validate tracing example
working-directory: ./examples
run: |
mm.py ./src/main/java/io/dapr/examples/tracing/README.md
+ env:
+ DOCKER_HOST: ${{steps.setup_docker.outputs.sock}}
- name: Validate expection handling example
working-directory: ./examples
run: |
mm.py ./src/main/java/io/dapr/examples/exception/README.md
+ env:
+ DOCKER_HOST: ${{steps.setup_docker.outputs.sock}}
- name: Validate state example
working-directory: ./examples
run: |
mm.py ./src/main/java/io/dapr/examples/state/README.md
+ env:
+ DOCKER_HOST: ${{steps.setup_docker.outputs.sock}}
- name: Validate pubsub example
working-directory: ./examples
run: |
mm.py ./src/main/java/io/dapr/examples/pubsub/README.md
+ env:
+ DOCKER_HOST: ${{steps.setup_docker.outputs.sock}}
- name: Validate bindings HTTP example
working-directory: ./examples
run: |
mm.py ./src/main/java/io/dapr/examples/bindings/http/README.md
+ env:
+ DOCKER_HOST: ${{steps.setup_docker.outputs.sock}}
- name: Validate secrets example
working-directory: ./examples
run: |
mm.py ./src/main/java/io/dapr/examples/secrets/README.md
+ env:
+ DOCKER_HOST: ${{steps.setup_docker.outputs.sock}}
- name: Validate unit testing example
working-directory: ./examples
run: |
mm.py ./src/main/java/io/dapr/examples/unittesting/README.md
+ env:
+ DOCKER_HOST: ${{steps.setup_docker.outputs.sock}}
- name: Validate Configuration API example
working-directory: ./examples
run: |
mm.py ./src/main/java/io/dapr/examples/configuration/README.md
+ env:
+ DOCKER_HOST: ${{steps.setup_docker.outputs.sock}}
- name: Validate actors example
working-directory: ./examples
run: |
mm.py ./src/main/java/io/dapr/examples/actors/README.md
+ env:
+ DOCKER_HOST: ${{steps.setup_docker.outputs.sock}}
- name: Validate query state HTTP example
working-directory: ./examples
run: |
mm.py ./src/main/java/io/dapr/examples/querystate/README.md
+ env:
+ DOCKER_HOST: ${{steps.setup_docker.outputs.sock}}
- name: Validate workflows example
working-directory: ./examples
run: |
mm.py ./src/main/java/io/dapr/examples/workflows/README.md
+ env:
+ DOCKER_HOST: ${{steps.setup_docker.outputs.sock}}
- name: Validate streaming subscription example
working-directory: ./examples
run: |
mm.py ./src/main/java/io/dapr/examples/pubsub/stream/README.md
+ env:
+ DOCKER_HOST: ${{steps.setup_docker.outputs.sock}}
- name: Validate Spring Boot examples
working-directory: ./spring-boot-examples
run: |
- mm.py README.md
+ mm.py README.md
+ env:
+ DOCKER_HOST: ${{steps.setup_docker.outputs.sock}}
diff --git a/dapr-spring/pom.xml b/dapr-spring/pom.xml
index 04f59acaa..fe4ebaa17 100644
--- a/dapr-spring/pom.xml
+++ b/dapr-spring/pom.xml
@@ -32,6 +32,8 @@
11
11
11
+ 1.19.8
+ 5.10.2
@@ -43,6 +45,31 @@
pom
import
+
+ org.junit.jupiter
+ junit-jupiter-api
+ ${junit.version}
+
+
+ org.junit.jupiter
+ junit-jupiter-params
+ ${junit.version}
+
+
+ org.junit.jupiter
+ junit-jupiter-engine
+ ${junit.version}
+
+
+ org.junit.jupiter
+ junit-jupiter
+ ${junit.version}
+
+
+ org.testcontainers
+ junit-jupiter
+ ${testcontainers.version}
+
@@ -73,6 +100,7 @@
org.springframework.boot
spring-boot-configuration-processor
+ ${springboot.version}
true
@@ -80,6 +108,7 @@
org.springframework.boot
spring-boot-starter-test
+ ${springboot.version}
test
diff --git a/examples/src/main/java/io/dapr/examples/workflows/README.md b/examples/src/main/java/io/dapr/examples/workflows/README.md
index 4cd4c135a..047f1d744 100644
--- a/examples/src/main/java/io/dapr/examples/workflows/README.md
+++ b/examples/src/main/java/io/dapr/examples/workflows/README.md
@@ -226,13 +226,13 @@ public class CountWordsActivity implements WorkflowActivity {
@Override
public Object run(WorkflowActivityContext ctx) {
Logger logger = LoggerFactory.getLogger(ToUpperCaseActivity.class);
- logger.info("Starting Activity: " + ctx.getName());
+ logger.info("Starting Activity: {}", ctx.getName());
String input = ctx.getInput(String.class);
StringTokenizer tokenizer = new StringTokenizer(input);
int result = tokenizer.countTokens();
- logger.info("Activity returned: " + result);
+ logger.info("Activity returned: {}.", result);
logger.info("Activity finished");
return result;
@@ -244,10 +244,11 @@ name: Run Chaining Pattern workflow
match_order: none
output_match_mode: substring
expected_stdout_lines:
- - 'Activity returned: 2'
- - 'Activity returned: 9'
- - 'Activity returned: 21'
- - 'Activity returned: 17'
+ - 'Activity returned: 2.'
+ - 'Activity returned: 9.'
+ - 'Activity returned: 21.'
+ - 'Activity returned: 17.'
+ - 'Activity returned: 11.'
- 'Workflow finished with result: 60'
background: true
sleep: 60
@@ -270,19 +271,19 @@ Now you can see the logs from worker:
```text
== APP == 2023-11-07 14:52:03,075 {HH:mm:ss.SSS} [main] INFO io.dapr.workflows.WorkflowContext - Starting Workflow: io.dapr.examples.workflows.faninout.DemoFanInOutWorkflow
== APP == 2023-11-07 14:52:03,144 {HH:mm:ss.SSS} [main] INFO i.d.e.w.faninout.CountWordsActivity - Starting Activity: io.dapr.examples.workflows.faninout.CountWordsActivity
-== APP == 2023-11-07 14:52:03,147 {HH:mm:ss.SSS} [main] INFO i.d.e.w.faninout.CountWordsActivity - Activity returned: 2
+== APP == 2023-11-07 14:52:03,147 {HH:mm:ss.SSS} [main] INFO i.d.e.w.faninout.CountWordsActivity - Activity returned: 2.
== APP == 2023-11-07 14:52:03,148 {HH:mm:ss.SSS} [main] INFO i.d.e.w.faninout.CountWordsActivity - Activity finished
== APP == 2023-11-07 14:52:03,152 {HH:mm:ss.SSS} [main] INFO i.d.e.w.faninout.CountWordsActivity - Starting Activity: io.dapr.examples.workflows.faninout.CountWordsActivity
-== APP == 2023-11-07 14:52:03,152 {HH:mm:ss.SSS} [main] INFO i.d.e.w.faninout.CountWordsActivity - Activity returned: 9
+== APP == 2023-11-07 14:52:03,152 {HH:mm:ss.SSS} [main] INFO i.d.e.w.faninout.CountWordsActivity - Activity returned: 9.
== APP == 2023-11-07 14:52:03,152 {HH:mm:ss.SSS} [main] INFO i.d.e.w.faninout.CountWordsActivity - Activity finished
== APP == 2023-11-07 14:52:03,167 {HH:mm:ss.SSS} [main] INFO i.d.e.w.faninout.CountWordsActivity - Starting Activity: io.dapr.examples.workflows.faninout.CountWordsActivity
-== APP == 2023-11-07 14:52:03,167 {HH:mm:ss.SSS} [main] INFO i.d.e.w.faninout.CountWordsActivity - Activity returned: 21
+== APP == 2023-11-07 14:52:03,167 {HH:mm:ss.SSS} [main] INFO i.d.e.w.faninout.CountWordsActivity - Activity returned: 21.
== APP == 2023-11-07 14:52:03,167 {HH:mm:ss.SSS} [main] INFO i.d.e.w.faninout.CountWordsActivity - Activity finished
== APP == 2023-11-07 14:52:03,170 {HH:mm:ss.SSS} [main] INFO i.d.e.w.faninout.CountWordsActivity - Starting Activity: io.dapr.examples.workflows.faninout.CountWordsActivity
-== APP == 2023-11-07 14:52:03,170 {HH:mm:ss.SSS} [main] INFO i.d.e.w.faninout.CountWordsActivity - Activity returned: 17
+== APP == 2023-11-07 14:52:03,170 {HH:mm:ss.SSS} [main] INFO i.d.e.w.faninout.CountWordsActivity - Activity returned: 17.
== APP == 2023-11-07 14:52:03,170 {HH:mm:ss.SSS} [main] INFO i.d.e.w.faninout.CountWordsActivity - Activity finished
== APP == 2023-11-07 14:52:03,173 {HH:mm:ss.SSS} [main] INFO i.d.e.w.faninout.CountWordsActivity - Starting Activity: io.dapr.examples.workflows.faninout.CountWordsActivity
-== APP == 2023-11-07 14:52:03,173 {HH:mm:ss.SSS} [main] INFO i.d.e.w.faninout.CountWordsActivity - Activity returned: 11
+== APP == 2023-11-07 14:52:03,173 {HH:mm:ss.SSS} [main] INFO i.d.e.w.faninout.CountWordsActivity - Activity returned: 11.
== APP == 2023-11-07 14:52:03,174 {HH:mm:ss.SSS} [main] INFO i.d.e.w.faninout.CountWordsActivity - Activity finished
== APP == 2023-11-07 14:52:03,212 {HH:mm:ss.SSS} [main] INFO io.dapr.workflows.WorkflowContext - Workflow finished with result: 60
```
@@ -538,4 +539,4 @@ The log from client:
```text
Started a new child-workflow model workflow with instance ID: c2fb9c83-435b-4b55-bdf1-833b39366cfb
workflow instance with ID: c2fb9c83-435b-4b55-bdf1-833b39366cfb completed with result: !wolfkroW rpaD olleH
-```
\ No newline at end of file
+```
diff --git a/examples/src/main/java/io/dapr/examples/workflows/faninout/CountWordsActivity.java b/examples/src/main/java/io/dapr/examples/workflows/faninout/CountWordsActivity.java
index 654b4e884..cf3f63720 100644
--- a/examples/src/main/java/io/dapr/examples/workflows/faninout/CountWordsActivity.java
+++ b/examples/src/main/java/io/dapr/examples/workflows/faninout/CountWordsActivity.java
@@ -24,13 +24,13 @@ public class CountWordsActivity implements WorkflowActivity {
@Override
public Object run(WorkflowActivityContext ctx) {
Logger logger = LoggerFactory.getLogger(CountWordsActivity.class);
- logger.info("Starting Activity: " + ctx.getName());
+ logger.info("Starting Activity: {}", ctx.getName());
String input = ctx.getInput(String.class);
StringTokenizer tokenizer = new StringTokenizer(input);
int result = tokenizer.countTokens();
- logger.info("Activity returned: " + result);
+ logger.info("Activity returned: {}.", result);
logger.info("Activity finished");
return result;
diff --git a/pom.xml b/pom.xml
index 5ab3051c2..729eb0a71 100644
--- a/pom.xml
+++ b/pom.xml
@@ -26,6 +26,9 @@
2.7
3.3.1
3.13.0
+ 3.2.1
+ 0.8.11
+ 80%
11
11
11
@@ -42,9 +45,9 @@
--add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.util=ALL-UNNAMED
3.2.2
3.2.2
- 5.8.2
+ 5.11.4
2.0
- 1.20.0
+ 1.20.5
3.4.3
1.7.0
@@ -95,7 +98,6 @@
org.mockito
mockito-core
3.11.2
- test
io.projectreactor
@@ -120,12 +122,129 @@
kotlin-stdlib
2.1.0
+
+ org.yaml
+ snakeyaml
+ ${snakeyaml.version}
+
+
+ org.testcontainers
+ testcontainers
+ ${testcontainers.version}
+
+
+ io.dapr
+ dapr-sdk
+ ${dapr.sdk.version}
+ compile
+
+
+ org.junit.jupiter
+ junit-jupiter
+ ${junit-bom.version}
+
+
+ org.junit.jupiter
+ junit-jupiter-api
+ ${junit-bom.version}
+
+
+ org.junit.jupiter
+ junit-jupiter-engine
+ ${junit-bom.version}
+
+
+ org.junit.jupiter
+ junit-jupiter-params
+ ${junit-bom.version}
+
+
+ org.testcontainers
+ junit-jupiter
+ ${testcontainers.version}
+
+
+ org.testcontainers
+ kafka
+ ${testcontainers.version}
+
+
+ org.springframework.boot
+ spring-boot-dependencies
+ ${springboot.version}
+ pom
+
+
+ org.testcontainers
+ postgresql
+ ${testcontainers.version}
+
+
+ org.testcontainers
+ rabbitmq
+ ${testcontainers.version}
+
+
+ io.rest-assured
+ rest-assured
+ 5.5.1
+
+
+ io.dapr.spring
+ dapr-spring-boot-starter
+ ${dapr.sdk.alpha.version}
+
+
+ io.dapr.spring
+ dapr-spring-boot-starter-test
+ ${dapr.sdk.alpha.version}
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+ ${springboot.version}
+
+
+ org.springframework.boot
+ spring-boot-starter-actuator
+ ${springboot.version}
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+ ${springboot.version}
+
+
+ org.springframework.data
+ spring-data-keyvalue
+ ${springboot.version}
+
+
+ org.springframework.data
+ spring-data-commons
+ ${springboot.version}
+
+
+ org.springframework.boot
+ spring-boot-testcontainers
+ ${springboot.version}
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+ ${springboot.version}
+
+
+ org.apache.maven.plugins
+ maven-source-plugin
+ ${maven-sources-plugin.version}
+
org.apache.maven.plugins
maven-compiler-plugin
@@ -174,6 +293,49 @@
true
+
+ org.jacoco
+ jacoco-maven-plugin
+ ${jacoco-maven-plugin.version}
+
+
+ default-prepare-agent
+
+ prepare-agent
+
+
+
+ report
+ test
+
+ report
+
+
+ target/jacoco-report/
+
+
+
+ check
+
+ check
+
+
+
+
+ BUNDLE
+
+
+ LINE
+ COVEREDRATIO
+ ${jacoco-maven-plugin.coverage-ratio}
+
+
+
+
+
+
+
+
diff --git a/sdk-tests/pom.xml b/sdk-tests/pom.xml
index c448aa586..c1ffacad0 100644
--- a/sdk-tests/pom.xml
+++ b/sdk-tests/pom.xml
@@ -33,6 +33,11 @@
1.5.16
3.9.1
1.20.0
+
+
+ 0%
+ 1.11.4
@@ -45,6 +50,16 @@
pom
import
+
+ org.junit.platform
+ junit-platform-commons
+ ${junit-platform.version}
+
+
+ org.junit.platform
+ junit-platform-engine
+ ${junit-platform.version}
+
@@ -235,10 +250,63 @@
jakarta.servlet-api
compile
+
+ org.junit.platform
+ junit-platform-commons
+ test
+
+
+ org.junit.platform
+ junit-platform-engine
+ test
+
+
+ org.jacoco
+ jacoco-maven-plugin
+ ${jacoco-maven-plugin.version}
+
+
+ default-prepare-agent
+
+ prepare-agent
+
+
+
+ report
+ test
+
+ report
+
+
+ target/jacoco-report/
+
+
+
+ check
+
+ check
+
+
+
+
+ BUNDLE
+
+
+ LINE
+ COVEREDRATIO
+ ${jacoco-maven-plugin.coverage-ratio}
+
+
+
+
+
+
+
+
com.github.os72
protoc-jar-maven-plugin
diff --git a/spring-boot-examples/consumer-app/pom.xml b/spring-boot-examples/consumer-app/pom.xml
index 9255bb13a..b2e2d0940 100644
--- a/spring-boot-examples/consumer-app/pom.xml
+++ b/spring-boot-examples/consumer-app/pom.xml
@@ -12,19 +12,6 @@
consumer-app
Spring Boot, Testcontainers and Dapr Integration Examples :: Consumer App
-
-
-
-
- org.springframework.boot
- spring-boot-dependencies
- ${springboot.version}
- pom
- import
-
-
-
-
org.springframework.boot
@@ -37,16 +24,12 @@
io.dapr.spring
dapr-spring-boot-starter
- ${dapr.sdk.alpha.version}
-
io.dapr.spring
dapr-spring-boot-starter-test
- ${dapr.sdk.alpha.version}
test
-
org.testcontainers
junit-jupiter
@@ -55,22 +38,18 @@
org.testcontainers
postgresql
- 1.20.0
test
org.testcontainers
rabbitmq
- 1.20.0
test
org.testcontainers
kafka
- 1.20.0
test
-
io.rest-assured
rest-assured
@@ -83,12 +62,10 @@
org.springframework.boot
spring-boot-maven-plugin
- ${springboot.version}
org.apache.maven.plugins
maven-site-plugin
- 3.12.1
true
diff --git a/spring-boot-examples/consumer-app/src/test/java/io/dapr/springboot/examples/consumer/DaprTestContainersConfig.java b/spring-boot-examples/consumer-app/src/test/java/io/dapr/springboot/examples/consumer/DaprTestContainersConfig.java
index 34fa4d82f..dc584b26b 100644
--- a/spring-boot-examples/consumer-app/src/test/java/io/dapr/springboot/examples/consumer/DaprTestContainersConfig.java
+++ b/spring-boot-examples/consumer-app/src/test/java/io/dapr/springboot/examples/consumer/DaprTestContainersConfig.java
@@ -35,31 +35,36 @@ import java.util.Map;
public class DaprTestContainersConfig {
@Bean
- public Network getDaprNetwork() {
- Network defaultDaprNetwork = new Network() {
- @Override
- public String getId() {
- return "dapr-network";
+ public Network getDaprNetwork(Environment env) {
+ boolean reuse = env.getProperty("reuse", Boolean.class, false);
+ if (reuse) {
+ Network defaultDaprNetwork = new Network() {
+ @Override
+ public String getId() {
+ return "dapr-network";
+ }
+
+ @Override
+ public void close() {
+
+ }
+
+ @Override
+ public Statement apply(Statement base, Description description) {
+ return null;
+ }
+ };
+
+ List networks = DockerClientFactory.instance().client().listNetworksCmd()
+ .withNameFilter("dapr-network").exec();
+ if (networks.isEmpty()) {
+ Network.builder().createNetworkCmdModifier(cmd -> cmd.withName("dapr-network")).build().getId();
+ return defaultDaprNetwork;
+ } else {
+ return defaultDaprNetwork;
}
-
- @Override
- public void close() {
-
- }
-
- @Override
- public Statement apply(Statement base, Description description) {
- return null;
- }
- };
-
- List networks = DockerClientFactory.instance().client().listNetworksCmd()
- .withNameFilter("dapr-network").exec();
- if (networks.isEmpty()) {
- Network.builder().createNetworkCmdModifier(cmd -> cmd.withName("dapr-network")).build().getId();
- return defaultDaprNetwork;
} else {
- return defaultDaprNetwork;
+ return Network.newNetwork();
}
}
@@ -67,10 +72,10 @@ public class DaprTestContainersConfig {
public RabbitMQContainer rabbitMQContainer(Network daprNetwork, Environment env) {
boolean reuse = env.getProperty("reuse", Boolean.class, false);
return new RabbitMQContainer(DockerImageName.parse("rabbitmq:3.7.25-management-alpine"))
- .withExposedPorts(5672)
- .withNetworkAliases("rabbitmq")
- .withReuse(reuse)
- .withNetwork(daprNetwork);
+ .withExposedPorts(5672)
+ .withNetworkAliases("rabbitmq")
+ .withReuse(reuse)
+ .withNetwork(daprNetwork);
}
@Bean
@@ -83,16 +88,15 @@ public class DaprTestContainersConfig {
rabbitMqProperties.put("password", "guest");
return new DaprContainer("daprio/daprd:1.14.4")
- .withAppName("consumer-app")
- .withNetwork(daprNetwork).withComponent(new Component("pubsub",
- "pubsub.rabbitmq", "v1", rabbitMqProperties))
- .withDaprLogLevel(DaprLogLevel.INFO)
- .withLogConsumer(outputFrame -> System.out.println(outputFrame.getUtf8String()))
- .withAppPort(8081).withAppChannelAddress("host.testcontainers.internal")
- .withReusablePlacement(reuse)
- .withAppHealthCheckPath("/actuator/health")
- .dependsOn(rabbitMQContainer);
+ .withAppName("consumer-app")
+ .withNetwork(daprNetwork).withComponent(new Component("pubsub",
+ "pubsub.rabbitmq", "v1", rabbitMqProperties))
+ .withDaprLogLevel(DaprLogLevel.INFO)
+ .withLogConsumer(outputFrame -> System.out.println(outputFrame.getUtf8String()))
+ .withAppPort(8081).withAppChannelAddress("host.testcontainers.internal")
+ .withReusablePlacement(reuse)
+ .withAppHealthCheckPath("/actuator/health")
+ .dependsOn(rabbitMQContainer);
}
-
}
diff --git a/spring-boot-examples/pom.xml b/spring-boot-examples/pom.xml
index 4ed1fbe49..75a32364f 100644
--- a/spring-boot-examples/pom.xml
+++ b/spring-boot-examples/pom.xml
@@ -15,6 +15,7 @@
true
+ 3.4.3
@@ -22,12 +23,23 @@
consumer-app
+
+
+
+ org.springframework.boot
+ spring-boot-dependencies
+ ${springboot.version}
+ pom
+ import
+
+
+
+
org.apache.maven.plugins
maven-site-plugin
- 3.12.1
true
diff --git a/spring-boot-examples/producer-app/pom.xml b/spring-boot-examples/producer-app/pom.xml
index dd7a4fee5..b9ab6fcbf 100644
--- a/spring-boot-examples/producer-app/pom.xml
+++ b/spring-boot-examples/producer-app/pom.xml
@@ -13,55 +13,36 @@
producer-app
Spring Boot, Testcontainers and Dapr Integration Examples :: Producer App
-
-
-
-
- org.springframework.boot
- spring-boot-dependencies
- ${springboot.version}
- pom
- import
-
-
-
-
org.springframework.boot
spring-boot-starter-actuator
-
org.springframework.boot
spring-boot-starter-web
+
+ org.springframework.boot
+ spring-boot-starter-test
+
io.dapr.spring
dapr-spring-boot-starter
- ${dapr.sdk.alpha.version}
io.dapr.spring
dapr-spring-boot-starter-test
- ${dapr.sdk.alpha.version}
- test
-
-
- org.testcontainers
- junit-jupiter
test
org.testcontainers
postgresql
- 1.20.0
test
org.testcontainers
rabbitmq
- 1.20.0
test
@@ -76,12 +57,10 @@
org.springframework.boot
spring-boot-maven-plugin
- ${springboot.version}
org.apache.maven.plugins
maven-site-plugin
- 3.12.1
true
diff --git a/spring-boot-examples/producer-app/src/test/java/io/dapr/springboot/examples/producer/DaprTestContainersConfig.java b/spring-boot-examples/producer-app/src/test/java/io/dapr/springboot/examples/producer/DaprTestContainersConfig.java
index b3ecb2e43..5d38f5841 100644
--- a/spring-boot-examples/producer-app/src/test/java/io/dapr/springboot/examples/producer/DaprTestContainersConfig.java
+++ b/spring-boot-examples/producer-app/src/test/java/io/dapr/springboot/examples/producer/DaprTestContainersConfig.java
@@ -44,32 +44,36 @@ public class DaprTestContainersConfig {
@Bean
- public Network getNetwork() {
- Network defaultDaprNetwork = new Network() {
- @Override
- public String getId() {
- return "dapr-network";
+ public Network getDaprNetwork(Environment env) {
+ boolean reuse = env.getProperty("reuse", Boolean.class, false);
+ if (reuse) {
+ Network defaultDaprNetwork = new Network() {
+ @Override
+ public String getId() {
+ return "dapr-network";
+ }
+
+ @Override
+ public void close() {
+
+ }
+
+ @Override
+ public Statement apply(Statement base, Description description) {
+ return null;
+ }
+ };
+
+ List networks = DockerClientFactory.instance().client().listNetworksCmd()
+ .withNameFilter("dapr-network").exec();
+ if (networks.isEmpty()) {
+ Network.builder().createNetworkCmdModifier(cmd -> cmd.withName("dapr-network")).build().getId();
+ return defaultDaprNetwork;
+ } else {
+ return defaultDaprNetwork;
}
-
- @Override
- public void close() {
-
- }
-
- @Override
- public Statement apply(Statement base, Description description) {
- return null;
- }
- };
-
- List networks = DockerClientFactory.instance().client().listNetworksCmd().withNameFilter("dapr-network").exec();
- if (networks.isEmpty()) {
- Network.builder()
- .createNetworkCmdModifier(cmd -> cmd.withName("dapr-network"))
- .build().getId();
- return defaultDaprNetwork;
} else {
- return defaultDaprNetwork;
+ return Network.newNetwork();
}
}
diff --git a/testcontainers-dapr/pom.xml b/testcontainers-dapr/pom.xml
index 13110b70b..2f4fbb7e1 100644
--- a/testcontainers-dapr/pom.xml
+++ b/testcontainers-dapr/pom.xml
@@ -28,19 +28,11 @@
org.yaml
snakeyaml
- ${snakeyaml.version}
org.testcontainers
testcontainers
- ${testcontainers.version}
-
- io.dapr
- dapr-sdk
- ${project.parent.version}
- compile
-
@@ -52,7 +44,6 @@
org.apache.maven.plugins
maven-source-plugin
- 3.2.1
attach-sources
@@ -62,11 +53,9 @@
-
org.apache.maven.plugins
maven-javadoc-plugin
- 3.2.0
attach-javadocs
@@ -79,46 +68,6 @@
org.jacoco
jacoco-maven-plugin
- 0.8.11
-
-
- default-prepare-agent
-
- prepare-agent
-
-
-
- report
- test
-
- report
-
-
- target/jacoco-report/
-
-
-
- check
-
- check
-
-
-
-
- BUNDLE
-
-
- LINE
- COVEREDRATIO
- 80%
-
-
-
-
-
-
-
-