ff3aa21917a3b4e53a7183cc6beb4e2296d4c6f8
[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 #--------------------------------
32 #           master
33 #--------------------------------
34         - intel-pod6:
35             <<: *master
36         - orange-pod2:
37             <<: *master
38 #--------------------------------
39 # new scenario descriptions
40     scenario:
41         - 'os-nosdn-nofeature-noha':
42             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
43         - 'os-nosdn-nofeature-ha':
44             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
45         - 'os-odl_l2-nofeature-ha':
46             auto-trigger-name: 'joid-{scenario}-{pod}-trigger'
47         - 'os-odl_l2-nofeature-noha':
48             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
49         - 'os-onos-nofeature-ha':
50             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
51         - 'os-onos-nofeature-noha':
52             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
53         - 'os-ocl-nofeature-ha':
54             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
55         - 'os-ocl-nofeature-noha':
56             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
57
58     jobs:
59         - 'joid-{scenario}-{pod}-daily-{stream}'
60         - 'joid-deploy-{pod}-daily-{stream}'
61
62 ########################
63 # job templates
64 ########################
65 - job-template:
66     name: 'joid-{scenario}-{pod}-daily-{stream}'
67
68     project-type: multijob
69
70     disabled: 'false'
71
72     concurrent: false
73
74     properties:
75         - throttle:
76             enabled: true
77             max-total: 1
78             max-per-node: 1
79         - build-blocker:
80             use-build-blocker: true
81             blocking-jobs:
82                 - 'joid-os-.*?-{pod}-daily-{stream}'
83
84     wrappers:
85         - build-name:
86             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
87
88     triggers:
89         - '{auto-trigger-name}'
90
91     parameters:
92         - project-parameter:
93             project: '{project}'
94         - '{installer}-defaults'
95         - '{pod}-defaults'
96         - string:
97             name: DEPLOY_SCENARIO
98             default: '{scenario}'
99
100     builders:
101         - multijob:
102             name: deploy
103             condition: SUCCESSFUL
104             projects:
105                 - name: 'joid-deploy-{pod}-daily-{stream}'
106                   current-parameters: true
107                   kill-phase-on: FAILURE
108         - multijob:
109             name: functest
110             condition: COMPLETED
111             projects:
112                 - name: 'functest-joid-{pod}-daily-{stream}'
113                   current-parameters: true
114                   kill-phase-on: NEVER
115         - multijob:
116             name: yardstick
117             condition: COMPLETED
118             projects:
119                 - name: 'yardstick-joid-{pod}-daily-{stream}'
120                   current-parameters: true
121                   kill-phase-on: NEVER
122
123 - job-template:
124     name: 'joid-deploy-{pod}-daily-{stream}'
125
126     disabled: false
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
153     scm:
154         - git-scm:
155             credentials-id: '{ssh-credentials}'
156             refspec: ''
157             branch: '{branch}'
158
159     builders:
160         - 'builder-macro'
161
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: ''