Split maven-stage script into a reusable macro
[releng/global-jjb.git] / jjb / lf-maven-jobs.yaml
index 609c592..9f7173a 100644 (file)
           - ../shell/common-variables.sh
           - ../shell/maven-deploy.sh
 
+- builder:
+    name: lf-maven-stage
+    builders:
+      - shell: !include-raw-escape:
+          - ../shell/common-variables.sh
+          - ../shell/maven-stage.sh
+
+- builder:
+    name: lf-update-java-alternatives
+    builders:
+      - inject:
+          properties-content: 'SET_JDK_VERSION={java-version}'
+      - shell: !include-raw-escape: ../shell/update-java-alternatives.sh
+      - inject:
+          properties-file: '/tmp/java.env'
+
 ####################
 # COMMON FUNCTIONS #
 ####################
@@ -83,7 +99,6 @@
 
     project-type: freestyle
     node: '{build-node}'
-    jdk: '{java-version}'
 
     properties:
       - lf-infra-properties:
     builders:
       - lf-maven-install:
           mvn-version: '{mvn-version}'
+      - lf-update-java-alternatives:
+          java-version: '{java-version}'
       - lf-provide-maven-settings:
           global-settings-file: '{mvn-global-settings}'
           settings-file: '{mvn-settings}'
     builders:
       - lf-maven-install:
           mvn-version: '{mvn-version}'
+      - lf-update-java-alternatives:
+          java-version: '{java-version}'
       - lf-provide-maven-settings:
           global-settings-file: '{mvn-global-settings}'
           settings-file: '{mvn-settings}'
     builders:
       - lf-maven-install:
           mvn-version: '{mvn-version}'
+      - lf-update-java-alternatives:
+          java-version: '{java-version}'
       - lf-provide-maven-settings:
           global-settings-file: '{mvn-global-settings}'
           settings-file: '{mvn-settings}'
       - lf-jacoco-nojava-workaround
       - lf-maven-install:
           mvn-version: '{mvn-version}'
+      - lf-update-java-alternatives:
+          java-version: '{java-version}'
       - lf-provide-maven-settings:
           global-settings-file: '{mvn-global-settings}'
           settings-file: '{mvn-settings}'
       - lf-jacoco-nojava-workaround
       - lf-maven-install:
           mvn-version: '{mvn-version}'
+      - lf-update-java-alternatives:
+          java-version: '{java-version}'
       - lf-provide-maven-settings:
           global-settings-file: '{mvn-global-settings}'
           settings-file: '{mvn-settings}'
           - ../shell/common-variables.sh
           - ../shell/maven-patch-release.sh
           - ../shell/maven-build.sh
-          - ../shell/maven-stage.sh
+      - lf-maven-stage
       - lf-provide-maven-settings-cleanup
 
 - job-template:
 
     builders:
       - lf-infra-maven-sonar:
+          java-version: '{java-version}'
           mvn-settings: '{mvn-settings}'
           mvn-version: '{mvn-version}'
 
     builders:
       - lf-maven-install:
           mvn-version: '{mvn-version}'
+      - lf-update-java-alternatives:
+          java-version: '{java-version}'
       - inject:
           # Switch this to the sonar wrapper when JJB 2.0 is available
           properties-content: SONAR_HOST_URL=$SONAR_URL
       - lf-jacoco-nojava-workaround
       - lf-maven-install:
           mvn-version: '{mvn-version}'
+      - lf-update-java-alternatives:
+          java-version: '{java-version}'
       - lf-provide-maven-settings:
           global-settings-file: '{mvn-global-settings}'
           settings-file: '{mvn-settings}'
       - lf-jacoco-nojava-workaround
       - lf-maven-install:
           mvn-version: '{mvn-version}'
+      - lf-update-java-alternatives:
+          java-version: '{java-version}'
       - lf-provide-maven-settings:
           global-settings-file: '{mvn-global-settings}'
           settings-file: '{mvn-settings}'