Skip to content

Commit

Permalink
Merge pull request #40 from diagridio/placement-container
Browse files Browse the repository at this point in the history
Adding placement container to integration
  • Loading branch information
salaboy authored Dec 5, 2023
2 parents 5b6c5e6 + 2dc61a7 commit 78df366
Show file tree
Hide file tree
Showing 5 changed files with 70 additions and 11 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.11</version>
<version>0.10.12</version>
<name>Testcontainers :: Dapr Module</name>
<description>Testcontainers :: Dapr Module</description>
<packaging>jar</packaging>
Expand Down
6 changes: 2 additions & 4 deletions src/main/java/io/diagrid/dapr/DaprContainer.java
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,6 @@ public List<MetadataEntry> getMetadata() {

private static final int DAPRD_HTTP_PORT = 3500;
private static final int DAPRD_GRPC_PORT = 50001;
private static final int DAPRD_INTERNAL_GRPC_PORT = 50002;
private final Set<Component> components = new HashSet<>();
private final Set<Subscription> subscriptions = new HashSet<>();
private String appName;
Expand All @@ -120,7 +119,7 @@ public DaprContainer(DockerImageName dockerImageName) {
// needs to
// connect with the application for susbcriptions

withExposedPorts(DAPRD_HTTP_PORT, DAPRD_GRPC_PORT, DAPRD_INTERNAL_GRPC_PORT);
withExposedPorts(DAPRD_HTTP_PORT, DAPRD_GRPC_PORT);

DumperOptions options = new DumperOptions();
options.setDefaultFlowStyle(DumperOptions.FlowStyle.BLOCK);
Expand Down Expand Up @@ -240,9 +239,8 @@ protected void configure() {
"-app-id", appName,
"--dapr-listen-addresses=0.0.0.0",
"--app-protocol", "http",
"--internal-grpc-port", DAPRD_INTERNAL_GRPC_PORT,
"-placement-host-address", placementService,
"--dapr-internal-grpc-port", appChannelAddress,
"--app-channel-address", appChannelAddress,
"--app-port", Integer.toString(appPort),
"--log-level", daprLogLevel.toString(),
"-components-path", "/components");
Expand Down
43 changes: 43 additions & 0 deletions src/main/java/io/diagrid/dapr/DaprPlacementContainer.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
package io.diagrid.dapr;

import org.testcontainers.containers.GenericContainer;
import org.testcontainers.utility.DockerImageName;

public class DaprPlacementContainer extends GenericContainer<DaprPlacementContainer>{

private static final DockerImageName DEFAULT_IMAGE_NAME = DockerImageName.parse("daprio/placement");
private int PLACEMENT_PORT = 50006;

public DaprPlacementContainer(DockerImageName dockerImageName) {
super(dockerImageName);
dockerImageName.assertCompatibleWith(DEFAULT_IMAGE_NAME);


withExposedPorts(PLACEMENT_PORT);
}

public DaprPlacementContainer(String image) {
this(DockerImageName.parse(image));
}

@Override
protected void configure() {
super.configure();
withCommand("./placement", "-port",Integer.toString(PLACEMENT_PORT));
}

public static DockerImageName getDefaultImageName() {
return DEFAULT_IMAGE_NAME;
}

public DaprPlacementContainer withPort(Integer port) {
this.PLACEMENT_PORT = port;
return this;
}

public int getPort() {
return PLACEMENT_PORT;
}


}
6 changes: 0 additions & 6 deletions src/test/java/io/diagrid/dapr/DaprComponentTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,7 @@

import org.junit.Assert;
import org.junit.Test;
import org.yaml.snakeyaml.DumperOptions;
import org.yaml.snakeyaml.Yaml;
import org.yaml.snakeyaml.nodes.Tag;
import org.yaml.snakeyaml.representer.Representer;

import io.diagrid.dapr.DaprContainer.Component;
import io.diagrid.dapr.DaprContainer.MetadataEntry;
import io.diagrid.dapr.DaprContainer.Subscription;

public class DaprComponentTest {
Expand Down
24 changes: 24 additions & 0 deletions src/test/java/io/diagrid/dapr/DaprPlacementContainerTest.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
package io.diagrid.dapr;

import org.junit.ClassRule;
import org.junit.Test;
import org.junit.Assert;

public class DaprPlacementContainerTest {


@ClassRule()
public static DaprPlacementContainer placement = new DaprPlacementContainer("daprio/placement");



@Test
public void testDaprPlacementContainerDefaults(){
Assert.assertEquals("The default port is set", 50006,
placement.getPort());

}



}

0 comments on commit 78df366

Please sign in to comment.