Skip to content

Commit

Permalink
Merge pull request #47 from diagridio/custom-network
Browse files Browse the repository at this point in the history
Adding support for custom networks
  • Loading branch information
salaboy authored May 16, 2024
2 parents 3b3a822 + 5049ec4 commit 474e335
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 8 deletions.
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>io.diagrid.dapr</groupId>
<artifactId>testcontainers-dapr</artifactId>
<version>0.10.13</version>
<version>0.10.14</version>
<name>Testcontainers :: Dapr Module</name>
<description>Testcontainers :: Dapr Module</description>
<packaging>jar</packaging>
Expand Down
28 changes: 21 additions & 7 deletions src/main/java/io/diagrid/dapr/DaprContainer.java
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@
import java.util.Objects;
import java.util.Set;

import org.jetbrains.annotations.Nullable;
import org.testcontainers.containers.GenericContainer;
import org.testcontainers.containers.Network;
import org.testcontainers.images.builder.Transferable;
Expand Down Expand Up @@ -118,7 +117,8 @@ public List<MetadataEntry> getMetadata() {
private Integer appPort = 8080;
private DaprLogLevel daprLogLevel = DaprLogLevel.info;
private String appChannelAddress = "localhost";
private String placementService = "placement:50006";
private String placementService = "placement";
private Network daprNetwork = null;
private static final DockerImageName DEFAULT_IMAGE_NAME = DockerImageName.parse("daprio/daprd");
private Yaml yaml;
private DaprPlacementContainer placementContainer;
Expand Down Expand Up @@ -157,11 +157,19 @@ public Set<Subscription> getSubscriptions() {
return subscriptions;
}



public DaprContainer withComponent(Component component) {
components.add(component);
return this;
}

public DaprContainer withNetwork(Network network){
this.daprNetwork = network;
return this;
}


public DaprContainer withAppPort(Integer port) {
this.appPort = port;
return this;
Expand Down Expand Up @@ -281,23 +289,25 @@ public Map<String, Object> subscriptionToMap(Subscription subscription) {
protected void configure() {
super.configure();

if(this.daprNetwork == null){
this.daprNetwork = Network.newNetwork();
}
if (this.placementContainer == null) {
Network daprNetwork = Network.newNetwork();
this.placementContainer = new DaprPlacementContainer(this.placementDockerImageName)
.withNetwork(daprNetwork)
.withNetworkAliases("placement")
.withNetwork(this.daprNetwork)
.withNetworkAliases(placementService)
.withReuse(this.shouldReusePlacement);
this.placementContainer.start();
dependsOn(this.placementContainer);
withNetwork(daprNetwork);
withNetwork(this.daprNetwork);
}

withCommand(
"./daprd",
"-app-id", appName,
"--dapr-listen-addresses=0.0.0.0",
"--app-protocol", "http",
"-placement-host-address", placementService,
"-placement-host-address", placementService + ":" + 50006,
"--app-channel-address", appChannelAddress,
"--app-port", Integer.toString(appPort),
"--log-level", daprLogLevel.toString(),
Expand Down Expand Up @@ -372,4 +382,8 @@ public DaprContainer withPlacementContainer(DaprPlacementContainer placementCont
return this;
}

public void setNetwork(Network network) {
this.daprNetwork = network;
}

}

0 comments on commit 474e335

Please sign in to comment.