This is an automated email from the ASF dual-hosted git repository.

japetrsn pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openwhisk-package-kafka.git


The following commit(s) were added to refs/heads/master by this push:
     new 76ed470  Fix Gradle 5 error (#355)
76ed470 is described below

commit 76ed470ab569d30b71fb79c524670c8bb64d4b17
Author: James Dubee <[email protected]>
AuthorDate: Mon Oct 21 12:04:43 2019 -0400

    Fix Gradle 5 error (#355)
---
 gradle/docker.gradle | 88 ++++++++++++++++++++++++++++++++++++++++------------
 1 file changed, 69 insertions(+), 19 deletions(-)

diff --git a/gradle/docker.gradle b/gradle/docker.gradle
index b06c3ba..398dd50 100644
--- a/gradle/docker.gradle
+++ b/gradle/docker.gradle
@@ -39,7 +39,7 @@ import groovy.time.*
  */
 
 ext {
-    dockerRegistry = project.hasProperty('dockerRegistry') && dockerRegistry 
!= '' ? dockerRegistry + '/' : ''
+    dockerRegistry = project.hasProperty('dockerRegistry') ? dockerRegistry + 
'/' : ''
     dockerImageTag = project.hasProperty('dockerImageTag') ? dockerImageTag : 
'latest'
     dockerImagePrefix = project.hasProperty('dockerImagePrefix') ? 
dockerImagePrefix : 'whisk'
     dockerTimeout = project.hasProperty('dockerTimeout') ? 
dockerTimeout.toInteger() : 840
@@ -54,32 +54,82 @@ if(project.hasProperty('dockerHost')) {
 }
 
 if(project.hasProperty('dockerBuildArgs')) {
-    dockerBuildArg += ['--build-arg', project.dockerBuildArgs]
+    dockerBuildArgs.each { arg  ->
+        dockerBuildArg += ['--build-arg', arg]
+    }
 }
 
-task distDocker << {
-    def start = new Date()
-    def cmd = dockerBinary + dockerBuildArg + ['-t', dockerImageName, 
project.buildscript.sourceFile.getParentFile().getAbsolutePath()]
-    retry(cmd, dockerRetries, dockerTimeout)
-    println("Building '${dockerImageName}' took ${TimeCategory.minus(new 
Date(), start)}")
+task distDocker {
+    doLast {
+        def start = new Date()
+        def cmd = dockerBinary + dockerBuildArg + ['-t', dockerImageName, 
project.buildscript.sourceFile.getParentFile().getAbsolutePath()]
+        retry(cmd, dockerRetries, dockerTimeout)
+        println("Building '${dockerImageName}' took ${TimeCategory.minus(new 
Date(), start)}")
+    }
 }
-task tagImage << {
-    def versionString = (dockerBinary + ['-v']).execute().text
-    def matched = (versionString =~ /(\d+)\.(\d+)\.(\d+)/)
 
-    def major = matched[0][1] as int
-    def minor = matched[0][2] as int
+task distDockerCoverage() {
+    doLast {
+        def start = new Date()
+        //Copy the scoverage runtime jars
+        copy {from configurations.scoverage - configurations.compile; into 
"build/tmp/docker-coverage/ext-lib"}
+        //Copy the scoverage prepared jars
+        coverageDirs.each {dir ->
+            copy {from file(dir); into "build/tmp/docker-coverage/classes"}
+        }
+
+        def buildArgs = [
+                "OW_ROOT_DIR=${project.rootProject.projectDir.absolutePath}"
+        ]
+        def dockerImageNameOrig = dockerImageName
+        dockerImageName = "$dockerImageName-cov"
+
+        //Use absolute paths for dockerFile and build directory
+        String dockerFileDir = 
project.buildscript.sourceFile.getParentFile().getAbsolutePath()
+        String dockerFile = "$dockerFileDir/Dockerfile.cov"
 
-    def dockerCmd = ['tag']
-    if(major == 1 && minor < 12) {
-        dockerCmd += ['-f']
+        def cmd = dockerBinary + prepareBuildArgs(buildArgs) + ['-f', 
dockerFile, '-t', dockerImageName, dockerFileDir]
+        retry(cmd, dockerRetries, dockerTimeout)
+        println("Building '${dockerImageName}' took ${TimeCategory.minus(new 
Date(), start)}")
+
+        //Replace the original image with coverage one
+        project.ext.dockerTaggedImageName = dockerImagePrefix + '/' + 
dockerImageNameOrig + ':' + "cov"
     }
-    retry(dockerBinary + dockerCmd + [dockerImageName, dockerTaggedImageName], 
dockerRetries, dockerTimeout)
+    finalizedBy('tagImage')
 }
 
-task pushImage << {
-    def cmd = dockerBinary + ['push', dockerTaggedImageName]
-    retry(cmd, dockerRetries, dockerTimeout)
+def prepareBuildArgs(List buildArgs) {
+    def result = ['build']
+    if(project.hasProperty('dockerBuildArgs')) {
+        buildArgs.addAll(dockerBuildArgs)
+    }
+    buildArgs.each {arg ->
+        result += ['--build-arg', arg]
+    }
+    result
+}
+
+task tagImage {
+    doLast {
+        def versionString = (dockerBinary + ['-v']).execute().text
+        def matched = (versionString =~ /(\d+)\.(\d+)\.(\d+)/)
+
+        def major = matched[0][1] as int
+        def minor = matched[0][2] as int
+
+        def dockerCmd = ['tag']
+        if(major == 1 && minor < 12) {
+            dockerCmd += ['-f']
+        }
+        retry(dockerBinary + dockerCmd + [dockerImageName, 
dockerTaggedImageName], dockerRetries, dockerTimeout)
+    }
+}
+
+task pushImage {
+    doLast {
+        def cmd = dockerBinary + ['push', dockerTaggedImageName]
+        retry(cmd, dockerRetries, dockerTimeout)
+    }
 }
 pushImage.dependsOn tagImage
 pushImage.onlyIf { dockerRegistry != '' }

Reply via email to