Feat: Add CentOS Streams 8 packer jobs
[ci-management.git] / jjb / global-templates-script.yaml
index 8359372..3dbe82d 100644 (file)
 # vim: sw=2 ts=2 sts=2 et :
 
 - job-template:
-    # Job template for basic scm and script trigger
+    #
+    # job template for verifying gerrit changeset by shell script
+    #
+    # Required Variables:
+    #   project-name:   name of project
+    #   area:           area of project covered with this verification job
+    #   project:        name of scm repository to work on
+    #   stream:         name of stream used (set the same as branch if you're not sure)
+    #   branch:         git branch to work on
+    #   script:         build script to execute
+    # Optional Variables:
+    #   pattern:          trigger job only if modification covered file in pattern
+    #   build-node:     label(flavor) of jenkins slave
+    name: '{project-name}-{stream}-{area}-verify-shell'
+    node: '{build-node}'
+    type: freestyle
+    concurrent: true
+    disable-job: false
+    disabled: '{disable-job}'
+
+    pattern: '**'
+
+    parameters:
+      - lf-infra-parameters:
+          branch: '{branch}'
+          project: '{project}'
+          stream: '{stream}'
+          lftools-version: '{lftools-version}'
+
+    scm:
+      - gerrit-trigger-scm:
+          refspec: '$GERRIT_REFSPEC'
+          submodule-recursive: '{submodule-recursive}'
+          choosing-strategy: 'gerrit'
+
+    triggers:
+      - gerrit-trigger-patch-submitted:
+          server: '{server-name}'
+          project: '{project}'
+          branch: '{branch}'
+          files: '{pattern}'
+
+    wrappers:
+      - infra-wrappers:
+          build-timeout: '{build-timeout}'
+
+    builders:
+      - shell: '{script}'
+
+    publishers:
+      - lf-infra-publish
+
+- job-template:
+    # Job template for 2 scm and script trigger
     #
     # Required Variables:
     #   branch:         git branch
     #   build-node:     what build node to run on
     #   script:         build script to execute
+    #   extra-project:  extra gerrit project to checkout
+    #   extra-refspec:  refspec for the extra project
+    #   extra-branch:   branch to checkout for the extra project
+    #   checkout-dir:   directory to checkout the extra project to
+    #                     DO NOT SET THIS TO anything that translates to
+    #                     $WORKSPACE as it will destroy the initial
+    #                     project checkout
 
-    name: '{project-name}-{stream}-verify-script'
+    name: '{project-name}-{stream}-two-scm-verify-script'
 
     project-type: freestyle
     concurrent: true
     node: '{build-node}'
 
     properties:
-      - ecomp-infra-properties:
+      - infra-properties:
           build-days-to-keep: '{build-days-to-keep}'
 
     parameters:
-      - ecomp-infra-parameters:
+      - infra-parameters:
           project: '{project}'
           branch: '{branch}'
           refspec: 'refs/heads/{branch}'
           artifacts: '{archive-artifacts}'
       - maven-exec:
-          maven-version: 'mvn33'
+          maven-version: '{maven-version}'
 
     scm:
       - gerrit-trigger-scm:
           refspec: '$GERRIT_REFSPEC'
           choosing-strategy: 'gerrit'
+          submodule-recursive: '{submodule-recursive}'
+      - git-extra-project:
+          project: '{extra-project}'
+          refspec: '{extra-refspec}'
+          branch: '{extra-branch}'
+          checkout-dir: '{checkout-dir}'
 
     wrappers:
-      - ecomp-infra-wrappers:
+      - infra-wrappers:
           build-timeout: '{build-timeout}'
 
     triggers:
           files: '**'
 
     builders:
+      - lf-infra-pre-build
       - provide-maven-settings:
           global-settings-file: 'global-settings'
           settings-file: '{mvn-settings}'
       # make sure maven gets installed / setup
       - maven-target:
-          maven-version: 'mvn33'
+          maven-version: '{maven-version}'
           goals: '--version'
           settings: '{mvn-settings}'
           settings-type: cfp
           global-settings-type: cfp
       - shell: '{script}'
 
-#    publishers:
-#      - ecomp-infra-shiplogs:
-#          maven-version: 'mvn33'
+    publishers:
+      - lf-infra-publish
+
+# vim: sw=2 ts=2 sts=2 et :
 
 - job-template:
-    # Job template for 2 scm and script trigger
+    # Job template for two scm and script trigger - for docker merge
     #
     # Required Variables:
     #   branch:         git branch
     #   build-node:     what build node to run on
     #   script:         build script to execute
-    #   extra-project:  extra gerrit project to checkout
-    #   extra-refspec:  refspec for the extra project
-    #   extra-branch:   branch to checkout for the extra project
-    #   checkout-dir:   directory to checkout the extra project to
-    #                     DO NOT SET THIS TO anything that translates to
-    #                     $WORKSPACE as it will destroy the initial
-    #                     project checkout
 
-    name: '{project-name}-{stream}-two-scm-verify-script'
+    name: '{project-name}-{stream}-two-scm-merge-docker-script'
 
     project-type: freestyle
     concurrent: true
     node: '{build-node}'
 
     properties:
-      - ecomp-infra-properties:
+      - infra-properties:
           build-days-to-keep: '{build-days-to-keep}'
 
     parameters:
-      - ecomp-infra-parameters:
+      - infra-parameters:
           project: '{project}'
           branch: '{branch}'
           refspec: 'refs/heads/{branch}'
           artifacts: '{archive-artifacts}'
       - maven-exec:
-          maven-version: 'mvn33'
+          maven-version: '{maven-version}'
 
     scm:
       - gerrit-trigger-scm:
-          refspec: '$GERRIT_REFSPEC'
-          choosing-strategy: 'gerrit'
+          refspec: ''
+          choosing-strategy: 'default'
+          submodule-recursive: '{submodule-recursive}'
       - git-extra-project:
           project: '{extra-project}'
           refspec: '{extra-refspec}'
           checkout-dir: '{checkout-dir}'
 
     wrappers:
-      - ecomp-infra-wrappers:
+      - infra-wrappers:
           build-timeout: '{build-timeout}'
 
     triggers:
-      - gerrit-trigger-patch-submitted:
+      - gerrit-trigger-patch-merged:
           server: '{server-name}'
           project: '{project}'
           branch: '{branch}'
           files: '**'
 
     builders:
+      - lf-infra-pre-build
       - provide-maven-settings:
           global-settings-file: 'global-settings'
           settings-file: '{mvn-settings}'
+      - docker-login
       # make sure maven gets installed / setup
       - maven-target:
-          maven-version: 'mvn33'
+          maven-version: '{maven-version}'
           goals: '--version'
           settings: '{mvn-settings}'
           settings-type: cfp
           global-settings-type: cfp
       - shell: '{script}'
 
-#    publishers:
-#      - ecomp-infra-shiplogs:
-#          maven-version: 'mvn33'
-
+    publishers:
+      - lf-infra-publish
 
 - job-template:
-    # Job template for 3 scm and script trigger
+    # Job template for two scm and script trigger - for docker daily release
     #
     # Required Variables:
     #   branch:         git branch
     #   build-node:     what build node to run on
     #   script:         build script to execute
-    #   extra-project1:  extra gerrit project to checkout
-    #   extra-refspec1:  refspec for the extra project
-    #   extra-branch1:   branch to checkout for the extra project
-    #   checkout-dir1:   directory to checkout the extra project to
-    #                     DO NOT SET THIS TO anything that translates to
-    #                     $WORKSPACE as it will destroy the initial
-    #                     project checkout
-    #   extra-project2:  extra gerrit project to checkout
-    #   extra-refspec2:  refspec for the extra project
-    #   extra-branch2:   branch to checkout for the extra project
-    #   checkout-dir2:   directory to checkout the extra project to
-    #                     DO NOT SET THIS TO anything that translates to
-    #                     $WORKSPACE as it will destroy the initial
-    #                     project checkout
-    name: '{project-name}-{stream}-three-scm-verify-script'
+
+    name: '{project-name}-{stream}-two-scm-release-docker-script-manual'
 
     project-type: freestyle
     concurrent: true
     node: '{build-node}'
 
     properties:
-      - ecomp-infra-properties:
+      - infra-properties:
           build-days-to-keep: '{build-days-to-keep}'
 
     parameters:
-      - ecomp-infra-parameters:
+      - infra-parameters:
           project: '{project}'
           branch: '{branch}'
           refspec: 'refs/heads/{branch}'
           artifacts: '{archive-artifacts}'
       - maven-exec:
-          maven-version: 'mvn33'
+          maven-version: '{maven-version}'
 
     scm:
       - gerrit-trigger-scm:
-          refspec: '$GERRIT_REFSPEC'
-          choosing-strategy: 'gerrit'
-      - git-extra-project:
-          project: '{extra-project1}'
-          refspec: '{extra-refspec1}'
-          branch: '{extra-branch1}'
-          checkout-dir: '{checkout-dir1}'
+          refspec: ''
+          choosing-strategy: 'default'
+          submodule-recursive: '{submodule-recursive}'
       - git-extra-project:
-          project: '{extra-project2}'
-          refspec: '{extra-refspec2}'
-          branch: '{extra-branch2}'
-          checkout-dir: '{checkout-dir2}'
+          project: '{extra-project}'
+          refspec: '{extra-refspec}'
+          branch: '{extra-branch}'
+          checkout-dir: '{checkout-dir}'
 
     wrappers:
-      - ecomp-infra-wrappers:
+      - infra-wrappers:
           build-timeout: '{build-timeout}'
 
     triggers:
-      - gerrit-trigger-patch-submitted:
+      - gerrit-trigger-release-manually:
           server: '{server-name}'
           project: '{project}'
           branch: '{branch}'
-          files: '**'
 
     builders:
+      - lf-infra-pre-build
       - provide-maven-settings:
           global-settings-file: 'global-settings'
           settings-file: '{mvn-settings}'
+      - docker-login
       # make sure maven gets installed / setup
       - maven-target:
-          maven-version: 'mvn33'
+          maven-version: '{maven-version}'
           goals: '--version'
           settings: '{mvn-settings}'
           settings-type: cfp
           global-settings-type: cfp
       - shell: '{script}'
 
-#    publishers:
-#      - ecomp-infra-shiplogs:
-#          maven-version: 'mvn33'
+    publishers:
+      - lf-infra-publish