jjb: Trying to see whether job updates are reflected to Jenkins
[releng.git] / jjb / fuel / fuel-ci-jobs.yml
1 # jenkins job templates for Fuel
2 - project:
3
4     name: 'fuel'
5
6     project: '{name}'
7
8     installer: '{name}'
9
10 #--------------------------------
11 # BRANCH ANCHORS
12 #--------------------------------
13     master: &master
14         stream: master
15         branch: '{stream}'
16         gs-pathname: ''
17     brahmaputra: &brahmaputra
18         stream: brahmaputra
19         branch: 'stable/{stream}'
20         gs-pathname: '/{stream}'
21 #--------------------------------
22 # POD, INSTALLER, AND BRANCH MAPPING
23 #--------------------------------
24 #        brahmaputra
25 #--------------------------------
26     pod:
27         - opnfv-jump-2:
28             <<: *brahmaputra
29         - virtual:
30             <<: *brahmaputra
31 #--------------------------------
32 #        master
33 #--------------------------------
34         - ericsson-pod1:
35             <<: *master
36         - ericsson-pod2:
37             <<: *master
38         - virtual:
39             <<: *master
40 #--------------------------------
41
42 # new scenario descriptions
43     scenario:
44         - 'os-nosdn-kvm-ha':
45             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
46         - 'os-nosdn-kvm_ovs-ha':
47             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
48         - 'os-nosdn-nofeature-ha':
49             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
50         - 'os-nosdn-ovs-ha':
51             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
52         - 'os-nosdn-vlan-ha':
53             auto-trigger-name: 'fuel-{scenario}-{pod}-trigger'
54         - 'os-odl_l2-nofeature-ha':
55             auto-trigger-name: 'fuel-{scenario}-{pod}-trigger'
56         - 'os-odl_l3-nofeature-ha':
57             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
58         - 'os-onos-nofeature-ha':
59             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
60
61     jobs:
62         - 'fuel-{scenario}-{pod}-daily-{stream}'
63         - 'fuel-deploy-{pod}-daily-{stream}'
64
65 ########################
66 # job templates - old type of defining the scenario
67 ########################
68 - job-template:
69     name: 'fuel-{scenario}-{pod}-daily-{stream}'
70
71     project-type: multijob
72
73     concurrent: false
74
75     properties:
76         - throttle:
77             enabled: true
78             max-total: 1
79             max-per-node: 1
80         - build-blocker:
81             use-build-blocker: true
82             blocking-jobs:
83                 - 'fuel-os-.*?-{pod}-daily-{stream}'
84
85     wrappers:
86         - build-name:
87             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
88
89     triggers:
90         - '{auto-trigger-name}'
91
92     parameters:
93         - project-parameter:
94             project: '{project}'
95         - '{pod}-defaults'
96         - '{installer}-defaults'
97         - string:
98             name: DEPLOY_SCENARIO
99             default: '{scenario}'
100         - fuel-ci-parameter:
101             gs-pathname: '{gs-pathname}'
102
103     builders:
104         - multijob:
105             name: deploy
106             condition: SUCCESSFUL
107             projects:
108                 - name: 'fuel-deploy-{pod}-daily-{stream}'
109                   current-parameters: true
110                   kill-phase-on: FAILURE
111         - multijob:
112             name: functest
113             condition: COMPLETED
114             projects:
115                 - name: 'functest-fuel-{pod}-daily-{stream}'
116                   current-parameters: true
117                   kill-phase-on: NEVER
118         - multijob:
119             name: yardstick
120             condition: COMPLETED
121             projects:
122                 - name: 'yardstick-fuel-{pod}-daily-{stream}'
123                   current-parameters: true
124                   kill-phase-on: NEVER
125
126 - job-template:
127     name: 'fuel-deploy-{pod}-daily-{stream}'
128
129     concurrent: false
130
131     properties:
132         - throttle:
133             enabled: true
134             max-total: 1
135             max-per-node: 1
136         - build-blocker:
137             use-build-blocker: true
138             blocking-jobs:
139                 - 'fuel-deploy-{pod}-daily-{stream}'
140
141     parameters:
142         - project-parameter:
143             project: '{project}'
144         - '{pod}-defaults'
145         - '{installer}-defaults'
146         - fuel-ci-parameter:
147             gs-pathname: '{gs-pathname}'
148
149     scm:
150         - git-scm:
151             credentials-id: '{ssh-credentials}'
152             refspec: ''
153             branch: '{branch}'
154
155     wrappers:
156         - build-name:
157             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
158
159     builders:
160         - shell:
161             !include-raw-escape: ./fuel-download-artifact.sh
162         - shell:
163             !include-raw-escape: ./fuel-deploy.sh
164
165     publishers:
166         - email:
167             recipients: jonas.bjurel@ericsson.com stefan.k.berg@ericsson.com
168
169 ########################
170 # parameter macros
171 ########################
172 - parameter:
173     name: fuel-ci-parameter
174     parameters:
175         - string:
176             name: BUILD_DIRECTORY
177             default: $WORKSPACE/build_output
178             description: "Directory where the build artifact will be located upon the completion of the build."
179         - string:
180             name: CACHE_DIRECTORY
181             default: $HOME/opnfv/cache/$INSTALLER_TYPE
182             description: "Directory where the cache to be used during the build is located."
183         - string:
184             name: GS_URL
185             default: artifacts.opnfv.org/$PROJECT{gs-pathname}
186             description: "URL to Google Storage."
187 - parameter:
188     name: 'virtual-defaults'
189     parameters:
190         - label:
191             name: SLAVE_LABEL
192             default: 'fuel-deploy-virtual'
193         - string:
194             name: GIT_BASE
195             default: https://gerrit.opnfv.org/gerrit/$PROJECT
196             description: 'Git URL to use on these Jenkins Slaves'
197 ########################
198 # trigger macros
199 ########################
200 - trigger:
201     name: 'fuel-os-odl_l2-nofeature-ha-opnfv-jump-2-trigger'
202     triggers:
203         - timed: '0 2 * * *'
204 - trigger:
205     name: 'fuel-os-odl_l2-nofeature-ha-ericsson-pod1-trigger'
206     triggers:
207         - timed: '0 2 * * *'
208 - trigger:
209     name: 'fuel-os-odl_l2-nofeature-ha-ericsson-pod2-trigger'
210     triggers:
211         - timed: '0 2 * * *'
212 - trigger:
213     name: 'fuel-os-odl_l2-nofeature-ha-virtual-trigger'
214     triggers:
215         - timed: ''
216 - trigger:
217     name: 'fuel-os-nosdn-vlan-ha-opnfv-jump-2-trigger'
218     triggers:
219         - timed: ''
220 - trigger:
221     name: 'fuel-os-nosdn-vlan-ha-ericsson-pod1-trigger'
222     triggers:
223         - timed: '0 2 * * *'
224 - trigger:
225     name: 'fuel-os-nosdn-vlan-ha-ericsson-pod2-trigger'
226     triggers:
227         - timed: ''
228 - trigger:
229     name: 'fuel-os-nosdn-vlan-ha-virtual-trigger'
230     triggers:
231         - timed: ''