diff --git a/ballerina/Ballerina.toml b/ballerina/Ballerina.toml index bc44f4b9..99f789de 100644 --- a/ballerina/Ballerina.toml +++ b/ballerina/Ballerina.toml @@ -1,7 +1,7 @@ [package] org = "ballerina" name = "cloud" -version = "3.3.2" +version = "3.3.3" repository = "https://github.com/ballerina-platform/module-ballerina-c2c" license = ["Apache-2.0"] keywords = ["cloud", "kubernetes", "docker", "k8s", "c2c"] diff --git a/ballerina/CompilerPlugin.toml b/ballerina/CompilerPlugin.toml index 89c732bf..ef71542c 100644 --- a/ballerina/CompilerPlugin.toml +++ b/ballerina/CompilerPlugin.toml @@ -3,4 +3,4 @@ id = "code2cloud" class = "io.ballerina.c2c.C2CCompilerPlugin" [[dependency]] -path = "../compiler-plugin/build/libs/cloud-compiler-plugin-3.3.2.jar" +path = "../compiler-plugin/build/libs/cloud-compiler-plugin-3.3.3-SNAPSHOT.jar" diff --git a/ballerina/Dependencies.toml b/ballerina/Dependencies.toml index ca226110..13905513 100644 --- a/ballerina/Dependencies.toml +++ b/ballerina/Dependencies.toml @@ -10,7 +10,7 @@ distribution-version = "2201.12.0" [[package]] org = "ballerina" name = "cloud" -version = "3.3.2" +version = "3.3.3" modules = [ {org = "ballerina", packageName = "cloud", moduleName = "cloud"} ] diff --git a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/ComplexPackageNameTest.java b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/ComplexPackageNameTest.java index 8558df2b..3dba818f 100644 --- a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/ComplexPackageNameTest.java +++ b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/ComplexPackageNameTest.java @@ -126,7 +126,8 @@ public void validateDockerImage() { Assert.assertEquals(ports.get(0), "9090/tcp"); // Validate ballerina.conf in run command Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), - "[java, -Xdiag, -cp, anjana-testObservation_0.1.5-0.1.0.jar:jars/*, " + + "[java, -XX:+ExitOnOutOfMemoryError, -Xdiag, -cp, " + + "anjana-testObservation_0.1.5-0.1.0.jar:jars/*, " + "anjana.testObservation_0&00461&00465.0.$_init]"); } diff --git a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/MixedConfigJobTest.java b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/MixedConfigJobTest.java index cffa3fe0..fa3e8085 100644 --- a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/MixedConfigJobTest.java +++ b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/MixedConfigJobTest.java @@ -157,8 +157,8 @@ public void validateDockerfile() { @Test public void validateDockerImage() { - Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), "[java, -Xdiag, -cp," + - " anjana-mix_configs_job-0.1.0.jar:jars/*, anjana.mix_configs_job.0.$_init]"); + Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), "[java, -XX:+ExitOnOutOfMemoryError, " + + "-Xdiag, -cp, anjana-mix_configs_job-0.1.0.jar:jars/*, anjana.mix_configs_job.0.$_init]"); } @AfterClass diff --git a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/MixedConfigTest.java b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/MixedConfigTest.java index 1eb4e5ac..f9935d5e 100644 --- a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/MixedConfigTest.java +++ b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/MixedConfigTest.java @@ -170,8 +170,8 @@ public void validateDockerImage() { Assert.assertEquals(ports.size(), 1); Assert.assertEquals(ports.get(0), "9090/tcp"); // Validate ballerina.conf in run command - Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), "[java, -Xdiag, -cp, " + - "anjana-mix_configs-0.1.0.jar:jars/*, anjana.mix_configs.0.$_init]"); + Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), "[java, -XX:+ExitOnOutOfMemoryError, " + + "-Xdiag, -cp, anjana-mix_configs-0.1.0.jar:jars/*, anjana.mix_configs.0.$_init]"); } @AfterClass diff --git a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/MultipleConfigTest.java b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/MultipleConfigTest.java index 7135b205..fc81bc6a 100644 --- a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/MultipleConfigTest.java +++ b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/MultipleConfigTest.java @@ -144,8 +144,8 @@ public void validateDockerImage() { Assert.assertEquals(ports.size(), 1); Assert.assertEquals(ports.get(0), "9090/tcp"); // Validate ballerina.conf in run command - Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), "[java, -Xdiag, -cp, " + - "hello-hello-0.0.1.jar:jars/*, hello.hello.0.$_init]"); + Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), "[java, -XX:+ExitOnOutOfMemoryError, " + + "-Xdiag, -cp, hello-hello-0.0.1.jar:jars/*, hello.hello.0.$_init]"); } @AfterClass diff --git a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/SettingsFatJarTest.java b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/SettingsFatJarTest.java index 99193ad4..9013e009 100644 --- a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/SettingsFatJarTest.java +++ b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/SettingsFatJarTest.java @@ -57,8 +57,8 @@ public void validateDockerImage() { Assert.assertEquals(ports.size(), 1); Assert.assertEquals(ports.get(0), "9090/tcp"); // Validate ballerina.conf in run command - Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), "[java, -Xdiag, -cp," + - " anjana-fat_jar-0.1.0.jar:jars/*, anjana.fat_jar.0.$_init]"); + Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), "[java, -XX:+ExitOnOutOfMemoryError, " + + "-Xdiag, -cp, anjana-fat_jar-0.1.0.jar:jars/*, anjana.fat_jar.0.$_init]"); } @AfterClass diff --git a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/choreo/PlainMainTest.java b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/choreo/PlainMainTest.java index 22ba2e16..390ee22f 100644 --- a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/choreo/PlainMainTest.java +++ b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/choreo/PlainMainTest.java @@ -73,8 +73,8 @@ public void validateChoreoYaml() throws IOException { public void validateDockerfile() throws IOException { File dockerFile = DOCKER_TARGET_PATH.resolve("Dockerfile").toFile(); String dockerFileContent = new String(Files.readAllBytes(dockerFile.toPath())); - Assert.assertTrue(dockerFileContent.contains("ENTRYPOINT [\"java\",\"-Xdiag\",\"-cp\"," + - "\"hello-hello-0.0.1.jar:jars/*\",\"hello.hello.0.$_init\"]")); + Assert.assertTrue(dockerFileContent.contains("ENTRYPOINT [\"java\",\"-XX:+ExitOnOutOfMemoryError\"," + + "\"-Xdiag\",\"-cp\",\"hello-hello-0.0.1.jar:jars/*\",\"hello.hello.0.$_init\"]")); Assert.assertTrue(dockerFileContent.contains("USER ballerina")); Assert.assertTrue(dockerFile.exists()); } diff --git a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/choreo/PlainServiceTest.java b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/choreo/PlainServiceTest.java index a1b36a60..a03df5b4 100644 --- a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/choreo/PlainServiceTest.java +++ b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/choreo/PlainServiceTest.java @@ -77,8 +77,8 @@ public void validateChoreoYaml() throws IOException { public void validateDockerfile() throws IOException { File dockerFile = DOCKER_TARGET_PATH.resolve("Dockerfile").toFile(); String dockerFileContent = new String(Files.readAllBytes(dockerFile.toPath())); - Assert.assertTrue(dockerFileContent.contains("ENTRYPOINT [\"java\",\"-Xdiag\",\"-cp\"," + - "\"hello-hello-0.0.1.jar:jars/*\",\"hello.hello.0.$_init\"]")); + Assert.assertTrue(dockerFileContent.contains("ENTRYPOINT [\"java\",\"-XX:+ExitOnOutOfMemoryError\"," + + "\"-Xdiag\",\"-cp\",\"hello-hello-0.0.1.jar:jars/*\",\"hello.hello.0.$_init\"]")); Assert.assertTrue(dockerFileContent.contains("USER ballerina")); Assert.assertTrue(dockerFile.exists()); } diff --git a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/docker/CmdTest.java b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/docker/CmdTest.java index 454d5e24..0f819d14 100644 --- a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/docker/CmdTest.java +++ b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/docker/CmdTest.java @@ -59,8 +59,8 @@ public void testCustomDockerCMD() throws IOException, InterruptedException { Assert.assertTrue(FileUtils.readFileToString(dockerFile, StandardCharsets.UTF_8) .contains("FROM ballerina/jre8:v1")); Assert.assertEquals(Arrays.toString(imageInspect.getConfig().getEntrypoint()), - "[/bin/sh, -c, [\"java\",\"-Xdiag\", \"-cp\", \"hello-hello-0.0.1.jar:jars/*\" \"$_init\" " + - "\"--b7a.http.accesslog.console=true\"]"); + "[/bin/sh, -c, [\"java\",\"-XX:+ExitOnOutOfMemoryError\",\"-Xdiag\", \"-cp\", " + + "\"hello-hello-0.0.1.jar:jars/*\" \"$_init\" \"--b7a.http.accesslog.console=true\"]"); } @AfterClass diff --git a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/docker/DockerCMDTest.java b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/docker/DockerCMDTest.java index d07a16b7..c01a2a0a 100644 --- a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/docker/DockerCMDTest.java +++ b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/docker/DockerCMDTest.java @@ -69,7 +69,7 @@ public void buildDockerImageTest() throws DockerGenException, IOException { PackageID packageID = new PackageID(new Name("wso2"), new Name("bal"), new Name("1.0.0")); dockerModel.setPkgId(packageID); dockerModel.setDependencyJarPaths(jarFilePaths); - dockerModel.setEntryPoint("ENTRYPOINT java -Xdiag -cp '${APP}:jars/*' '$_init' " + + dockerModel.setEntryPoint("ENTRYPOINT java -XX:+ExitOnOutOfMemoryError -Xdiag -cp '${APP}:jars/*' '$_init' " + "--b7a.http.accesslog.console=true"); Path outputDir = SOURCE_DIR_PATH.resolve("target"); Files.createDirectories(outputDir); @@ -83,8 +83,8 @@ public void buildDockerImageTest() throws DockerGenException, IOException { Assert.assertNotNull(getDockerImage(DOCKER_IMAGE)); InspectImageResponse imageInspect = getDockerImage(DOCKER_IMAGE); Assert.assertEquals(Arrays.toString(Objects.requireNonNull(imageInspect.getConfig()).getEntrypoint()), - "[/bin/sh, -c, java -Xdiag -cp 'hello.jar:jars/*' '$_init' --b7a.http.accesslog" + - ".console=true]"); + "[/bin/sh, -c, java -XX:+ExitOnOutOfMemoryError -Xdiag -cp 'hello.jar:jars/*' " + + "'$_init' --b7a.http.accesslog.console=true]"); } private Set getJarFilePaths() throws IOException { diff --git a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/docker/DockerGeneratorTests.java b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/docker/DockerGeneratorTests.java index 5a2db15a..51346c65 100644 --- a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/docker/DockerGeneratorTests.java +++ b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/docker/DockerGeneratorTests.java @@ -121,8 +121,8 @@ public void buildDockerImageTest() throws DockerGenException, IOException { String dockerFileContent = new String(Files.readAllBytes(dockerFile.toPath())); cleaningUpDir = outputDir; - Assert.assertTrue(dockerFileContent.contains("ENTRYPOINT [\"java\",\"-Xdiag\"," + - "\"-cp\",\"hello.jar:jars/*\",\"wso2.bal.1.$_init\"]")); + Assert.assertTrue(dockerFileContent.contains("ENTRYPOINT [\"java\",\"-XX:+ExitOnOutOfMemoryError\"," + + "\"-Xdiag\",\"-cp\",\"hello.jar:jars/*\",\"wso2.bal.1.$_init\"]")); Assert.assertTrue(dockerFileContent.contains("USER ballerina")); } @@ -132,8 +132,8 @@ public void validateDockerImage() { Assert.assertEquals(DockerTestUtils.getExposedPorts(DOCKER_IMAGE).size(), 1); Assert.assertEquals(Objects.requireNonNull(DockerTestUtils.getDockerImage(DOCKER_IMAGE).getConfig() .getEnv()).length, 8); - Assert.assertEquals(DockerTestUtils.getEntryPoint(DOCKER_IMAGE), Arrays.asList("java", "-Xdiag", - "-cp", "hello.jar:jars/*", "wso2.bal.1.$_init")); + Assert.assertEquals(DockerTestUtils.getEntryPoint(DOCKER_IMAGE), Arrays.asList("java", + "-XX:+ExitOnOutOfMemoryError", "-Xdiag", "-cp", "hello.jar:jars/*", "wso2.bal.1.$_init")); } @Test diff --git a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/DockerProjectTest.java b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/DockerProjectTest.java index b22f58cd..54bd5cb8 100644 --- a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/DockerProjectTest.java +++ b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/DockerProjectTest.java @@ -64,8 +64,8 @@ public void validateDockerImage() { Assert.assertEquals(ports.get(0), "9095/tcp"); Assert.assertEquals(ports.get(1), "9096/tcp"); // Validate ballerina.conf in run command - Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), "[java, -Xdiag, -cp, " + - "hello-hello-0.0.1.jar:jars/*, hello.hello.0.$_init]"); + Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), "[java, -XX:+ExitOnOutOfMemoryError, " + + "-Xdiag, -cp, hello-hello-0.0.1.jar:jars/*, hello.hello.0.$_init]"); } @Test(groups = { "integration" }) diff --git a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/DockerSingleTest.java b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/DockerSingleTest.java index 5a03529c..0e60a0fb 100644 --- a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/DockerSingleTest.java +++ b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/DockerSingleTest.java @@ -63,7 +63,7 @@ public void validateDockerImage() { Assert.assertEquals(ports.get(0), "9096/tcp"); // Validate ballerina.conf in run command Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), - "[java, -Xdiag, -cp, service.jar:jars/*, $_init]"); + "[java, -XX:+ExitOnOutOfMemoryError, -Xdiag, -cp, service.jar:jars/*, $_init]"); } @Test(groups = { "integration" }) diff --git a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample10Test.java b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample10Test.java index 2a5d5930..c6cb6bdc 100644 --- a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample10Test.java +++ b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample10Test.java @@ -109,8 +109,8 @@ public void validateDockerImage() { Assert.assertEquals(ports.size(), 1); Assert.assertEquals(ports.get(0), "8080/tcp"); // Validate ballerina.conf in run command - Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), "[java, -Xdiag, -cp, " + - "hello-hello-0.0.1.jar:jars/*, hello.hello.0.$_init]"); + Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), "[java, -XX:+ExitOnOutOfMemoryError, " + + "-Xdiag, -cp, hello-hello-0.0.1.jar:jars/*, hello.hello.0.$_init]"); } @Test(groups = { "integration" }) diff --git a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample11Test.java b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample11Test.java index 4e445091..16f0bcb8 100644 --- a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample11Test.java +++ b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample11Test.java @@ -118,8 +118,8 @@ public void validateDockerImage() { Assert.assertEquals(ports.size(), 1); Assert.assertEquals(ports.get(0), "9090/tcp"); // Validate ballerina.conf in run command - Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), "[java, -Xdiag, -cp, " + - "hello-hello-0.0.1.jar:jars/*, hello.hello.0.$_init]"); + Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), "[java, -XX:+ExitOnOutOfMemoryError, " + + "-Xdiag, -cp, hello-hello-0.0.1.jar:jars/*, hello.hello.0.$_init]"); } @AfterClass diff --git a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample12Test.java b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample12Test.java index c8ce5dac..1277946d 100644 --- a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample12Test.java +++ b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample12Test.java @@ -129,8 +129,8 @@ public void validateDockerImage() { Assert.assertEquals(ports.size(), 1); Assert.assertEquals(ports.get(0), "9090/tcp"); // Validate ballerina.conf in run command - Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), "[java, -Xdiag, -cp," + - " hello-hello-0.0.1.jar:jars/*, hello.hello.0.$_init]"); + Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), "[java, -XX:+ExitOnOutOfMemoryError, " + + "-Xdiag, -cp, hello-hello-0.0.1.jar:jars/*, hello.hello.0.$_init]"); } @Test(groups = { "integration" }) diff --git a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample1Test.java b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample1Test.java index 0a19ddda..a9bf241b 100644 --- a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample1Test.java +++ b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample1Test.java @@ -113,8 +113,8 @@ public void validateK8SService() { public void validateDockerfile() throws IOException { File dockerFile = DOCKER_TARGET_PATH.resolve("Dockerfile").toFile(); String dockerFileContent = new String(Files.readAllBytes(dockerFile.toPath())); - Assert.assertTrue(dockerFileContent.contains("ENTRYPOINT [\"java\",\"-Xdiag\",\"-cp\"," + - "\"hello_world.jar:jars/*\",\"$_init\"]")); + Assert.assertTrue(dockerFileContent.contains("ENTRYPOINT [\"java\",\"-XX:+ExitOnOutOfMemoryError\"," + + "\"-Xdiag\",\"-cp\",\"hello_world.jar:jars/*\",\"$_init\"]")); Assert.assertTrue(dockerFileContent.contains("USER ballerina")); Assert.assertTrue(dockerFile.exists()); } diff --git a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample2Test.java b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample2Test.java index f3d9da5c..adf8e2e1 100644 --- a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample2Test.java +++ b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample2Test.java @@ -129,8 +129,8 @@ public void validateDockerImage() { Assert.assertEquals(ports.size(), 1); Assert.assertEquals(ports.get(0), "9090/tcp"); // Validate ballerina.conf in run command - Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), "[java, -Xdiag, -cp, " + - "hello-hello-0.0.1.jar:jars/*, hello.hello.0.$_init]"); + Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), "[java, -XX:+ExitOnOutOfMemoryError, " + + "-Xdiag, -cp, hello-hello-0.0.1.jar:jars/*, hello.hello.0.$_init]"); } @Test(groups = {"integration"}) diff --git a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample5Test.java b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample5Test.java index 2d0cf56d..2279930e 100644 --- a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample5Test.java +++ b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample5Test.java @@ -160,8 +160,8 @@ public void validateDockerImage() { Assert.assertEquals(ports.size(), 1); Assert.assertEquals(ports.get(0), "9090/tcp"); // Validate ballerina.conf in run command - Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), "[java, -Xdiag, -cp, " + - "xlight-hello-0.0.1.jar:jars/*, xlight.hello.0.$_init]"); + Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), "[java, -XX:+ExitOnOutOfMemoryError, " + + "-Xdiag, -cp, xlight-hello-0.0.1.jar:jars/*, xlight.hello.0.$_init]"); } @Test(groups = { "integration" }) diff --git a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample8Test.java b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample8Test.java index 54292698..44fe22b1 100644 --- a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample8Test.java +++ b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample8Test.java @@ -66,8 +66,8 @@ public void validateDockerImage() { Assert.assertEquals(ports.size(), 1); Assert.assertEquals(ports.get(0), "9090/tcp"); // Validate ballerina.conf in run command - Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), "[java, -Xdiag, -cp, " + - "hello-hello-0.0.1.jar:jars/*, hello.hello.0.$_init]"); + Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), "[java, -XX:+ExitOnOutOfMemoryError, " + + "-Xdiag, -cp, hello-hello-0.0.1.jar:jars/*, hello.hello.0.$_init]"); } @AfterClass diff --git a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample9Test.java b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample9Test.java index df4057ae..7f630817 100644 --- a/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample9Test.java +++ b/compiler-plugin-tests/src/test/java/io/ballerina/c2c/test/samples/Sample9Test.java @@ -111,8 +111,8 @@ public void validateDockerImage() { Assert.assertEquals(ports.size(), 1); Assert.assertEquals(ports.get(0), "9090/tcp"); // Validate ballerina.conf in run command - Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), "[java, -Xdiag, -cp, " + - "hello-hello-0.0.1.jar:jars/*, hello.hello.0.$_init]"); + Assert.assertEquals(getEntryPoint(DOCKER_IMAGE).toString(), "[java, -XX:+ExitOnOutOfMemoryError, " + + "-Xdiag, -cp, hello-hello-0.0.1.jar:jars/*, hello.hello.0.$_init]"); } @Test(groups = { "integration" }) diff --git a/compiler-plugin-tests/src/test/resources/docker/cmd/Cloud.toml b/compiler-plugin-tests/src/test/resources/docker/cmd/Cloud.toml index c4946529..d7db750d 100644 --- a/compiler-plugin-tests/src/test/resources/docker/cmd/Cloud.toml +++ b/compiler-plugin-tests/src/test/resources/docker/cmd/Cloud.toml @@ -2,5 +2,5 @@ repository= "anuruddhal" # optional default is local name="cmd" # optional tag="v1" # default is latest -entrypoint="ENTRYPOINT [\"java\",\"-Xdiag\", \"-cp\", \"${APP}:jars/*\" \"$_init\" \"--b7a.http.accesslog.console=true\"" +entrypoint="ENTRYPOINT [\"java\",\"-XX:+ExitOnOutOfMemoryError\",\"-Xdiag\", \"-cp\", \"${APP}:jars/*\" \"$_init\" \"--b7a.http.accesslog.console=true\"" base="ballerina/jre8:v1" diff --git a/compiler-plugin/src/main/java/io/ballerina/c2c/utils/DockerGenerator.java b/compiler-plugin/src/main/java/io/ballerina/c2c/utils/DockerGenerator.java index 0f614f5f..0f0bf465 100644 --- a/compiler-plugin/src/main/java/io/ballerina/c2c/utils/DockerGenerator.java +++ b/compiler-plugin/src/main/java/io/ballerina/c2c/utils/DockerGenerator.java @@ -236,6 +236,7 @@ private String generateDockerfile() { packageID.name.getValue(), packageID.version.getValue(), MODULE_INIT_CLASS_NAME); List args = new ArrayList<>(); args.add("java"); + args.add("-XX:+ExitOnOutOfMemoryError"); args.add("-Xdiag"); if (this.dockerModel.isEnableDebug()) { args.add("-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:" +