Manage multiple slaves for functest 17/67717/1
authorCédric Ollivier <cedric.ollivier@orange.com>
Sun, 28 Apr 2019 12:22:34 +0000 (14:22 +0200)
committerCédric Ollivier <cedric.ollivier@orange.com>
Sun, 28 Apr 2019 12:22:34 +0000 (14:22 +0200)
It allows testing multiple Functest tags in parallel.

Change-Id: I29708953095cfd93724c593b6af02f151c68e202
Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
jjb/functest/functest.yaml

index 9792950..5055275 100644 (file)
     tag:
       - latest:
           branch: master
+          slave: lf-virtual9
       - iruya:
           branch: stable/iruya
+          slave: lf-virtual4
       - hunter:
           branch: stable/hunter
+          slave: functest-virtual
 
 - parameter:
     name: functest-slave
     parameters:
       - label:
           name: slave
-          default: functest-virtual
+          default: '{slave}'
 
 - parameter:
     name: functest-branch
           fi
           sudo docker run --rm \
             -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
+            -e DEBUG=True \
             -e EXTERNAL_NETWORK=public \
             -v /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file \
             -v /home/opnfv/functest/images:/home/opnfv/functest/images \
 - job-template:
     name: 'functest-{repo}-{container}-{tag}-pull'
     parameters:
-      - functest-slave
+      - functest-slave:
+          slave: '{slave}'
     builders:
       - functest-pull-containers:
           <<: *functest-containers
 - job-template:
     name: 'functest-{repo}-{container}-{tag}-rmi'
     parameters:
-      - functest-slave
+      - functest-slave:
+          slave: '{slave}'
     builders:
       - functest-remove-images:
           <<: *functest-containers
 - job-template:
     name: 'functest-{repo}-{container}-{tag}-{test}-run'
     parameters:
-      - functest-slave
+      - functest-slave:
+          slave: '{slave}'
     builders:
       - functest-run-containers:
           <<: *functest-run-containers
     triggers:
       - timed: '@daily'
     parameters:
-      - functest-slave
+      - functest-slave:
+          slave: '{slave}'
     properties:
       - build-blocker:
           use-build-blocker: true
           blocking-level: 'NODE'
           blocking-jobs:
-            - '^(functest|functest-kubernetes)-[a-z]+-(daily|check|gate)$'
+            - '^functest-{tag}-(daily|check|gate)$'
     builders:
       - multijob:
           name: remove former images
 - job-template:
     name: 'functest-{repo}-{container}-{tag}-gate'
     parameters:
-      - functest-slave
+      - functest-slave:
+          slave: '{slave}'
     scm:
       - functest-scm:
           ref: $GERRIT_REFSPEC
 - job-template:
     name: 'functest-{repo}-{container}-{tag}-check'
     parameters:
-      - functest-slave
+      - functest-slave:
+          slave: '{slave}'
       - functest-branch:
           branch: '{branch}'
     scm:
     port:
     container: alpine
     tag: 3.9
+    slave: master
     jobs:
       - 'functest-{repo}-{container}-{tag}-rmi'
 
     port:
     container: alpine
     tag: 3.9
+    slave: master
     jobs:
       - 'functest-{repo}-{container}-{tag}-pull'
 
     name: 'functest-{tag}-check'
     project-type: multijob
     parameters:
-      - functest-slave
+      - functest-slave:
+          slave: '{slave}'
       - functest-branch:
           branch: '{branch}'
     properties:
           use-build-blocker: true
           blocking-level: 'NODE'
           blocking-jobs:
-            - '^(functest|functest-kubernetes)-[a-z]+-(daily|check|gate)$'
+            - '^functest-{tag}-(daily|check|gate)$'
     builders:
       - multijob:
           name: remove former images
       - functest-patchset-created:
           branch: '{branch}'
     parameters:
-      - functest-slave
+      - functest-slave:
+          slave: '{slave}'
     properties:
       - build-blocker:
           use-build-blocker: true
           blocking-level: 'NODE'
           blocking-jobs:
-            - '^(functest|functest-kubernetes)-[a-z]+-(daily|check|gate)$'
+            - '^functest-{tag}-(daily|check|gate)$'
     builders:
       - multijob:
           name: remove former images