Rewrite Xtesting verification job
[releng.git] / jjb / functest / xtesting-project-jobs.yaml
index b030fce..a1013fe 100644 (file)
 ---
-###################################################
-# All the jobs except verify have been removed!
-# They will only be enabled on request by projects!
-###################################################
-- project:
-    name: xtesting-project-jobs
-
-    project: 'functest-xtesting'
-
-    jobs:
-      - 'xtesting-verify-{stream}'
-      - 'xtesting-verify-{phase}-{stream}'
-
-    stream:
-      - master:
-          branch: '{stream}'
-          gs-pathname: ''
-          disabled: false
-      - jerma: &jerma
-          branch: 'stable/{stream}'
-          gs-pathname: '/{stream}'
-          disabled: false
-      - iruya: &iruya
-          branch: 'stable/{stream}'
-          gs-pathname: '/{stream}'
-          disabled: false
-      - hunter: &hunter
-          branch: 'stable/{stream}'
-          gs-pathname: '/{stream}'
-          disabled: false
-
-    phase:
-      - 'unit-tests-and-docs':
-          slave-label: 'lf-virtual1'
-
-- job-template:
-    name: 'xtesting-verify-{stream}'
-
-    disabled: '{obj:disabled}'
-
-    project-type: 'multijob'
-
-    parameters:
-      - project-parameter:
-          project: '{project}'
-          branch: '{branch}'
-      - 'opnfv-build-ubuntu-defaults'
-
-    scm:
-      - git-scm-gerrit
-
-    triggers:
-      - 'xtesting-verify-triggers-macro':
-          project: '{project}'
-          branch: '{branch}'
-
-    builders:
-      - shell: |
-          #!/bin/bash
-          # we do nothing here as the main stuff will be done
-          # in phase jobs
-          echo "Triggering phase jobs!"
-      - multijob:
-          name: 'xtesting-build-and-unittest'
-          execution-type: PARALLEL
-          projects:
-            - name: 'xtesting-verify-unit-tests-and-docs-{stream}'
-              current-parameters: false
-              predefined-parameters: |
-                GERRIT_BRANCH=$GERRIT_BRANCH
-                GERRIT_REFSPEC=$GERRIT_REFSPEC
-                GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
-                GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
-              git-revision: true
-              node-parameters: false
-              kill-phase-on: FAILURE
-              abort-all-job: false
-
-- job-template:
-    name: 'xtesting-verify-{phase}-{stream}'
-
-    disabled: '{obj:disabled}'
-
-    wrappers:
-      - ssh-agent-wrapper
-      - build-timeout:
-          timeout: 30
-
-    parameters:
-      - project-parameter:
-          project: '{project}'
-          branch: '{branch}'
-      - '{slave-label}-defaults'
-
-    scm:
-      - git-scm-gerrit
+- xtesting-project-params: &xtesting-project-params
+    name: 'xtesting-project-params'
+    tag:
+      - latest:
+          branch: master
+          slave: lf-virtual1
+      - jerma:
+          branch: stable/jerma
+          slave: lf-virtual1
+      - iruya:
+          branch: stable/iruya
+          slave: lf-virtual1
+      - hunter:
+          branch: stable/hunter
+          slave: lf-virtual1
 
+- builder:
+    name: xtesting-run-tox
     builders:
-      - 'xtesting-verify-{phase}-builders-macro'
-
-    publishers:
-      - 'xtesting-verify-{phase}-publishers-macro'
+      - shell: tox
 
-################################
-# job triggers
-################################
 - trigger:
-    name: 'xtesting-verify-triggers-macro'
+    name: xtesting-project-patchset-created
     triggers:
       - gerrit:
           server-name: 'gerrit.opnfv.org'
           trigger-on:
-            - patchset-created-event:
-                exclude-drafts: 'false'
-                exclude-trivial-rebase: 'false'
-                exclude-no-code-change: 'false'
-            - draft-published-event
+            - patchset-created-event
             - comment-added-contains-event:
                 comment-contains-value: 'recheck'
             - comment-added-contains-event:
                 comment-contains-value: 'reverify'
           projects:
             - project-compare-type: 'ANT'
-              project-pattern: '{project}'
+              project-pattern: 'functest-xtesting'
               branches:
                 - branch-compare-type: 'ANT'
                   branch-pattern: '**/{branch}'
-              disable-strict-forbidden-file-verification: 'true'
-              forbidden-file-paths:
-                - compare-type: ANT
-                  pattern: 'docs/**|.gitignore'
+          skip-vote:
+            successful: false
+            failed: false
+            unstable: false
+            notbuilt: false
+
+- parameter:
+    name: xtesting-project-slave
+    parameters:
+      - label:
+          name: slave
+          default: '{slave}'
 
-################################
-# job builders
-################################
+- scm:
+    name: xtesting-project-scm
+    scm:
+      - git:
+          url: https://gerrit.opnfv.org/gerrit/functest-xtesting
+          refspec: '+refs/changes/*:refs/changes/*'
+          branches:
+            - '{ref}'
 
-- builder:
-    name: 'xtesting-verify-unit-tests-and-docs-builders-macro'
+- job-template:
+    name: 'xtesting-run-tox-{tag}'
+    triggers:
+      - xtesting-project-patchset-created:
+          branch: '{branch}'
+    scm:
+      - xtesting-project-scm:
+          ref: $GERRIT_REFSPEC
+    parameters:
+      - xtesting-project-slave:
+          slave: '{slave}'
     builders:
-      - shell: |
-          cd $WORKSPACE && tox
+      - xtesting-run-tox
 
-################################
-# job publishers
-################################
-- publisher:
-    name: 'xtesting-verify-unit-tests-and-docs-publishers-macro'
-    publishers:
-      - junit:
-          results: nosetests.xml
-      - cobertura:
-          report-file: "coverage.xml"
-          only-stable: "true"
-          health-auto-update: "true"
-          stability-auto-update: "true"
-          zoom-coverage-chart: "true"
-          targets:
-            - files:
-                healthy: 10
-                unhealthy: 20
-                failing: 30
-            - method:
-                healthy: 50
-                unhealthy: 40
-                failing: 30
-      - email-jenkins-admins-on-failure
+- project:
+    name: 'xtesting-run-tox'
+    <<: *xtesting-project-params
+    jobs:
+      - 'xtesting-run-tox-{tag}'