897a4f7f2c04bbcfd22a3cf6a6b469bfd182993e
[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     wrappers:
72         - build-name:
73             name: '$BUILD_NUMBER - SDN: $SDN_CONTROLLER Feature: $OPNFV_FEATURE'
74
75     triggers:
76         - 'fuel-{pod}-trigger'
77
78     parameters:
79         - project-parameter:
80             project: '{project}'
81         - '{pod}-defaults'
82         - '{installer}-defaults'
83         - string:
84             name: SDN_CONTROLLER
85             default: '{sdn-controller}'
86         - string:
87             name: OPNFV_FEATURE
88             default: 'none'
89         - fuel-ci-parameter:
90             gs-pathname: '{gs-pathname}'
91
92     scm:
93         - git-scm:
94             credentials-id: '{ssh-credentials}'
95             refspec: ''
96             branch: '{branch}'
97
98     builders:
99         - multijob:
100             name: build
101             condition: SUCCESSFUL
102             projects:
103                 - name: 'fuel-build-{pod}-daily-{stream}'
104                   current-parameters: true
105                   git-revision: true
106                   kill-phase-on: FAILURE
107         - multijob:
108             name: deploy
109             condition: SUCCESSFUL
110             projects:
111                 - name: 'fuel-deploy-{pod}-daily-{stream}'
112                   current-parameters: true
113                   git-revision: true
114                   kill-phase-on: FAILURE
115         - multijob:
116             name: functest
117             condition: COMPLETED
118             projects:
119                 - name: 'functest-fuel-{pod}-daily-{stream}'
120                   current-parameters: true
121                   kill-phase-on: NEVER
122         - multijob:
123             name: yardstick
124             condition: COMPLETED
125             projects:
126                 - name: 'yardstick-fuel-{pod}-daily-{stream}'
127                   current-parameters: true
128                   kill-phase-on: NEVER
129
130 - job-template:
131     name: 'fuel-build-{pod}-daily-{stream}'
132
133     parameters:
134         - project-parameter:
135             project: '{project}'
136         - 'ericsson-ca-build-1-defaults'
137         - '{installer}-defaults'
138         - fuel-ci-parameter:
139             gs-pathname: '{gs-pathname}'
140
141     scm:
142         - git-scm:
143             credentials-id: '{ssh-credentials}'
144             refspec: ''
145             branch: '{branch}'
146
147     wrappers:
148         - timeout:
149             timeout: 360
150             fail: true
151
152     builders:
153         - shell:
154             !include-raw ./fuel-build.sh
155         - shell:
156             !include-raw ./fuel-upload-artifact.sh
157         - shell:
158             !include-raw ./fuel-workspace-cleanup.sh
159
160     publishers:
161         - email:
162             recipients: jonas.bjurel@ericsson.com stefan.k.berg@ericsson.com
163
164 - job-template:
165     name: 'fuel-deploy-{pod}-daily-{stream}'
166
167     parameters:
168         - project-parameter:
169             project: '{project}'
170         - '{pod}-defaults'
171         - '{installer}-defaults'
172         - fuel-ci-parameter:
173             gs-pathname: '{gs-pathname}'
174
175     scm:
176         - git-scm:
177             credentials-id: '{ssh-credentials}'
178             refspec: ''
179             branch: '{branch}'
180
181     builders:
182         - shell:
183             !include-raw ./fuel-download-artifact.sh
184         - shell:
185             !include-raw ./fuel-deploy.sh
186
187     publishers:
188         - email:
189             recipients: jonas.bjurel@ericsson.com stefan.k.berg@ericsson.com
190 ########################
191 # parameter macros
192 ########################
193 - parameter:
194     name: fuel-ci-parameter
195     parameters:
196         - string:
197             name: BUILD_DIRECTORY
198             default: $WORKSPACE/build_output
199             description: "Directory where the build artifact will be located upon the completion of the build."
200         - string:
201             name: CACHE_DIRECTORY
202             default: $HOME/opnfv/cache/$INSTALLER_TYPE
203             description: "Directory where the cache to be used during the build is located."
204         - string:
205             name: GS_URL
206             default: artifacts.opnfv.org/$PROJECT{gs-pathname}
207             description: "URL to Google Storage."
208 ########################
209 # trigger macros
210 ########################
211 # trigger for opnfv-jump-2 is set to run 1 hour ahead of others
212 # to prevent doing unnecessary builds
213 - trigger:
214     name: 'fuel-opnfv-jump-2-trigger'
215     triggers:
216         - timed: '0 2 * * *'
217 - trigger:
218     name: 'fuel-ericsson-pod1-trigger'
219     triggers:
220         - timed: '0 3 * * *'
221 - trigger:
222     name: 'fuel-ericsson-pod2-trigger'
223     triggers:
224         - timed: '0 3 * * *'