[ 
https://issues.apache.org/jira/browse/BEAM-6936?focusedWorklogId=222270&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-222270
 ]

ASF GitHub Bot logged work on BEAM-6936:
----------------------------------------

                Author: ASF GitHub Bot
            Created on: 03/Apr/19 11:45
            Start Date: 03/Apr/19 11:45
    Worklog Time Spent: 10m 
      Work Description: adude3141 commented on pull request #8183: [BEAM-6936] 
Added Jenkins jobs running Java examples on Dataflow with Java 11
URL: https://github.com/apache/beam/pull/8183#discussion_r271701021
 
 

 ##########
 File path: runners/google-cloud-dataflow-java/examples/build.gradle
 ##########
 @@ -87,6 +87,61 @@ task preCommitFnApiWorker(type: Test) {
   }
 }
 
+task postCommitFnApiWorkerJava11(type: Test) {
+  dependsOn ":beam-runners-google-cloud-dataflow-java-fn-api-worker:shadowJar"
+  dependsOn 
":beam-runners-google-cloud-dataflow-java:buildAndPushDockerContainer"
+
+  def dataflowWorkerJar = project.findProperty('dataflowWorkerJar') ?: 
project(":beam-runners-google-cloud-dataflow-java-fn-api-worker").shadowJar.archivePath
+  def preCommitBeamTestPipelineOptions = [
+          "--project=${gcpProject}",
+          "--tempRoot=${gcsTempRoot}",
+          "--runner=TestDataflowRunner",
+          "--dataflowWorkerJar=${dataflowWorkerJar}",
+          "--workerHarnessContainerImage=${dockerImageName}",
+          "--experiments=${fnapiExperiments}",
+  ]
+  testClassesDirs = 
files(project(":beam-examples-java").sourceSets.test.output.classesDirs)
+  include "**/WordCountIT.class"
+  include "**/WindowedWordCountIT.class"
+  forkEvery 1
+  maxParallelForks 4
+  systemProperty "beamTestPipelineOptions", 
JsonOutput.toJson(preCommitBeamTestPipelineOptions)
+  useJUnit {
+    excludeCategories 'org.apache.beam.sdk.testing.StreamingIT'
+  }
+}
+
+task postCommitLegacyWorkerJava11(type: Test) {
 
 Review comment:
   Maybe something like this will do?
   
   ```diff
   diff --git a/runners/google-cloud-dataflow-java/examples/build.gradle 
b/runners/google-cloud-dataflow-java/examples/build.gradle
   index 72059bb064..f591e5009b 100644
   --- a/runners/google-cloud-dataflow-java/examples/build.gradle
   +++ b/runners/google-cloud-dataflow-java/examples/build.gradle
   @@ -42,25 +42,33 @@ def dockerImageName = 
project(':beam-runners-google-cloud-dataflow-java').ext.do
    // If -PuseExecutableStage is set, the 
use_executable_stage_bundle_execution wil be enabled.
    def fnapiExperiments = project.hasProperty('useExecutableStage') ? 
'beam_fn_api,use_executable_stage_bundle_execution' : "beam_fn_api"
    
   +// we require dataflowWorker, optional workerHarnessContainerImage and 
optional additionalOptions
   +def commonConfig = { dataflowWorkerJar, workerHarnessContainerImage = '', 
additionalOptions = [] ->
   +  // return the preevaluated configuration closure
   +  return {
   +    testClassesDirs = 
files(project(":beam-examples-java").sourceSets.test.output.classesDirs)
   +    include "**/WordCountIT.class"
   +    include "**/WindowedWordCountIT.class"
   +    forkEvery 1
   +    maxParallelForks 4
   +
   +    def preCommitBeamTestPipelineOptions = [
   +            "--project=${gcpProject}",
   +            "--tempRoot=${gcsTempRoot}",
   +            "--runner=TestDataflowRunner",
   +            "--dataflowWorkerJar=${dataflowWorkerJar}",
   +            "--workerHarnessContainerImage=${workerHarnessContainerImage}"
   +    ] + additionalOptions
   +    systemProperty "beamTestPipelineOptions", 
JsonOutput.toJson(preCommitBeamTestPipelineOptions)
   +  }
   +}
   +
    task preCommitLegacyWorker(type: Test) {
      dependsOn 
":beam-runners-google-cloud-dataflow-java-legacy-worker:shadowJar"
      def dataflowWorkerJar = project.findProperty('dataflowWorkerJar') ?: 
project(":beam-runners-google-cloud-dataflow-java-legacy-worker").shadowJar.archivePath
   -
      //Set workerHarnessContainerImage to empty to make Dataflow pick up the 
non-versioned container
      //image, which handles a staged worker jar.
   -  def preCommitBeamTestPipelineOptions = [
   -     "--project=${gcpProject}",
   -     "--tempRoot=${gcsTempRoot}",
   -     "--runner=TestDataflowRunner",
   -     "--dataflowWorkerJar=${dataflowWorkerJar}",
   -     "--workerHarnessContainerImage=",
   -  ]
   -  testClassesDirs = 
files(project(":beam-examples-java").sourceSets.test.output.classesDirs)
   -  include "**/WordCountIT.class"
   -  include "**/WindowedWordCountIT.class"
   -  forkEvery 1
   -  maxParallelForks 4
   -  systemProperty "beamTestPipelineOptions", 
JsonOutput.toJson(preCommitBeamTestPipelineOptions)
   +  with commonConfig(dataflowWorkerJar)
    }
    
    task verifyFnApiWorker(type: Test) {
   @@ -68,20 +76,7 @@ task verifyFnApiWorker(type: Test) {
      dependsOn 
":beam-runners-google-cloud-dataflow-java:buildAndPushDockerContainer"
    
      def dataflowWorkerJar = project.findProperty('dataflowWorkerJar') ?: 
project(":beam-runners-google-cloud-dataflow-java-fn-api-worker").shadowJar.archivePath
   -  def preCommitBeamTestPipelineOptions = [
   -          "--project=${gcpProject}",
   -          "--tempRoot=${gcsTempRoot}",
   -          "--runner=TestDataflowRunner",
   -          "--dataflowWorkerJar=${dataflowWorkerJar}",
   -          "--workerHarnessContainerImage=${dockerImageName}",
   -          "--experiments=${fnapiExperiments}",
   -  ]
   -  testClassesDirs = 
files(project(":beam-examples-java").sourceSets.test.output.classesDirs)
   -  include "**/WordCountIT.class"
   -  include "**/WindowedWordCountIT.class"
   -  forkEvery 1
   -  maxParallelForks 4
   -  systemProperty "beamTestPipelineOptions", 
JsonOutput.toJson(preCommitBeamTestPipelineOptions)
   +  with commonConfig(dataflowWorkerJar, dockerImageName, 
"--experiments=${fnapiExperiments}")
      useJUnit {
        excludeCategories 'org.apache.beam.sdk.testing.StreamingIT'
      }
   @@ -90,24 +85,10 @@ task verifyFnApiWorker(type: Test) {
    task postCommitLegacyWorkerJava11(type: Test) {
      dependsOn 
":beam-runners-google-cloud-dataflow-java-legacy-worker:shadowJar"
      def dataflowWorkerJar = project.findProperty('dataflowWorkerJar') ?: 
project(":beam-runners-google-cloud-dataflow-java-legacy-worker").shadowJar.archivePath
   -
      //Set workerHarnessContainerImage to empty to make Dataflow pick up the 
non-versioned container
      //image, which handles a staged worker jar.
   -  def preCommitBeamTestPipelineOptions = [
   -          "--project=${gcpProject}",
   -          "--tempRoot=${gcsTempRoot}",
   -          "--runner=TestDataflowRunner",
   -          "--dataflowWorkerJar=${dataflowWorkerJar}",
   -          "--workerHarnessContainerImage=",
   -  ]
   -  
   -  testClassesDirs = 
files(project(":beam-examples-java").sourceSets.test.output.classesDirs)
   -  include "**/WordCountIT.class"
   -  include "**/WindowedWordCountIT.class"
   -  forkEvery 1
   -  maxParallelForks 4
   +  with commonConfig(dataflowWorkerJar)
      systemProperty "java.specification.version", "11"
   -  systemProperty "beamTestPipelineOptions", 
JsonOutput.toJson(preCommitBeamTestPipelineOptions)
    }
    
    task java11PostCommit() {
   ```
   
   But please bear with me. It is a fast hack and I did not run. Also, if you 
decide to use, doublecheck that I did not accidentally deleted some required 
configuration.
 
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


Issue Time Tracking
-------------------

    Worklog Id:     (was: 222270)
    Time Spent: 2h 10m  (was: 2h)

> Add a Jenkins job running Java examples on Java 11 Dataflow
> -----------------------------------------------------------
>
>                 Key: BEAM-6936
>                 URL: https://issues.apache.org/jira/browse/BEAM-6936
>             Project: Beam
>          Issue Type: Sub-task
>          Components: examples-java, testing
>            Reporter: Michal Walenia
>            Assignee: Michal Walenia
>            Priority: Minor
>          Time Spent: 2h 10m
>  Remaining Estimate: 0h
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to