summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCédric Ollivier <cedric.ollivier@orange.com>2019-10-19 14:33:49 +0200
committerCédric Ollivier <cedric.ollivier@orange.com>2019-10-19 14:35:38 +0200
commit502e0f5fbe1925c79ecc52175f1aac342b53d7fb (patch)
treeb24368e2086d4c268681583930e17290d6709400
parente9e775c4de6be47dd51b63f5a81e7aa365a9fea5 (diff)
Rewrite Functest verification job
It deeply simplifies the overall logic and prepare a possible next integration in the gate multijobs. It's also needed by "Check spelling in rst files" [1] which asks for the 'enchant' C library [2]. [1] https://gerrit.opnfv.org/gerrit/c/functest/+/68643 [2] https://build.opnfv.org/ci/job/functest-verify-unit-tests-and-docs-master/2459/console Change-Id: I07cd1f6b008e5b121d5d9852112f5db756c87da4 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
-rw-r--r--jjb/functest/functest-project-jobs.yaml187
1 files changed, 44 insertions, 143 deletions
diff --git a/jjb/functest/functest-project-jobs.yaml b/jjb/functest/functest-project-jobs.yaml
index d50b1a531..a7f54f4bb 100644
--- a/jjb/functest/functest-project-jobs.yaml
+++ b/jjb/functest/functest-project-jobs.yaml
@@ -1,167 +1,68 @@
---
-###################################################
-# All the jobs except verify have been removed!
-# They will only be enabled on request by projects!
-###################################################
-- project:
- name: functest-project-jobs
-
- project: 'functest'
-
- jobs:
- - 'functest-verify-{stream}'
- - 'functest-verify-{phase}-{stream}'
-
- stream:
- - master:
- branch: '{stream}'
- gs-pathname: ''
- disabled: false
+- functest-project-params: &functest-project-params
+ name: 'functest-project-params'
+ tag:
+ - latest:
+ branch: master
+ slave: lf-virtual9
- jerma:
- branch: 'stable/{stream}'
- gs-pathname: ''
- disabled: false
+ branch: stable/jerma
+ slave: lf-virtual4
- iruya:
- branch: 'stable/{stream}'
- gs-pathname: ''
- disabled: false
+ branch: stable/iruya
+ slave: lf-virtual4
- hunter:
- branch: 'stable/{stream}'
- gs-pathname: ''
- disabled: false
-
- phase:
- - 'unit-tests-and-docs':
- slave-label: 'lf-virtual1'
-
-- job-template:
- name: 'functest-verify-{stream}'
-
- disabled: '{obj:disabled}'
-
- project-type: 'multijob'
-
- parameters:
- - project-parameter:
- project: '{project}'
- branch: '{branch}'
- - 'opnfv-build-ubuntu-defaults'
-
- scm:
- - git-scm-gerrit
-
- triggers:
- - 'functest-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: 'functest-build-and-unittest'
- execution-type: PARALLEL
- projects:
- - name: 'functest-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: 'functest-verify-{phase}-{stream}'
-
- disabled: '{obj:disabled}'
-
- wrappers:
- - ssh-agent-wrapper
- - build-timeout:
- timeout: 60
-
- parameters:
- - project-parameter:
- project: '{project}'
- branch: '{branch}'
- - '{slave-label}-defaults'
-
- scm:
- - git-scm-gerrit
+ branch: stable/hunter
+ slave: lf-virtual6
+- builder:
+ name: functest-run-tox
builders:
- - 'functest-verify-{phase}-builders-macro'
-
- publishers:
- - 'functest-verify-{phase}-publishers-macro'
+ - shell: tox
-################################
-# job triggers
-################################
- trigger:
- name: 'functest-verify-triggers-macro'
+ name: functest-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'
branches:
- branch-compare-type: 'ANT'
branch-pattern: '**/{branch}'
- disable-strict-forbidden-file-verification: 'true'
- forbidden-file-paths:
- - compare-type: ANT
- pattern: 'docs/**|.gitignore'
-
-################################
-# job builders
-################################
+ skip-vote:
+ successful: false
+ failed: false
+ unstable: false
+ notbuilt: false
+
+- parameter:
+ name: functest-project-slave
+ parameters:
+ - label:
+ name: slave
+ default: '{slave}'
-- builder:
- name: 'functest-verify-unit-tests-and-docs-builders-macro'
+- job-template:
+ name: 'functest-run-tox-{tag}'
+ triggers:
+ - functest-project-patchset-created:
+ branch: '{branch}'
+ parameters:
+ - functest-project-slave:
+ slave: '{slave}'
builders:
- - shell: |
- cd $WORKSPACE && tox
+ - functest-run-tox
-################################
-# job publishers
-################################
-- publisher:
- name: 'functest-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: 'functest-run-tox'
+ <<: *functest-project-params
+ jobs:
+ - 'functest-run-tox-{tag}'