joid: Switch using labels instead of slaves 77/14677/3
authorFatih Degirmenci <fatih.degirmenci@ericsson.com>
Wed, 25 May 2016 20:28:20 +0000 (22:28 +0200)
committerFatih Degirmenci <fatih.degirmenci@ericsson.com>
Thu, 26 May 2016 06:55:44 +0000 (06:55 +0000)
This change switches joid jobs to use labels instead of tying
jobs to slaves.

The changes in detail are:
- Joid jobs can roam on any pod that is labelled with joid-baremetal
  and joid-virtual.
- Above means that there is no branch/pod allocation anymore.
- New jobs are created in order to get rid of pod names from them and
  just use baremetal or virtual in names.
- Old jobs are removed.
- Related test jobs are updated.
- POD specific parameters are updated and instead of adding pod
  specific parameters, they now become parameters for all the pods
  labelled with same label. It is not a problem at the moment as
  both Intel PODs (pod5, pod6) have same parameters but a different
  pod with different parameters will require alignment between pods.

Job structure remains same; one parent job calling 3 downstream jobs:
deploy, functest, yardstick.

Change-Id: I30d270cd05ba3756f6f161d65ee5160eab6b80f4
Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
jjb/functest/functest-ci-jobs.yml
jjb/joid/joid-ci-jobs.yml
jjb/opnfv/slave-params.yml
jjb/yardstick/yardstick-ci-jobs.yml

index 1ccaa1b..2467361 100644 (file)
@@ -28,6 +28,7 @@
 # that have been switched using labels for slaves
 #--------------------------------
     pod:
+# fuel CI PODs
         - baremetal:
             slave-label: fuel-baremetal
             installer: fuel
             slave-label: fuel-baremetal
             installer: fuel
             <<: *master
+
+# joid CI PODs
+        - baremetal:
+            slave-label: joid-baremetal
+            installer: joid
+            <<: *master
+        - virtual:
+            slave-label: joid-virtual
+            installer: joid
+            <<: *master
+        - baremetal:
+            slave-label: joid-baremetal
+            installer: joid
+            <<: *brahmaputra
+        - virtual:
+            slave-label: joid-virtual
+            installer: joid
+            <<: *brahmaputra
 #--------------------------------
 #    Installers not using labels
 #            CI PODs
             slave-label: '{pod}'
             installer: compass
             <<: *brahmaputra
-        - intel-pod6:
-            slave-label: '{pod}'
-            installer: joid
-            <<: *master
-        - intel-pod5:
-            slave-label: '{pod}'
-            installer: joid
-            <<: *brahmaputra
 #--------------------------------
 #        None-CI PODs
 #--------------------------------
             slave-label: '{pod}'
             installer: compass
             <<: *master
-        - virtual:
-            slave-label: '{pod}'
-            installer: joid
-            <<: *master
         - huawei-pod2:
             slave-label: '{pod}'
             installer: compass
             slave-label: '{pod}'
             installer: compass
             <<: *brahmaputra
-        - virtual:
-            slave-label: '{pod}'
-            installer: joid
-            <<: *brahmaputra
 #--------------------------------
 
     testsuite:
index 685e6fb..ddc6c16 100644 (file)
 #--------------------------------
 # POD, INSTALLER, AND BRANCH MAPPING
 #--------------------------------
-#        brahmaputra
+#        CI PODs
 #--------------------------------
     pod:
-        - intel-pod5:
-            <<: *brahmaputra
-        - orange-pod2:
+        - baremetal:
+            slave-label: joid-baremetal
+            <<: *master
+        - virtual:
+            slave-label: joid-virtual
+            <<: *master
+        - baremetal:
+            slave-label: joid-baremetal
             <<: *brahmaputra
         - virtual:
+            slave-label: joid-virtual
             <<: *brahmaputra
 #--------------------------------
-#           master
+#        None-CI PODs
 #--------------------------------
-        - intel-pod6:
-            <<: *master
         - orange-pod2:
+            slave-label: orange-pod2
+            <<: *brahmaputra
+        - orange-pod2:
+            slave-label: orange-pod2
             <<: *master
         - juniper-pod1:
-            <<: *master
-        - virtual:
+            slave-label: juniper-pod1
             <<: *master
 #--------------------------------
 # new scenario descriptions
     scenario:
         - 'os-nosdn-nofeature-noha':
-            auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
+            auto-trigger-name: 'daily-trigger-disabled'
         - 'os-nosdn-nofeature-ha':
             auto-trigger-name: 'joid-{scenario}-{pod}-{stream}-trigger'
         - 'os-odl_l2-nofeature-ha':
         - 'os-onos-nofeature-ha':
             auto-trigger-name: 'joid-{scenario}-{pod}-{stream}-trigger'
         - 'os-odl_l2-nofeature-noha':
-            auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
+            auto-trigger-name: 'daily-trigger-disabled'
         - 'os-onos-nofeature-noha':
-            auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
+            auto-trigger-name: 'daily-trigger-disabled'
         - 'os-ocl-nofeature-ha':
-            auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
+            auto-trigger-name: 'daily-trigger-disabled'
         - 'os-ocl-nofeature-noha':
-            auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
+            auto-trigger-name: 'daily-trigger-disabled'
 
     jobs:
         - 'joid-{scenario}-{pod}-daily-{stream}'
@@ -78,7 +85,7 @@
     properties:
         - throttle:
             enabled: true
-            max-total: 1
+            max-total: 4
             max-per-node: 1
         - build-blocker:
             use-build-blocker: true
         - project-parameter:
             project: '{project}'
         - '{installer}-defaults'
-        - '{pod}-defaults':
+        - '{slave-label}-defaults':
             installer: '{installer}'
         - string:
             name: DEPLOY_SCENARIO
     properties:
         - throttle:
             enabled: true
-            max-total: 1
+            max-total: 4
             max-per-node: 1
         - build-blocker:
             use-build-blocker: true
         - project-parameter:
             project: '{project}'
         - '{installer}-defaults'
-        - '{pod}-defaults':
+        - '{slave-label}-defaults':
             installer: '{installer}'
         - string:
             name: DEPLOY_SCENARIO
 ########################
 # os-nosdn-nofeature-ha trigger - branch: master
 - trigger:
-    name: 'joid-os-nosdn-nofeature-ha-intel-pod5-master-trigger'
+    name: 'joid-os-nosdn-nofeature-ha-baremetal-master-trigger'
     triggers:
         - timed: ''
 - trigger:
-    name: 'joid-os-nosdn-nofeature-ha-intel-pod6-master-trigger'
+    name: 'joid-os-nosdn-nofeature-ha-virtual-master-trigger'
     triggers:
-        - timed: '#0 2 * * *'
+        - timed: ''
 - trigger:
     name: 'joid-os-nosdn-nofeature-ha-orange-pod2-master-trigger'
     triggers:
     name: 'joid-os-nosdn-nofeature-ha-juniper-pod1-master-trigger'
     triggers:
         - timed: ''
-- trigger:
-    name: 'joid-os-nosdn-nofeature-ha-virtual-master-trigger'
-    triggers:
-        - timed: ''
+
 # os-nosdn-nofeature-ha trigger - branch: stable/brahmaputra
 - trigger:
-    name: 'joid-os-nosdn-nofeature-ha-intel-pod5-brahmaputra-trigger'
+    name: 'joid-os-nosdn-nofeature-ha-baremetal-brahmaputra-trigger'
     triggers:
         - timed: '0 2 * * *'
 - trigger:
-    name: 'joid-os-nosdn-nofeature-ha-intel-pod6-brahmaputra-trigger'
+    name: 'joid-os-nosdn-nofeature-ha-virtual-brahmaputra-trigger'
     triggers:
         - timed: ''
 - trigger:
     name: 'joid-os-nosdn-nofeature-ha-juniper-pod1-brahmaputra-trigger'
     triggers:
         - timed: ''
-- trigger:
-    name: 'joid-os-nosdn-nofeature-ha-virtual-brahmaputra-trigger'
-    triggers:
-        - timed: ''
-
 
 # os-odl_l2-nofeature-ha trigger - branch: master
 - trigger:
-    name: 'joid-os-odl_l2-nofeature-ha-intel-pod5-master-trigger'
+    name: 'joid-os-odl_l2-nofeature-ha-baremetal-master-trigger'
     triggers:
         - timed: ''
 - trigger:
-    name: 'joid-os-odl_l2-nofeature-ha-intel-pod6-master-trigger'
+    name: 'joid-os-odl_l2-nofeature-ha-virtual-master-trigger'
     triggers:
-        - timed: '#0 10 * * *'
+        - timed: ''
 - trigger:
     name: 'joid-os-odl_l2-nofeature-ha-orange-pod2-master-trigger'
     triggers:
     name: 'joid-os-odl_l2-nofeature-ha-juniper-pod1-master-trigger'
     triggers:
         - timed: ''
-- trigger:
-    name: 'joid-os-odl_l2-nofeature-ha-virtual-master-trigger'
-    triggers:
-        - timed: ''
 
 # os-odl_l2-nofeature-ha trigger - branch: stable/brahmaputra
 - trigger:
-    name: 'joid-os-odl_l2-nofeature-ha-intel-pod5-brahmaputra-trigger'
+    name: 'joid-os-odl_l2-nofeature-ha-baremetal-brahmaputra-trigger'
     triggers:
         - timed: '0 10 * * *'
 - trigger:
-    name: 'joid-os-odl_l2-nofeature-ha-intel-pod6-brahmaputra-trigger'
+    name: 'joid-os-odl_l2-nofeature-ha-virtual-brahmaputra-trigger'
     triggers:
         - timed: ''
 - trigger:
     name: 'joid-os-odl_l2-nofeature-ha-juniper-pod1-brahmaputra-trigger'
     triggers:
         - timed: ''
-- trigger:
-    name: 'joid-os-odl_l2-nofeature-ha-virtual-brahmaputra-trigger'
-    triggers:
-        - timed: ''
 
 # os-onos-nofeature-ha trigger - branch: master
 - trigger:
-    name: 'joid-os-onos-nofeature-ha-intel-pod5-master-trigger'
+    name: 'joid-os-onos-nofeature-ha-baremetal-master-trigger'
     triggers:
         - timed: ''
 - trigger:
-    name: 'joid-os-onos-nofeature-ha-intel-pod6-master-trigger'
+    name: 'joid-os-onos-nofeature-ha-virtual-master-trigger'
     triggers:
-        - timed: '#0 18 * * *'
+        - timed: ''
 - trigger:
     name: 'joid-os-onos-nofeature-ha-orange-pod2-master-trigger'
     triggers:
     name: 'joid-os-onos-nofeature-ha-juniper-pod1-master-trigger'
     triggers:
         - timed: ''
-- trigger:
-    name: 'joid-os-onos-nofeature-ha-virtual-master-trigger'
-    triggers:
-        - timed: ''
 
 # os-onos-nofeature-ha trigger - branch: stable/brahmaputra
 - trigger:
-    name: 'joid-os-onos-nofeature-ha-intel-pod5-brahmaputra-trigger'
+    name: 'joid-os-onos-nofeature-ha-baremetal-brahmaputra-trigger'
     triggers:
         - timed: '0 18 * * *'
 - trigger:
-    name: 'joid-os-onos-nofeature-ha-intel-pod6-brahmaputra-trigger'
+    name: 'joid-os-onos-nofeature-ha-virtual-brahmaputra-trigger'
     triggers:
         - timed: ''
 - trigger:
     name: 'joid-os-onos-nofeature-ha-juniper-pod1-brahmaputra-trigger'
     triggers:
         - timed: ''
-- trigger:
-    name: 'joid-os-onos-nofeature-ha-virtual-brahmaputra-trigger'
-    triggers:
-        - timed: ''
index ddeeaab..d89af41 100644 (file)
             name: GIT_BASE
             default: https://gerrit.opnfv.org/gerrit/$PROJECT
             description: 'Git URL to use on this Jenkins Slave'
+- parameter:
+    name: 'joid-baremetal-defaults'
+    parameters:
+        - label:
+            name: SLAVE_LABEL
+            default: 'joid-baremetal'
+        - string:
+            name: GIT_BASE
+            default: https://gerrit.opnfv.org/gerrit/$PROJECT
+            description: 'Git URL to use on this Jenkins Slave'
+        - string:
+            name: CEPH_DISKS
+            default: /srv
+            description: "Disks to use by ceph (comma separated list)"
+        - string:
+            name: EXTERNAL_NETWORK
+            default: ext-net;flat;10.5.15.5;10.5.15.250;10.5.15.254;10.5.15.0/24
+            description: "External network to create for pod5 (name;type;first ip;last ip; gateway;network)"
+- parameter:
+    name: 'joid-virtual-defaults'
+    parameters:
+        - label:
+            name: SLAVE_LABEL
+            default: 'joid-virtual'
+        - string:
+            name: GIT_BASE
+            default: https://gerrit.opnfv.org/gerrit/$PROJECT
+            description: 'Git URL to use on this Jenkins Slave'
 - parameter:
     name: 'lf-pod1-defaults'
     parameters:
index c6630d7..3d59e61 100644 (file)
@@ -28,6 +28,7 @@
 # that have been switched using labels for slaves
 #--------------------------------
     pod:
+# fuel CI PODs
         - baremetal:
             slave-label: fuel-baremetal
             installer: fuel
             installer: fuel
             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
             <<: *master
+
+# joid CI PODs
+        - baremetal:
+            slave-label: joid-baremetal
+            installer: joid
+            auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
+            <<: *master
+        - virtual:
+            slave-label: joid-virtual
+            installer: joid
+            auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
+            <<: *master
+        - baremetal:
+            slave-label: joid-baremetal
+            installer: joid
+            auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
+            <<: *brahmaputra
+        - virtual:
+            slave-label: joid-virtual
+            installer: joid
+            auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
+            <<: *brahmaputra
 #--------------------------------
 #    Installers not using labels
 #            CI PODs
             installer: compass
             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
             <<: *brahmaputra
-        - intel-pod6:
-            slave-label: '{pod}'
-            installer: joid
-            auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
-            <<: *master
-        - intel-pod5:
-            slave-label: '{pod}'
-            installer: joid
-            auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
-            <<: *brahmaputra
 #--------------------------------
 #        None-CI PODs
 #--------------------------------
             installer: compass
             auto-trigger-name: 'yardstick-daily-huawei-pod4-trigger'
             <<: *master
-        - virtual:
-            slave-label: '{pod}'
-            installer: joid
-            auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
-            <<: *master
         - huawei-virtual:
             slave-label: '{pod}'
             installer: compass
             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
             <<: *brahmaputra
-        - virtual:
-            slave-label: '{pod}'
-            installer: joid
-            auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
-            <<: *brahmaputra
 #--------------------------------
     testsuite:
         - 'daily'
 # parameter macros
 ########################
 - parameter:
-    name: 'yardstick-params-intel-pod5'
+    name: 'yardstick-params-fuel-baremetal'
     parameters:
         - string:
             name: YARDSTICK_DB_BACKEND
             default: '-i 104.197.68.199:8086'
             description: 'Arguments to use in order to choose the backend DB'
-
 - parameter:
-    name: 'yardstick-params-intel-pod6'
+    name: 'yardstick-params-fuel-virtual'
     parameters:
         - string:
             name: YARDSTICK_DB_BACKEND
-            default: '-i 104.197.68.199:8086'
+            default: ''
             description: 'Arguments to use in order to choose the backend DB'
-
 - parameter:
-    name: 'yardstick-params-intel-pod8'
+    name: 'yardstick-params-joid-baremetal'
     parameters:
         - string:
             name: YARDSTICK_DB_BACKEND
-            default: ''
+            default: '-i 104.197.68.199:8086'
             description: 'Arguments to use in order to choose the backend DB'
 - parameter:
-    name: 'yardstick-params-lf-pod1'
+    name: 'yardstick-params-joid-virtual'
     parameters:
         - string:
             name: YARDSTICK_DB_BACKEND
-            default: '-i 104.197.68.199:8086'
+            default: ''
             description: 'Arguments to use in order to choose the backend DB'
-
 - parameter:
-    name: 'yardstick-params-lf-pod2'
+    name: 'yardstick-params-intel-pod8'
     parameters:
         - string:
             name: YARDSTICK_DB_BACKEND
-            default: '-i 104.197.68.199:8086'
+            default: ''
             description: 'Arguments to use in order to choose the backend DB'
 - parameter:
-    name: 'yardstick-params-fuel-baremetal'
+    name: 'yardstick-params-lf-pod1'
     parameters:
         - string:
             name: YARDSTICK_DB_BACKEND
             description: 'Arguments to use in order to choose the backend DB'
 
 - parameter:
-    name: 'yardstick-params-fuel-virtual'
+    name: 'yardstick-params-lf-pod2'
     parameters:
         - string:
             name: YARDSTICK_DB_BACKEND
-            default: ''
+            default: '-i 104.197.68.199:8086'
             description: 'Arguments to use in order to choose the backend DB'
 
 - parameter: