[HELM] Clean up and fix oom helm jobs
[ci-management.git] / jjb / global-templates-helm.yaml
index 3ce9285..7b74b0e 100644 (file)
@@ -8,7 +8,14 @@
     builders:
       - inject:
           properties-content: "SERVER_ID={server-id}"
-      - shell: !include-raw-escape: ../shell/oom-create-netrc.sh
+      - shell: !include-raw-escape: ../shell/helm/oom-create-netrc.sh
+
+- builder:
+    name: helm-install
+    builders:
+      - inject:
+          properties-content: "HELM_VER={helm_ver}"
+      - shell: !include-raw-escape: ../shell/helm/helm-install.sh
 
 ###########
 # ANCHORS #
     ######################
     # Default parameters #
     ######################
-
     branch: master
-    submodule-recursive: true
-
     # default params for helm jobs
     build_script: ''
     git-url: '$GIT_URL/$PROJECT'
     post_build_script: ''
     pre_build_script: ''
-    submodule-disable: false
-    submodule-timeout: 10
     build-timeout: 240
 
     #####################
           project: '{project}'
           stream: '{stream}'
           lftools-version: '{lftools-version}'
+      - string:
+          name: HELM_BIN
+          default: '{helm_bin|helm3.8}'
+      - string:
+          name: BUILD_TYPE
+          default: '{build_type|snapshot}'
 
     wrappers:
       - lf-infra-wrappers:
           build-timeout: '{build-timeout}'
           jenkins-ssh-credential: '{jenkins-ssh-credential}'
 
+    builders:
+      - lf-infra-pre-build
+      - lf-provide-maven-settings:
+          global-settings-file: '{mvn-global-settings}'
+          settings-file: '{mvn-settings}'
+      - shell: '{obj:pre_build_script}'
+      - shell: '{obj:build_script}'
+      - oom-create-netrc:
+          server-id: oom-helm
+      - shell: '{obj:post_build_script}'
+      - lf-provide-maven-settings-cleanup
+
     publishers:
       - lf-infra-publish
 
 
     triggers:
       - gerrit-trigger-helm-patch-submitted:
-          status-context: '{project}-Helm-Verify'
           server: '{server-name}'
           project: '{project}'
           branch: '{branch}'
-          helm_bin: '{helm_bin}'
           files: '{files}'
 
-    builders:
-      - lf-infra-pre-build
-      - shell: |
-          echo "export HELM_BIN={helm_bin}" > helm.prop
-      - shell: '{obj:pre_build_script}'
-      - shell: '{obj:build_script}'
-
 - job-template:
     name: '{project-name}-{stream}-merge-helm'
     # Job template for Helm merge jobs
           server: '{server-name}'
           project: '{project}'
           branch: '{branch}'
-          helm_bin: '{helm_bin}'
           files: '{files}'
 
-    builders:
-      - lf-infra-pre-build
-      - lf-provide-maven-settings:
-          global-settings-file: '{mvn-global-settings}'
-          settings-file: '{mvn-settings}'
-      - shell: |
-          echo "export HELM_BIN={helm_bin}" > helm.prop
-      - shell: '{obj:pre_build_script}'
-      - shell: '{obj:build_script}'
-      - oom-create-netrc:
-          server-id: oom-helm
-      - inject:
-          properties-content: |
-            BUILD_TYPE=snapshot
-      - shell: '{obj:post_build_script}'
-      - lf-provide-maven-settings-cleanup
-
 - job-template:
     name: '{project-name}-{stream}-release-helm'
     # Job template for Helm stage jobs
 
     triggers:
       - gerrit:
-          helm_bin: '{helm_bin}'
           server-name: '{gerrit-server-name}'
           trigger-on:
             - comment-added-contains-event:
                 - compare-type: 'ANT'
                   pattern: '**'
 
+- job-template:
+    name: '{project-name}-{stream}-verify-make-{helm_bin}'
+
+    <<: *helm_job_boiler_plate
+
+    scm:
+      - gerrit-trigger-scm:
+          refspec: ''
+          choosing-strategy: 'default'
+          submodule-recursive: '{submodule-recursive}'
+
+    triggers:
+      - gerrit:
+          server-name: '{gerrit-server-name}'
+          trigger-on:
+            - comment-added-contains-event:
+                comment-contains-value: '^Patch Set\s+\d+:\s+helm-latest\s*$'
+          projects:
+            - project-compare-type: 'ANT'
+              project-pattern: '{project}'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
+              file-paths:
+                - compare-type: 'ANT'
+                  pattern: '**'
+
     builders:
       - lf-infra-pre-build
-      - lf-provide-maven-settings:
-          global-settings-file: '{mvn-global-settings}'
-          settings-file: '{mvn-settings}'
-      - shell: |
-          echo "export HELM_BIN={helm_bin}" > helm.prop
+      - helm-install:
+          helm_ver: 3.10.2
       - shell: '{obj:pre_build_script}'
       - shell: '{obj:build_script}'
-      - oom-create-netrc:
-          server-id: oom-helm
-      - inject:
-          properties-content: |
-            BUILD_TYPE=release
-      - shell: '{obj:post_build_script}'
-      - lf-provide-maven-settings-cleanup