Merge "Enable QTIP container for docker build and push jjob"
[releng.git] / jjb / fuel / fuel-ci-jobs.yml
1 - project:
2
3     name: 'fuel'
4
5     project: 'fuel'
6
7     installer: 'fuel'
8
9 #--------------------------------
10 # BRANCH ANCHORS
11 #--------------------------------
12     master: &master
13         stream: master
14         branch: '{stream}'
15         gs-pathname: ''
16     brahmaputra: &brahmaputra
17         stream: brahmaputra
18         branch: 'stable/{stream}'
19         gs-pathname: '/{stream}'
20 #--------------------------------
21 # POD, INSTALLER, AND BRANCH MAPPING
22 #--------------------------------
23 #      Current Mapping
24 #--------------------------------
25 #  everything runs against master branch
26 #--------------------------------
27     pod:
28         - opnfv-jump-2:
29             <<: *master
30         - ericsson-pod1:
31             <<: *master
32         - ericsson-pod2:
33             <<: *master
34 #--------------------------------
35 #     Milestone E Mapping
36 #     !!!DO NOT ENABLE!!!
37 #--------------------------------
38 #        brahmaputra
39 #--------------------------------
40 #        - opnfv-jump-2:
41 #            <<: *brahmaputra
42
43 # please check the triggers before enabling any of the controllers!!!
44     sdn-controller:
45         - 'nosdn':
46             disabled: false
47         - 'odl':
48             disabled: true
49         - 'onos':
50             disabled: true
51         - 'opencontrail':
52             disabled: true
53
54     jobs:
55         - 'fuel-{sdn-controller}-{pod}-daily-{stream}'
56         - 'fuel-build-{pod}-daily-{stream}'
57         - 'fuel-deploy-{pod}-daily-{stream}'
58
59 ########################
60 # job templates
61 ########################
62 - job-template:
63     name: 'fuel-{sdn-controller}-{pod}-daily-{stream}'
64
65     project-type: multijob
66
67     disabled: '{obj:disabled}'
68
69     concurrent: false
70
71     properties:
72         - throttle:
73             enabled: true
74             max-total: 1
75             max-per-node: 1
76
77     wrappers:
78         - build-name:
79             name: '$BUILD_NUMBER - SDN: $SDN_CONTROLLER Feature: $OPNFV_FEATURE'
80
81     triggers:
82         - 'fuel-{pod}-trigger'
83
84     parameters:
85         - project-parameter:
86             project: '{project}'
87         - '{pod}-defaults'
88         - '{installer}-defaults'
89         - string:
90             name: SDN_CONTROLLER
91             default: '{sdn-controller}'
92         - string:
93             name: OPNFV_FEATURE
94             default: 'none'
95         - fuel-ci-parameter:
96             gs-pathname: '{gs-pathname}'
97
98     scm:
99         - git-scm:
100             credentials-id: '{ssh-credentials}'
101             refspec: ''
102             branch: '{branch}'
103
104     builders:
105         - multijob:
106             name: build
107             condition: SUCCESSFUL
108             projects:
109                 - name: 'fuel-build-{pod}-daily-{stream}'
110                   git-revision: true
111                   kill-phase-on: FAILURE
112         - multijob:
113             name: deploy
114             condition: SUCCESSFUL
115             projects:
116                 - name: 'fuel-deploy-{pod}-daily-{stream}'
117                   current-parameters: true
118                   git-revision: true
119                   kill-phase-on: FAILURE
120         - multijob:
121             name: functest
122             condition: COMPLETED
123             projects:
124                 - name: 'functest-fuel-{pod}-daily-{stream}'
125                   current-parameters: true
126                   kill-phase-on: NEVER
127         - multijob:
128             name: yardstick
129             condition: COMPLETED
130             projects:
131                 - name: 'yardstick-fuel-{pod}-daily-{stream}'
132                   current-parameters: true
133                   kill-phase-on: NEVER
134
135 - job-template:
136     name: 'fuel-build-{pod}-daily-{stream}'
137
138     concurrent: false
139
140     properties:
141         - throttle:
142             enabled: true
143             max-total: 1
144             max-per-node: 1
145
146     parameters:
147         - project-parameter:
148             project: '{project}'
149         - 'ericsson-ca-build-1-defaults'
150         - '{installer}-defaults'
151         - fuel-ci-parameter:
152             gs-pathname: '{gs-pathname}'
153
154     scm:
155         - git-scm:
156             credentials-id: '{ssh-credentials}'
157             refspec: ''
158             branch: '{branch}'
159
160     wrappers:
161         - timeout:
162             timeout: 360
163             fail: true
164
165     builders:
166         - shell:
167             !include-raw ./fuel-build.sh
168         - shell:
169             !include-raw ./fuel-upload-artifact.sh
170         - shell:
171             !include-raw ./fuel-workspace-cleanup.sh
172
173     publishers:
174         - email:
175             recipients: jonas.bjurel@ericsson.com stefan.k.berg@ericsson.com
176
177 - job-template:
178     name: 'fuel-deploy-{pod}-daily-{stream}'
179
180     concurrent: false
181
182     properties:
183         - throttle:
184             enabled: true
185             max-total: 1
186             max-per-node: 1
187
188     parameters:
189         - project-parameter:
190             project: '{project}'
191         - '{pod}-defaults'
192         - '{installer}-defaults'
193         - fuel-ci-parameter:
194             gs-pathname: '{gs-pathname}'
195
196     scm:
197         - git-scm:
198             credentials-id: '{ssh-credentials}'
199             refspec: ''
200             branch: '{branch}'
201
202     wrappers:
203         - build-name:
204             name: '$BUILD_NUMBER - SDN: $SDN_CONTROLLER Feature: $OPNFV_FEATURE'
205
206     builders:
207         - shell:
208             !include-raw ./fuel-download-artifact.sh
209         - shell:
210             !include-raw ./fuel-deploy.sh
211
212     publishers:
213         - email:
214             recipients: jonas.bjurel@ericsson.com stefan.k.berg@ericsson.com
215 ########################
216 # parameter macros
217 ########################
218 - parameter:
219     name: fuel-ci-parameter
220     parameters:
221         - string:
222             name: BUILD_DIRECTORY
223             default: $WORKSPACE/build_output
224             description: "Directory where the build artifact will be located upon the completion of the build."
225         - string:
226             name: CACHE_DIRECTORY
227             default: $HOME/opnfv/cache/$INSTALLER_TYPE
228             description: "Directory where the cache to be used during the build is located."
229         - string:
230             name: GS_URL
231             default: artifacts.opnfv.org/$PROJECT{gs-pathname}
232             description: "URL to Google Storage."
233 ########################
234 # trigger macros
235 ########################
236 # trigger for opnfv-jump-2 is set to run 1 hour ahead of others
237 # to prevent doing unnecessary builds
238 - trigger:
239     name: 'fuel-opnfv-jump-2-trigger'
240     triggers:
241         - timed: '0 2 * * *'
242 - trigger:
243     name: 'fuel-ericsson-pod1-trigger'
244     triggers:
245         - timed: '0 3 * * *'
246 - trigger:
247     name: 'fuel-ericsson-pod2-trigger'
248     triggers:
249         - timed: '0 3 * * *'