Chore: Upgrade Jenkins-job-builder to 6.3.0
[releng/global-jjb.git] / jjb / lf-gradle-jobs.yaml
index 424d83e..ba15f11 100644 (file)
@@ -21,6 +21,7 @@
     submodule-timeout: 10
     submodule-disable: false
     cron: "@daily"
+    wrapper: true
 
     archive-artifacts: >
       **/*.log
@@ -58,7 +59,7 @@
     publishers:
       - lf-infra-publish
 
-    gerrit_gradle_triggers:
+    gerrit_gradle_verify_triggers:
       - patchset-created-event:
           exclude-drafts: true
           exclude-trivial-rebase: false
       - comment-added-contains-event:
           comment-contains-value: '^Patch Set\s+\d+:\s+(recheck|reverify)\s*$'
 
+    gerrit_gradle_merge_triggers:
+      - change-merged-event
+      - comment-added-contains-event:
+          comment-contains-value: '^Patch Set\s+\d+:\s+remerge\s*$'
+
     gerrit_trigger_file_paths:
       - compare-type: REG_EXP
         pattern: ".*"
     <<: *lf_gradle_common
 
     builders:
-      - shell: |
-          ./gradlew build
+      - lf-infra-pre-build
+      - lf-update-java-alternatives:
+          java-version: "{java-version}"
+      - lf-infra-docker-login:
+          global-settings-file: "global-settings"
+          settings-file: "{mvn-settings}"
+      - gradle:
+          wrapper: "{wrapper}"
+          executable: true
+          tasks: |
+            build
 
     scm:
       - lf-infra-gerrit-scm:
           submodule-recursive: "{submodule-recursive}"
           submodule-timeout: "{submodule-timeout}"
           submodule-disable: "{submodule-disable}"
-          choosing-strategy: default
+          choosing-strategy: gerrit
 
     triggers:
       - timed: "{obj:cron}"
       - gerrit:
           server-name: "{gerrit-server-name}"
-          trigger-on: "{obj:gerrit_gradle_triggers}"
+          trigger-on: "{obj:gerrit_gradle_verify_triggers}"
           projects:
             - project-compare-type: ANT
               project-pattern: "{project}"
     <<: *lf_gradle_common
 
     builders:
-      - shell: |
-          ./gradlew build
+      - lf-infra-pre-build
+      - lf-update-java-alternatives:
+          java-version: "{java-version}"
+      - lf-infra-docker-login:
+          global-settings-file: "global-settings"
+          settings-file: "{mvn-settings}"
+      - gradle:
+          wrapper: "{wrapper}"
+          executable: true
+          tasks: |
+            build
 
     scm:
       - lf-infra-github-scm:
           github-hooks: true
           white-list-target-branches:
             - "{branch}"
+
+- job-template:
+    name: "{project-name}-gradle-publish-jar-{stream}"
+    id: gerrit-gradle-publish-jar
+    <<: *lf_gradle_common
+
+    builders:
+      - lf-infra-pre-build
+      - lf-update-java-alternatives:
+          java-version: "{java-version}"
+      - lf-infra-docker-login:
+          global-settings-file: "global-settings"
+          settings-file: "{mvn-settings}"
+      - gradle:
+          wrapper: "{wrapper}"
+          executable: true
+          tasks: |
+            shadowJar
+            publish
+
+    scm:
+      - lf-infra-gerrit-scm:
+          jenkins-ssh-credential: "{jenkins-ssh-credential}"
+          git-url: "{git-url}"
+          refspec: "$GERRIT_REFSPEC"
+          branch: "$GERRIT_BRANCH"
+          submodule-recursive: "{submodule-recursive}"
+          submodule-timeout: "{submodule-timeout}"
+          submodule-disable: "{submodule-disable}"
+          choosing-strategy: default
+
+    triggers:
+      - timed: "{obj:cron}"
+      - gerrit:
+          server-name: "{gerrit-server-name}"
+          trigger-on: "{obj:gerrit_gradle_merge_triggers}"
+          projects:
+            - project-compare-type: ANT
+              project-pattern: "{project}"
+              branches:
+                - branch-compare-type: ANT
+                  branch-pattern: "**/{branch}"
+              file-paths: "{obj:gerrit_trigger_file_paths}"