From 167f61c3c7f5b16f12a2d1507d7f4c5adea6764a Mon Sep 17 00:00:00 2001 From: MohamedSabthar Date: Thu, 5 Oct 2023 17:26:44 +0530 Subject: [PATCH] Update docker command to inherit file permission of host --- .../ballerina/plugin/BallerinaPlugin.groovy | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/main/groovy/io/ballerina/plugin/BallerinaPlugin.groovy b/src/main/groovy/io/ballerina/plugin/BallerinaPlugin.groovy index 2894294..ce01832 100644 --- a/src/main/groovy/io/ballerina/plugin/BallerinaPlugin.groovy +++ b/src/main/groovy/io/ballerina/plugin/BallerinaPlugin.groovy @@ -297,12 +297,13 @@ class BallerinaPlugin implements Plugin { ballerinaDockerTag = dockerTag } def balPackWithDocker = """ - docker run --rm --net=host --user ballerina:\$(id -g) \ + docker run --rm --net=host --user \$(id -u):\$(id -g) \ -v $parentDirectory:/home/ballerina/$parentDirectory.name \ -v $projectDirectory:/home/ballerina/$parentDirectory.name/$projectDirectory.name \ - -w /home/ballerina/$parentDirectory.name/$projectDirectory.name \ - ballerina/ballerina:$ballerinaDockerTag $balJavaDebugParam \ - bal pack --target-dir ${balBuildTarget} ${debugParams} + -w /home/ballerina \ + ballerina/ballerina:$ballerinaDockerTag \ + /bin/sh -c "cd $parentDirectory.name/$projectDirectory.name" && \ + $balJavaDebugParam bal pack --target-dir ${balBuildTarget} ${debugParams} """ if (Os.isFamily(Os.FAMILY_WINDOWS)) { commandLine 'cmd', '/c', "$balPackWithDocker" @@ -329,11 +330,12 @@ class BallerinaPlugin implements Plugin { ballerinaDockerTag = dockerTag } def balTestWithDocker = """ - docker run --rm --net=host --user ballerina:\$(id -g) \ + docker run --rm --net=host --user \$(id -u):\$(id -g) \ -v $parentDirectory:/home/ballerina/$parentDirectory.name \ -v $projectDirectory:/home/ballerina/$parentDirectory.name/$projectDirectory.name \ - -w /home/ballerina/$parentDirectory.name/$projectDirectory.name \ + -w /home/ballerina \ ballerina/ballerina:$ballerinaDockerTag \ + /bin/sh -c "cd $parentDirectory.name/$projectDirectory.name" && \ bal test ${graalvmFlag} ${testCoverageParams} ${groupParams} ${disableGroups} ${debugParams} """ if (Os.isFamily(Os.FAMILY_WINDOWS)) { @@ -412,11 +414,12 @@ class BallerinaPlugin implements Plugin { workingDir project.projectDir environment 'JAVA_OPTS', '-DBALLERINA_DEV_COMPILE_BALLERINA_ORG=true' def balTestWithDocker = """ - docker run --rm --net=host --user ballerina:\$(id -g) \ + docker run --rm --net=host --user \$(id -u):\$(id -g) \ -v $parentDirectory:/home/ballerina/$parentDirectory.name \ -v $projectDirectory:/home/ballerina/$parentDirectory.name/$projectDirectory.name \ - -w /home/ballerina/$parentDirectory.name/$projectDirectory.name \ + -w /home/ballerina \ ballerina/ballerina:$ballerinaDockerTag \ + /bin/sh -c "cd $parentDirectory.name/$projectDirectory.name" && \ bal test ${graalvmFlag} ${testCoverageParams} ${groupParams} ${disableGroups} ${debugParams} """ if (buildOnDocker) {