joid: Set the slave for virtual deploys
[releng.git] / jjb / joid / joid-ci-jobs.yml
1 ########################
2 # Job configuration for joid
3 ########################
4 - project:
5
6     name: 'joid'
7
8     project: '{name}'
9
10     installer: '{name}'
11
12 #--------------------------------
13 # BRANCH ANCHORS
14 #--------------------------------
15     master: &master
16         stream: master
17         branch: '{stream}'
18         gs-pathname: ''
19     brahmaputra: &brahmaputra
20         stream: brahmaputra
21         branch: 'stable/{stream}'
22         gs-pathname: '/{stream}'
23 #--------------------------------
24 # POD, INSTALLER, AND BRANCH MAPPING
25 #--------------------------------
26 #        brahmaputra
27 #--------------------------------
28     pod:
29         - intel-pod5:
30             <<: *brahmaputra
31         - virtual:
32             <<: *brahmaputra
33 #--------------------------------
34 #           master
35 #--------------------------------
36         - intel-pod6:
37             <<: *master
38         - orange-pod2:
39             <<: *master
40         - juniper-pod1:
41             <<: *master
42         - virtual:
43             <<: *master
44 #--------------------------------
45 # new scenario descriptions
46     scenario:
47         - 'os-nosdn-nofeature-noha':
48             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
49         - 'os-nosdn-nofeature-ha':
50             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
51         - 'os-odl_l2-nofeature-ha':
52             auto-trigger-name: 'joid-{scenario}-{pod}-trigger'
53         - 'os-odl_l2-nofeature-noha':
54             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
55         - 'os-onos-nofeature-ha':
56             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
57         - 'os-onos-nofeature-noha':
58             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
59         - 'os-ocl-nofeature-ha':
60             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
61         - 'os-ocl-nofeature-noha':
62             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
63
64     jobs:
65         - 'joid-{scenario}-{pod}-daily-{stream}'
66         - 'joid-deploy-{pod}-daily-{stream}'
67
68 ########################
69 # job templates
70 ########################
71 - job-template:
72     name: 'joid-{scenario}-{pod}-daily-{stream}'
73
74     project-type: multijob
75
76     concurrent: false
77
78     properties:
79         - throttle:
80             enabled: true
81             max-total: 1
82             max-per-node: 1
83         - build-blocker:
84             use-build-blocker: true
85             blocking-jobs:
86                 - 'joid-os-.*?-{pod}-daily-{stream}'
87
88     wrappers:
89         - build-name:
90             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
91
92     triggers:
93         - '{auto-trigger-name}'
94
95     parameters:
96         - project-parameter:
97             project: '{project}'
98         - '{installer}-defaults'
99         - '{pod}-defaults':
100             installer: '{installer}'
101
102     builders:
103         - multijob:
104             name: deploy
105             condition: SUCCESSFUL
106             projects:
107                 - name: 'joid-deploy-{pod}-daily-{stream}'
108                   current-parameters: true
109                   kill-phase-on: FAILURE
110         - multijob:
111             name: functest
112             condition: COMPLETED
113             projects:
114                 - name: 'functest-joid-{pod}-daily-{stream}'
115                   current-parameters: true
116                   kill-phase-on: NEVER
117         - multijob:
118             name: yardstick
119             condition: COMPLETED
120             projects:
121                 - name: 'yardstick-joid-{pod}-daily-{stream}'
122                   current-parameters: true
123                   kill-phase-on: NEVER
124
125 - job-template:
126     name: 'joid-deploy-{pod}-daily-{stream}'
127
128     concurrent: false
129
130     properties:
131         - throttle:
132             enabled: true
133             max-total: 1
134             max-per-node: 1
135         - build-blocker:
136             use-build-blocker: true
137             blocking-jobs:
138                 - 'joid-deploy-{pod}-daily-{stream}'
139
140     wrappers:
141         - build-name:
142             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
143         - timeout:
144             timeout: 180
145             fail: true
146
147     parameters:
148         - project-parameter:
149             project: '{project}'
150         - '{installer}-defaults'
151         - '{pod}-defaults':
152             installer: '{installer}'
153
154     scm:
155         - git-scm:
156             credentials-id: '{ssh-credentials}'
157             refspec: ''
158             branch: '{branch}'
159
160     builders:
161         - 'builder-macro'
162 ########################
163 # builder macros
164 ########################
165 - builder:
166     name: 'builder-macro'
167     builders:
168         - shell: |
169             #!/bin/bash
170             echo "Running $INSTALLER_TYPE with controller $SDN_CONTROLLER"
171             echo
172             echo "------ First Executing clean.sh ------"
173             cd $WORKSPACE/ci
174             ./clean.sh
175         - shell:
176             !include-raw: ./joid-deploy.sh
177
178 ########################
179 # trigger macros
180 ########################
181 - trigger:
182     name: 'joid-os-odl_l2-nofeature-ha-intel-pod5-trigger'
183     triggers:
184         - timed: '0 2 * * *'
185 - trigger:
186     name: 'joid-os-odl_l2-nofeature-ha-intel-pod6-trigger'
187     triggers:
188         - timed: '0 2 * * *'
189 - trigger:
190     name: 'joid-os-odl_l2-nofeature-ha-orange-pod2-trigger'
191     triggers:
192         - timed: ''
193 - trigger:
194     name: 'joid-os-odl_l2-nofeature-ha-juniper-pod1-trigger'
195     triggers:
196         - timed: ''
197 - trigger:
198     name: 'joid-os-odl_l2-nofeature-ha-virtual-trigger'
199     triggers:
200         - timed: ''